)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b1aea1577656b5b06b3673e51592b507d7597599","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     erhankur \u003cerhankurubas@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2022-04-21 09:56:04 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"xtensa: add generic xtensa api"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Signed-off-by: erhankur \u003cerhankurubas@gmail.com\u003e"},{"line_number":10,"context_line":"Change-Id: I2fb32978e801af5aa21616c581691406ad7cd6bb"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"127872a6_47568919","line":7,"updated":"2022-04-21 09:01:20.000000000","message":"please change to something like:\ntarget: add xtensa generic api","commit_id":"18e15e7cef750c4ffa99721ab05e2159551c1e17"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"87c6626b3493b2947262fe986f4e9875941df3c2","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     erhankur \u003cerhankurubas@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2022-04-21 09:56:04 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"xtensa: add generic xtensa api"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Signed-off-by: erhankur \u003cerhankurubas@gmail.com\u003e"},{"line_number":10,"context_line":"Change-Id: I2fb32978e801af5aa21616c581691406ad7cd6bb"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1410ccee_c8c2cf6d","line":7,"in_reply_to":"127872a6_47568919","updated":"2022-04-21 09:19:41.000000000","message":"Done","commit_id":"18e15e7cef750c4ffa99721ab05e2159551c1e17"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"87c6626b3493b2947262fe986f4e9875941df3c2","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     erhankur \u003cerhankurubas@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2022-04-21 09:56:04 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"xtensa: add generic xtensa api"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Signed-off-by: erhankur \u003cerhankurubas@gmail.com\u003e"},{"line_number":10,"context_line":"Change-Id: I2fb32978e801af5aa21616c581691406ad7cd6bb"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"8377929b_87f7cf19","line":7,"in_reply_to":"127872a6_47568919","updated":"2022-04-21 09:19:41.000000000","message":"Done","commit_id":"18e15e7cef750c4ffa99721ab05e2159551c1e17"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"acc50a45ca848dccdb0e5781b126581e9a334e4c","unresolved":true,"context_lines":[{"line_number":7,"context_line":"target: add Espressif ESP32-S2 basic support"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ESP32-S2 is a single core Xtensa chip."},{"line_number":10,"context_line":"Not full featured yet.Some of the missing functionality:"},{"line_number":11,"context_line":"-Semihosting"},{"line_number":12,"context_line":"-Flash breakpoints"},{"line_number":13,"context_line":"-Flash loader"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":38,"id":"7224cea8_36e5f5d9","line":10,"updated":"2022-05-19 22:04:01.000000000","message":"add space after \".\"","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"6cd6850a0160f86505a919c57c37e886c382c9d2","unresolved":false,"context_lines":[{"line_number":7,"context_line":"target: add Espressif ESP32-S2 basic support"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ESP32-S2 is a single core Xtensa chip."},{"line_number":10,"context_line":"Not full featured yet.Some of the missing functionality:"},{"line_number":11,"context_line":"-Semihosting"},{"line_number":12,"context_line":"-Flash breakpoints"},{"line_number":13,"context_line":"-Flash loader"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":38,"id":"eccb6700_d3530b1f","line":10,"in_reply_to":"7224cea8_36e5f5d9","updated":"2022-05-21 15:07:49.000000000","message":"Done","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b1aea1577656b5b06b3673e51592b507d7597599","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"a6a0870f_589e1d96","updated":"2022-04-21 09:01:20.000000000","message":"Please consider updating the documentation listing the new target.\nI have not checked if you have added any new command. In case, they have to be documented too.","commit_id":"13bb1f8038057ab1628705f80f3aff4411ba03e9"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"87c6626b3493b2947262fe986f4e9875941df3c2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"c91d97ee_2fe8694f","in_reply_to":"a6a0870f_589e1d96","updated":"2022-04-21 09:19:41.000000000","message":"Yes. I am on it now.","commit_id":"13bb1f8038057ab1628705f80f3aff4411ba03e9"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"90b289af528587eb8fc6ae05dfa842e66617cb37","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"8b547b60_c32cf794","in_reply_to":"c91d97ee_2fe8694f","updated":"2022-04-21 13:03:31.000000000","message":"Antonio, documentation is still in progress. fyi.","commit_id":"13bb1f8038057ab1628705f80f3aff4411ba03e9"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"57340998_e94c8e76","updated":"2022-04-21 22:57:20.000000000","message":"It\u0027s already over midnight, I stop here for the review, for the moment.\nThere are several minor stuff to fix. I have detected them running the new checkpatch I have pushed in\nhttps://review.openocd.org/q/topic:checkpatch\nmainly missing space around operators and unbalanced {}.\n\nThis patch is only part of the code and without https://review.openocd.org/6942/ has no stand-alone functionality. Am I right?\nI need to review the two together, but they are not in a single series.\nI will return on this with fresher mind.\n","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"2332481f5f46d89f4b0287768b4a72ce1a228762","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"d3f2ab7b_c54b6f5c","in_reply_to":"57340998_e94c8e76","updated":"2022-04-22 09:53:20.000000000","message":"Thank you Antonio for the late night work. 6942 is for the riscv chip. \nBecause of the generic xtensa dependency I didn\u0027t create a patch for the xtensa target yet. I could add all dependent files in one patch but it would be hard to review. But if you don\u0027t mind I can push one of our xtensa target here. Probably it would be single core ESP32-S2.","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":15,"id":"e640c120_8e30bbaa","updated":"2022-04-27 23:09:41.000000000","message":"Reviewed all Xtensa files; comments below. Thanks!","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"635ef5f1f2010fb3090f01c8831fc7691f961797","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"18f2578d_f9cbca7d","updated":"2022-04-27 21:37:46.000000000","message":"Tomas, thank you for the review. I have fixed some of them. Will continue tomorrow.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"9d2ca2adca301cdbd4d79de722af5337849c20fa","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"55004cb7_17dcb740","in_reply_to":"75a757b2_905abc0a","updated":"2022-05-05 12:32:05.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d8071e1774e088e24aea64b64a899c552df78865","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":15,"id":"75a757b2_905abc0a","in_reply_to":"e640c120_8e30bbaa","updated":"2022-05-04 23:50:53.000000000","message":"Thank you Ian for the review.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"3a23ebdeff4a1e27e5e582968b0f788bbdab70ca","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"022fdd69_7f9f6b34","updated":"2022-04-29 11:22:18.000000000","message":"Erhan, the patch adds 6 new clang static analyzer warnings.\nPlease run the analyser as described in https://openocd.org/doc/doxygen/html/patchguide.html\nand address the problems. 3 of warnings are false alarms\n\"The left expression of the compound assignment is an uninitialized value. The computed value will also be garbage\" at buf_set_u32() call. Just force zeroing the buffer before use to get rid of these warnings - see 5383: helper/binarybuffer: fix clang static analyzer warnings | https://review.openocd.org/c/openocd/+/5383\n\nAlso please check the new code with valgrind.","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"71674f6c297a1cc1bc29fb2395240a415839e76b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"92763e6b_8a9cdb45","updated":"2022-04-27 23:27:45.000000000","message":"Other minor comments.  Review complete.  Thanks, Ehran!","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"6519b3afa82bcd9933f52357d51fbbb87f4bfc28","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":16,"id":"12c4ac7a_4f841463","in_reply_to":"022fdd69_7f9f6b34","updated":"2022-05-09 19:46:10.000000000","message":"\u003e Erhan, the patch adds 6 new clang static analyzer warnings.\n\u003e Please run the analyser as described in https://openocd.org/doc/doxygen/html/patchguide.html\n\u003e and address the problems. 3 of warnings are false alarms\n\u003e \"The left expression of the compound assignment is an uninitialized value. The computed value will also be garbage\" at buf_set_u32() call. Just force zeroing the buffer before use to get rid of these warnings - see 5383: helper/binarybuffer: fix clang static analyzer warnings | https://review.openocd.org/c/openocd/+/5383\n\u003e \n\u003e Also please check the new code with valgrind.\n\nThere are still some warnings.","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"9caadb0758114c880a2e8129a0d08f3d873dbb4c","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":16,"id":"8dc227bd_5d38a9f6","in_reply_to":"12c4ac7a_4f841463","updated":"2022-05-09 21:35:34.000000000","message":"Tomas, I fixed 2 warnings related to our files. I don\u0027t see any other warning. Can you send me the report directory by e-mail?\nNot: My clang version is 13.0.1","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"68d6b6a3e93ae7de666133517d73834e9ff4aed7","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":16,"id":"9ba90c6c_28b39c53","in_reply_to":"4fabd7b2_161c3f36","updated":"2022-05-10 15:03:04.000000000","message":"Tomas, Sanitizer test is also OK for you?","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"ad063defdd7143a4d3668116d81cdb38f56e3d6b","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":16,"id":"c038afd9_3a108541","in_reply_to":"8dc227bd_5d38a9f6","updated":"2022-05-09 22:01:45.000000000","message":"Fixed another one.","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"2b3452269d5c2fbf65d17e5ad97a8f37d0eb7740","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"a972765d_89cce980","in_reply_to":"92763e6b_8a9cdb45","updated":"2022-04-27 23:30:12.000000000","message":"Oops!  Sorry for misspelling your name, Erhan.","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"ec910f82bfbe67625e122f6e379a59e8cf8b617b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"58983841_3053bd48","in_reply_to":"9ba90c6c_28b39c53","updated":"2022-05-12 13:55:33.000000000","message":"As agreed with the Antonio, I will share the Valgrind results in one of the other patches.","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"0cc87e0691ab40c85efe22408108465e5713409e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"4fabd7b2_161c3f36","in_reply_to":"c038afd9_3a108541","updated":"2022-05-10 05:24:21.000000000","message":"Yes, the patchset 27 is clean in clang/scan-build-12\n\nThanks a lot for superfast progress!","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"4f25a020402e9ac846b82ad0cc58c7c13dc94585","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":20,"id":"501d56cb_9bddf588","updated":"2022-05-05 16:09:34.000000000","message":"Patchset 20 addresses all of my feedback.  Thanks, Erhan!","commit_id":"0e833bb4c9dd678ccaf8981a421f2afb1775646d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"89c6301a9af1b72f4996e72bd5eb935154c1592b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"d27cb51c_62255c87","updated":"2022-05-06 15:21:00.000000000","message":"Hi all, \n\nFrom my point of view, this is ready to another round of review. I tried to address all comments. For some of them, I need your last opinion. \n\nThanks for your support.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"17461953_8cf70a27","updated":"2022-05-06 22:41:29.000000000","message":"the folder src/target/ is getting crowded and will probably need a reorg. Could you consider moving this in src/target/xtensa/, as riscv already did?\n\nI\u0027m scared about the method to reset the target. We have in the pipe a rework of the way OpenOCD handles the reset. Here I didn\u0027t catch how it works.\nIs there any document from Espressif or from Cadence that explains how it works?","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"ca46584eb96c946770308999ca73eb0e2e09d5ae","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":22,"id":"a3720d2a_c669cab4","in_reply_to":"064d0af0_0aa8bf03","updated":"2022-05-11 15:21:39.000000000","message":"Antonio, as we talked, I moved the files into target/xtensa and target/espressif directories.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"6954523da53358165e19633904769c3de9eb97ef","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"311d585e_e1f4512b","in_reply_to":"09f7215a_5be04373","updated":"2022-05-09 19:10:24.000000000","message":"@Antonio, Our reset procedure is specific to ESP chips only. The purpose of running reset handler stub is to workaround the fact that, ESP32xx chips has no halt_on_reset function to stop chip just at reset vector, so we need to run special code which catches the control and does the full reset (core + peripherals) for the chip. Otherwise only core part of the chip resets itself using regular JTAG reset mechanism.\n\n@Ian do you have any additional comment?","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"09f7215a_5be04373","in_reply_to":"17461953_8cf70a27","updated":"2022-05-09 13:20:40.000000000","message":"@Antonio, Do you mean moving generic xtensa files only or all files including the targets? esp32s2.c, esp32.c etc.. \n\nLet me check what we have about reset.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"49eb0a66248a09d3645d07b1fbfc1d45f69d5ae8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"8611cb8f_a2358a3f","in_reply_to":"311d585e_e1f4512b","updated":"2022-05-09 20:22:49.000000000","message":"@Erhan I think you\u0027re referring to ESP32 not using the Xtensa core \"OCDHaltOnReset\" input, which would typically achieve this?  Regardless, the Xtensa reset effectively boils down to a couple of register writes.  If the generic target/Xtensa reset changes in the future, I\u0027d imagine the ESP stub layer should work on top of that just the same, right?","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"dd49a1784bba4055b48845f16c863101d1ff4414","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"3c26a779_47c4d73c","in_reply_to":"31859f2c_98b95eb4","updated":"2022-05-17 22:42:09.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"68d6b6a3e93ae7de666133517d73834e9ff4aed7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"064d0af0_0aa8bf03","in_reply_to":"8611cb8f_a2358a3f","updated":"2022-05-10 15:03:04.000000000","message":"@Ian, yes thats right. In the end we are calling xtensa_assert_reset. If it does the same for us, we don\u0027t need a custom soc_reset functions for the new chips.\n\nFor example, on ESP32 ECO3, JTAG is disabled at reset and needs to be re-enabled by software (ROM code). This is another reason for having a custom reset.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"62b1311d54135d4e7b8d7bc29dcffede8ce78989","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":22,"id":"c227ba52_0d7a2610","in_reply_to":"9a8a2587_e21ed759","updated":"2022-05-12 13:31:49.000000000","message":"@Antonio, in Xtensa context, I think what you\u0027re saying is that target_type::soft_reset_halt() should implement any logic to set the core\u0027s OCDHaltOnReset input and then issue the reset, such that the core resets and halts in OCD mode prior to any execution.  If that\u0027s the case, this could not be implemented in the generic Xtensa layer (it\u0027s not under software control), and would only be pertinent for the Espressif layer on boards/modules that control this input with a GPIO.  Please correct me if I\u0027ve misunderstood... thanks.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"a64218189d1c8809e37feedab7962d8145c17583","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":22,"id":"9a8a2587_e21ed759","in_reply_to":"a3720d2a_c669cab4","updated":"2022-05-11 16:00:37.000000000","message":"Regarding the reset.\nWhat is managed by the TCL command \u0027reset [halt|run|init]\" is sending the HW signal NRST to the target chip. The API target_type::assert_reset() and target_type::deassert_reset() are for this case.\n\nIf you need to implement a \"reset halt\" unrelated to the NRST pin, then consider the command \"soft_reset_halt\" that uses the API target_type::soft_reset_halt().","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"ec910f82bfbe67625e122f6e379a59e8cf8b617b","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":22,"id":"31859f2c_98b95eb4","in_reply_to":"c227ba52_0d7a2610","updated":"2022-05-12 13:55:33.000000000","message":"If I understand correctly, To keep \u0027reset\u0027 command still exist, I have registered the reset-assert-post event and call the command soft_reset_halt.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"02a30207aeba054ad3aca8bd5e18c4fe50cc4d9c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":24,"id":"60af836a_09a8c153","updated":"2022-05-09 17:30:34.000000000","message":"Thanks, Erhan.  Really appreciate the prompt/thorough fixes.","commit_id":"ef165ae78b7580cd02de649dbc01e695288c1e0f"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"c1b3a8f7a0a96b1c3c3c0432a743107678f6e37a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":27,"id":"105a7adc_7711ff00","updated":"2022-05-10 09:05:25.000000000","message":"Please check all variable used as indices or for loop control. Most of them (I believe all) should be \u0027unsigned int\u0027 (not uint32_t (we don\u0027t need an explicit size), int (we don\u0027t go below zero), and size_t (size_t depends on the host and may be implemented as unsigned long or unsigned long long).\n\nAfter that check all printf format specifiers. For types with explicit size (uint32_t, int64_t etc...) use appropriate specifiers (e.g. PRIx32/PRIu32, PRId64)\nhttps://openocd.org/doc/doxygen/html/stylec.html\n\nI hope that\u0027s all from me.","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"68d6b6a3e93ae7de666133517d73834e9ff4aed7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":27,"id":"2a24c43a_65c07a81","in_reply_to":"105a7adc_7711ff00","updated":"2022-05-10 15:03:04.000000000","message":"Thanks a lot Tomas, we made nice improvements.I tried to check indices and format specifiers. I hope didn\u0027t miss something. \n\nAnd again I run the scan-build, looks like there is no new warning","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"74ae232352c221f44ab4133904508308021662a3","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":27,"id":"f04b7b9c_573f979d","in_reply_to":"2a24c43a_65c07a81","updated":"2022-05-18 07:19:07.000000000","message":"Doesn\u0027t seem any progress was made since my comment.","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"a8f2ed1937b7f8252d9f72cae817f36548c4d5ec","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":27,"id":"fe8dd44a_b78834ed","in_reply_to":"3fbac63a_664b262d","updated":"2022-05-18 13:23:55.000000000","message":"Done","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"c5d7644d986fd85d73bda4250b4fc88be52551d5","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":27,"id":"3fbac63a_664b262d","in_reply_to":"f04b7b9c_573f979d","updated":"2022-05-18 08:46:29.000000000","message":"Sorry Tomas, I thought I fixed the format specifier and indices but looks like I forgot the replace some of size_t in the for loop. Do you mean this? Or am I missing something more. I will go over again.","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"f31dbea2_601739c8","updated":"2022-05-15 22:07:29.000000000","message":"general comment.\nThere is an over-proliferation of file.h that expose prototypes used in only one single file .c\nNo need for this, it only increases compile time, dependencies, complexity, review time.\nIt\u0027s preferred to declare/define and use the item inside the same file.c that will use it\nOnly information that are relevant for two or more files .c should go in a .h\nSometimes, to improve readability it\u0027s preferred to split macros for C code. In this case the file.h with macros should be self contained and only included by the C file that uses it. No mix of these macros with other function prototypes that need to be shared.","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"0b1439aca49bc5f06e3bb76490a1c41400324506","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"bb579e6b_202c5921","updated":"2022-05-15 22:20:20.000000000","message":"some extra suggestion from checkpatch","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"9713f33b_b49ea5e9","in_reply_to":"f31dbea2_601739c8","updated":"2022-05-16 11:59:40.000000000","message":"Yes, the result of going from the full feature set to the small set of patches, I mostly left some codes knowing that we will need them in one of the future patches. \n\nBut to make your life easier, now, I removed them temporarily.","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"53669f8dab732f295e60f504f8b1361f8b4e9a03","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":34,"id":"f2db93bc_0421c086","updated":"2022-05-18 09:14:00.000000000","message":"Just a short look...","commit_id":"1e912ed350f20fed289e64e6c2ee7c3b202517cf"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"dd49a1784bba4055b48845f16c863101d1ff4414","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":34,"id":"a6dbeef2_698400f8","updated":"2022-05-17 22:42:09.000000000","message":"Thank you all for the valuable feedbacks. I hope this is ready to merge now. ","commit_id":"1e912ed350f20fed289e64e6c2ee7c3b202517cf"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"27c6b5c960f815bed5950ab65501abd4ec04e3ac","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":36,"id":"c2a9d971_17ab004d","updated":"2022-05-18 16:48:34.000000000","message":"Looks better. Some more type-cleanless comments.","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"00437e24b6633793bd6a1ec01c6035d6cb5e8678","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":38,"id":"0b4f0c76_1a22dd6f","updated":"2022-05-19 03:39:37.000000000","message":"Erhan, thanks a lot for you patience!","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"b0e3d90298653f77a8d0d6422671ed522ec57f02","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":38,"id":"f8658ad5_2d58bf28","updated":"2022-05-19 19:43:44.000000000","message":"Patchset 38 looks good to me as well.  Thanks, Erhan!","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"acc50a45ca848dccdb0e5781b126581e9a334e4c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":38,"id":"b4a626ae_f7344c56","updated":"2022-05-19 22:04:01.000000000","message":"still few item to be fixed, then I think this is ready for merge","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"5d49e9cced514d476385fb92900409ac01b5e561","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":39,"id":"04ee443f_fce3be9a","updated":"2022-05-23 13:56:22.000000000","message":"Patch set 39 looks good to me as well.  Thanks, Erhan.","commit_id":"5d58e691cd5e551555d7dc84918839fd19d61ee5"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"877544153a104c9eeec3d50c381b27736fcd5700","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":39,"id":"b200287c_15f2fc77","updated":"2022-05-21 18:12:00.000000000","message":"Thanks for your hard work!\nThis last version is ok for me.","commit_id":"5d58e691cd5e551555d7dc84918839fd19d61ee5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"14719f94bf84dd4a8457fda1c5f0e86ca24ac645","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":40,"id":"ded85245_076f8e88","updated":"2022-05-23 16:47:13.000000000","message":"\u003e Patch Set 40: Verified+1\n\u003e \n\u003e Build Successful \n\u003e \n\u003e https://build.openocd.org/job/openocd-gerrit/16182/ : SUCCESS\n\u003e \n\u003e https://build.openocd.org/job/openocd-gerrit-build/15393/ : SUCCESS\n\nI am sorry. Patch Set 40 submitted by mistake. Rebasing to other branch made things messed up. I\u0027ll fix it. ","commit_id":"ccc374dbf1af473348d51dd1bb6c173c129a8e24"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"db886b6e7a529b73a9d715271437e1814d293170","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":41,"id":"2535c212_1441970b","updated":"2022-05-26 05:25:17.000000000","message":"Couple of minor nits spotted.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"acfdf578585a600078b323eef3cf74641fcf249a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":41,"id":"992457db_8f290724","updated":"2022-05-23 19:37:34.000000000","message":"I have submitted patchset 40 by mistake. I wanted to revert back to patchset 39 but got an error \"! [remote rejected]     HEAD -\u003e refs/for/master (no new changes)\" \n\nSo, to workaround, I did a small change in the doc file. Sorry for the trouble. \n","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"d5f28e542f8ebf6ad8c872c1b8eb04412ae4a774","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":41,"id":"c0efa56d_f7c8c129","updated":"2022-05-24 03:33:35.000000000","message":"Thanks!","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"657704f5bb7a39eaf39c76473ee7d0da7726b505","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":41,"id":"e8bef36d_5cc31070","updated":"2022-05-23 20:17:44.000000000","message":"no problem.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"21139573bb5550bb63aeb8c46bb53e15998480ad","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":41,"id":"cd924ccf_a519ff48","updated":"2022-05-25 02:09:57.000000000","message":"reset looks broken, please recheck.\n\n \u003e reset\n JTAG tap: esp32s2.cpu tap/device found: 0x120034e5 (mfg: 0x272 (Tensilica), part: 0x2003, ver: 0x1)\n requesting target halt and executing a soft reset\n [esp32s2] Debug controller was reset.\n [esp32s2] Core was reset.\n timed out while waiting for target halted\n esp32s2_soc_reset: Couldn\u0027t halt target before SoC reset\n [esp32s2] Debug controller was reset.\n\n","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"133f0a00ca390806b51c497d13611bb564429777","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":41,"id":"4bf11389_b3afa182","in_reply_to":"47f08d85_e6ddf38c","updated":"2022-05-25 09:37:35.000000000","message":"I didn\u0027t have enough time to dig it into depth.\nI used vsllink adapter, might be some problem is here... However the same config worked in some earlier patchset.\nI\u0027ll return to it as my time permits - hopefully tomorrow.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"a1d3ef47721efc20a4ad2c58b78bb5efbff5b613","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":41,"id":"e3e87397_2a81278f","in_reply_to":"4bf11389_b3afa182","updated":"2022-05-25 14:59:45.000000000","message":"I don\u0027t see this issue with generic Xtensa support + JLink probe.  Tested with patchset 39 + upcoming Cadence sparse Xtensa register patch.  Perhaps it\u0027s somehow related to vslink?\n\n(xt-gdb) reset\nInfo : JTAG tap: xtensa.cpu tap/device found: 0x120034e5 (mfg: 0x272 (Tensilica), part: 0x2003, ver: 0x1)\nrequesting target halt and executing a soft reset\nInfo : [xtensa] Core was reset.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"a8a91b84870bb8f7133ca78d263acbe769a436ea","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":41,"id":"47f08d85_e6ddf38c","in_reply_to":"cd924ccf_a519ff48","updated":"2022-05-25 07:47:10.000000000","message":"Strange.. I didn\u0027t see any issue neither upstream nor at our fork. We are running bunch of test in the CI.\n\nOpen On-Chip Debugger 0.11.0+dev-00694-g088c94f1c (2022-05-25-09:30)\n\nInfo : JTAG tap: esp32s2.cpu tap/device found: 0x120034e5 (mfg: 0x272 (Tensilica), part: 0x2003, ver: 0x1)\nInfo : [esp32s2] Debug controller was reset.\nInfo : [esp32s2] Core was reset.\nInfo : starting gdb server for esp32s2 on 3333\nInfo : Listening on port 3333 for gdb connections\nInfo : accepting \u0027telnet\u0027 connection on tcp/4444\nInfo : JTAG tap: esp32s2.cpu tap/device found: 0x120034e5 (mfg: 0x272 (Tensilica), part: 0x2003, ver: 0x1)\nrequesting target halt and executing a soft reset\nInfo : [esp32s2] Target halted, PC\u003d0x400985D2, debug_reason\u003d00000000\nInfo : [esp32s2] Debug controller was reset.\nInfo : [esp32s2] Core was reset.\nInfo : [esp32s2] Target halted, PC\u003d0x4001275F, debug_reason\u003d00000000\nInfo : [esp32s2] Core was reset.\n\nCan I ask your test scenario?","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"d014c0da0f8d9cab90c9da38ab487bfeed4275a8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":41,"id":"f525a085_8ba40aa5","in_reply_to":"e3e87397_2a81278f","updated":"2022-05-25 19:04:46.000000000","message":"I solved the problem. adapter speed 20000 set in esp32s2.cfg was too high for my setup. Not sure if the cabling was the limit or the vsllink adapter. Anyway my setup works clocked up to 16 MHz and over 18 MHz fails.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"a7c773ac002845819c939922d8d7d5aa813d9ed5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":44,"id":"4c93f179_06ea17ba","updated":"2022-05-29 17:29:05.000000000","message":"Thanks!","commit_id":"8cb1438659b96e78d4dffec21525ca28f3e8b41a"}],"contrib/60-openocd.rules":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":227,"context_line":"ATTRS{product}\u003d\u003d\"*CMSIS-DAP*\", MODE\u003d\"660\", GROUP\u003d\"plugdev\", TAG+\u003d\"uaccess\""},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"# Espressif dev kit FTDI"},{"line_number":230,"context_line":"ATTRS{idVendor}\u003d\u003d\"0403\", ATTRS{idProduct}\u003d\u003d\"6010\", MODE\u003d\"660\", GROUP\u003d\"plugdev\", TAG+\u003d\"uaccess\""},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"LABEL\u003d\"openocd_rules_end\""}],"source_content_type":"application/octet-stream","patch_set":22,"id":"cc7521e4_1b55723b","line":230,"updated":"2022-05-06 22:41:29.000000000","message":"this is a generic FTDI USB VID/PID.\nIt is already present in this file at line 20\nPlease remove it","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":227,"context_line":"ATTRS{product}\u003d\u003d\"*CMSIS-DAP*\", MODE\u003d\"660\", GROUP\u003d\"plugdev\", TAG+\u003d\"uaccess\""},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"# Espressif dev kit FTDI"},{"line_number":230,"context_line":"ATTRS{idVendor}\u003d\u003d\"0403\", ATTRS{idProduct}\u003d\u003d\"6010\", MODE\u003d\"660\", GROUP\u003d\"plugdev\", TAG+\u003d\"uaccess\""},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"LABEL\u003d\"openocd_rules_end\""}],"source_content_type":"application/octet-stream","patch_set":22,"id":"84627a97_6df0683b","line":230,"in_reply_to":"cc7521e4_1b55723b","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"}],"doc/openocd.texi":[{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":10796,"context_line":"@end deffn"},{"line_number":10797,"context_line":""},{"line_number":10798,"context_line":"@deffn {Command} {xtensa smpbreak} [none|breakinout|runstall] | [BreakIn] [BreakOut] [RunStallIn] [DebugModeOut]"},{"line_number":10799,"context_line":"Configures debug signals connection (\"break nework\") for currently selected core."},{"line_number":10800,"context_line":"@itemize @bullet"},{"line_number":10801,"context_line":"@item @code{none} - Core\u0027s \"break/stall network\" is disconnected. Core is not affected by any debug"},{"line_number":10802,"context_line":"signal from other cores."}],"source_content_type":"text/x-texinfo","patch_set":15,"id":"b4bff6fb_d9b97962","line":10799,"range":{"start_line":10799,"start_character":44,"end_line":10799,"end_character":50},"updated":"2022-04-27 17:06:23.000000000","message":"typo","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"635ef5f1f2010fb3090f01c8831fc7691f961797","unresolved":false,"context_lines":[{"line_number":10796,"context_line":"@end deffn"},{"line_number":10797,"context_line":""},{"line_number":10798,"context_line":"@deffn {Command} {xtensa smpbreak} [none|breakinout|runstall] | [BreakIn] [BreakOut] [RunStallIn] [DebugModeOut]"},{"line_number":10799,"context_line":"Configures debug signals connection (\"break nework\") for currently selected core."},{"line_number":10800,"context_line":"@itemize @bullet"},{"line_number":10801,"context_line":"@item @code{none} - Core\u0027s \"break/stall network\" is disconnected. Core is not affected by any debug"},{"line_number":10802,"context_line":"signal from other cores."}],"source_content_type":"text/x-texinfo","patch_set":15,"id":"0fd91377_be56e7c6","line":10799,"range":{"start_line":10799,"start_character":44,"end_line":10799,"end_character":50},"in_reply_to":"b4bff6fb_d9b97962","updated":"2022-04-27 21:37:46.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":10801,"context_line":"@itemize @bullet"},{"line_number":10802,"context_line":"@item @code{none} - Core\u0027s \"break/stall network\" is disconnected. Core is not affected by any debug"},{"line_number":10803,"context_line":"signal from other cores."},{"line_number":10804,"context_line":"@item @code{breakinout} - Core\u0027s \"break network\" is fully connected (break inpts and outputs are enabled)."},{"line_number":10805,"context_line":"Core will receive debug break signals from other cores and send such signals to them. For example when another core"},{"line_number":10806,"context_line":"is stopped due to breakpoint hit this core will be stopped too and vice versa."},{"line_number":10807,"context_line":"@item @code{runstall} - Core\u0027s \"stall network\" is fully connected (stall inputs and outputs are enabled)."}],"source_content_type":"text/x-texinfo","patch_set":22,"id":"3c59776a_49b18da1","line":10804,"updated":"2022-05-06 22:41:29.000000000","message":"typo s/inpts/inputs/","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":10801,"context_line":"@itemize @bullet"},{"line_number":10802,"context_line":"@item @code{none} - Core\u0027s \"break/stall network\" is disconnected. Core is not affected by any debug"},{"line_number":10803,"context_line":"signal from other cores."},{"line_number":10804,"context_line":"@item @code{breakinout} - Core\u0027s \"break network\" is fully connected (break inpts and outputs are enabled)."},{"line_number":10805,"context_line":"Core will receive debug break signals from other cores and send such signals to them. For example when another core"},{"line_number":10806,"context_line":"is stopped due to breakpoint hit this core will be stopped too and vice versa."},{"line_number":10807,"context_line":"@item @code{runstall} - Core\u0027s \"stall network\" is fully connected (stall inputs and outputs are enabled)."}],"source_content_type":"text/x-texinfo","patch_set":22,"id":"5226233d_9bcb3eda","line":10804,"in_reply_to":"3c59776a_49b18da1","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":10823,"context_line":"Enable and start performance counter."},{"line_number":10824,"context_line":"@itemize @bullet"},{"line_number":10825,"context_line":"@item @code{counter_id} - Counter ID (0-1)."},{"line_number":10826,"context_line":"@item @code{select} - Selects perfomance metric to be counted by the counter,"},{"line_number":10827,"context_line":"e.g. 0 - CPU cycles, 2 - retired instructions."},{"line_number":10828,"context_line":"@item @code{mask} - Selects input subsets to be counted (counter will"},{"line_number":10829,"context_line":"increment only once even if more than one condition corresponding to a mask bit occurs)."}],"source_content_type":"text/x-texinfo","patch_set":22,"id":"ee4ad34b_d613e8a8","line":10826,"updated":"2022-05-06 22:41:29.000000000","message":"typo s/perfomance/performance/","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":10823,"context_line":"Enable and start performance counter."},{"line_number":10824,"context_line":"@itemize @bullet"},{"line_number":10825,"context_line":"@item @code{counter_id} - Counter ID (0-1)."},{"line_number":10826,"context_line":"@item @code{select} - Selects perfomance metric to be counted by the counter,"},{"line_number":10827,"context_line":"e.g. 0 - CPU cycles, 2 - retired instructions."},{"line_number":10828,"context_line":"@item @code{mask} - Selects input subsets to be counted (counter will"},{"line_number":10829,"context_line":"increment only once even if more than one condition corresponding to a mask bit occurs)."}],"source_content_type":"text/x-texinfo","patch_set":22,"id":"574bd5d8_2bee1c1e","line":10826,"in_reply_to":"ee4ad34b_d613e8a8","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"acc50a45ca848dccdb0e5781b126581e9a334e4c","unresolved":true,"context_lines":[{"line_number":4713,"context_line":"(Support for this is still incomplete.)"},{"line_number":4714,"context_line":"@item @code{dsp5680xx} -- implements Freescale\u0027s 5680x DSP."},{"line_number":4715,"context_line":"@item @code{esirisc} -- this is an EnSilica eSi-RISC core."},{"line_number":4716,"context_line":"The current implementation supports eSi-32xx cores."},{"line_number":4717,"context_line":"@item @code{fa526} -- resembles arm920 (w/o Thumb)."},{"line_number":4718,"context_line":"@item @code{feroceon} -- resembles arm926."},{"line_number":4719,"context_line":"@item @code{hla_target} -- a Cortex-M alternative to work with HL adapters like ST-Link."}],"source_content_type":"text/x-texinfo","patch_set":38,"id":"86882fc1_ade8edb1","line":4716,"updated":"2022-05-19 22:04:01.000000000","message":"add reference to the new target type \"esp32s2\"","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"6cd6850a0160f86505a919c57c37e886c382c9d2","unresolved":false,"context_lines":[{"line_number":4713,"context_line":"(Support for this is still incomplete.)"},{"line_number":4714,"context_line":"@item @code{dsp5680xx} -- implements Freescale\u0027s 5680x DSP."},{"line_number":4715,"context_line":"@item @code{esirisc} -- this is an EnSilica eSi-RISC core."},{"line_number":4716,"context_line":"The current implementation supports eSi-32xx cores."},{"line_number":4717,"context_line":"@item @code{fa526} -- resembles arm920 (w/o Thumb)."},{"line_number":4718,"context_line":"@item @code{feroceon} -- resembles arm926."},{"line_number":4719,"context_line":"@item @code{hla_target} -- a Cortex-M alternative to work with HL adapters like ST-Link."}],"source_content_type":"text/x-texinfo","patch_set":38,"id":"00c4ad45_031a4b02","line":4716,"in_reply_to":"86882fc1_ade8edb1","updated":"2022-05-21 15:07:49.000000000","message":"Done","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"}],"src/target/Makefile.am":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b1aea1577656b5b06b3673e51592b507d7597599","unresolved":true,"context_lines":[{"line_number":167,"context_line":"        %D%/arc_jtag.c \\"},{"line_number":168,"context_line":"        %D%/arc_mem.c"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"%C%_libtarget_la_SOURCES +\u003d \\"},{"line_number":171,"context_line":"\t%D%/algorithm.h \\"},{"line_number":172,"context_line":"\t%D%/arm.h \\"},{"line_number":173,"context_line":"\t%D%/arm_coresight.h \\"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"7fba9c7e_96b32f7c","line":170,"updated":"2022-04-21 09:01:20.000000000","message":"you need to add the new files *.h in this list, otherwise build/packaging fails","commit_id":"18e15e7cef750c4ffa99721ab05e2159551c1e17"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"87c6626b3493b2947262fe986f4e9875941df3c2","unresolved":false,"context_lines":[{"line_number":167,"context_line":"        %D%/arc_jtag.c \\"},{"line_number":168,"context_line":"        %D%/arc_mem.c"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"%C%_libtarget_la_SOURCES +\u003d \\"},{"line_number":171,"context_line":"\t%D%/algorithm.h \\"},{"line_number":172,"context_line":"\t%D%/arm.h \\"},{"line_number":173,"context_line":"\t%D%/arm_coresight.h \\"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"ec965e6f_45bf075e","line":170,"in_reply_to":"7fba9c7e_96b32f7c","updated":"2022-04-21 09:19:41.000000000","message":"Done","commit_id":"18e15e7cef750c4ffa99721ab05e2159551c1e17"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"87c6626b3493b2947262fe986f4e9875941df3c2","unresolved":true,"context_lines":[{"line_number":167,"context_line":"        %D%/arc_jtag.c \\"},{"line_number":168,"context_line":"        %D%/arc_mem.c"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"%C%_libtarget_la_SOURCES +\u003d \\"},{"line_number":171,"context_line":"\t%D%/algorithm.h \\"},{"line_number":172,"context_line":"\t%D%/arm.h \\"},{"line_number":173,"context_line":"\t%D%/arm_coresight.h \\"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"5e612b95_479f9737","line":170,"in_reply_to":"7fba9c7e_96b32f7c","updated":"2022-04-21 09:19:41.000000000","message":"Done in patch 2.","commit_id":"18e15e7cef750c4ffa99721ab05e2159551c1e17"}],"src/target/esp.h":[{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"8396bacf3967b68f810326f8c31df91cd873c00f","unresolved":true,"context_lines":[{"line_number":16,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":17,"context_line":" ***************************************************************************/"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"#ifndef _ESP_H"},{"line_number":20,"context_line":"#define _ESP_H"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"int esp_common_handle_gdb_detach(struct target *target);"}],"source_content_type":"text/x-csrc","patch_set":24,"id":"0edf8093_72b0dc6d","line":19,"range":{"start_line":19,"start_character":8,"end_line":19,"end_character":14},"updated":"2022-05-09 18:13:24.000000000","message":"Please use include guard names as requested in https://openocd.org/doc/doxygen/html/stylec.html","commit_id":"ef165ae78b7580cd02de649dbc01e695288c1e0f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"8afbf828d4325ff7beae6518a34c1d7f17c531fc","unresolved":false,"context_lines":[{"line_number":16,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":17,"context_line":" ***************************************************************************/"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"#ifndef _ESP_H"},{"line_number":20,"context_line":"#define _ESP_H"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"int esp_common_handle_gdb_detach(struct target *target);"}],"source_content_type":"text/x-csrc","patch_set":24,"id":"ff358eeb_992c7bbf","line":19,"range":{"start_line":19,"start_character":8,"end_line":19,"end_character":14},"in_reply_to":"0edf8093_72b0dc6d","updated":"2022-05-09 19:01:45.000000000","message":"Done","commit_id":"ef165ae78b7580cd02de649dbc01e695288c1e0f"}],"src/target/esp32s2.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":24,"context_line":"#include \"target.h\""},{"line_number":25,"context_line":"#include \"target_type.h\""},{"line_number":26,"context_line":"#include \"assert.h\""},{"line_number":27,"context_line":"#include \"rtos/rtos.h\""},{"line_number":28,"context_line":"#include \"esp32s2.h\""},{"line_number":29,"context_line":"#include \"esp_xtensa.h\""},{"line_number":30,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":22,"id":"ca25bb9f_3142db34","line":27,"updated":"2022-05-06 22:41:29.000000000","message":"havent\u0027s tried to compile, but I don\u0027t see a symbol that requires rtos.h. Maybe I just missed it","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":24,"context_line":"#include \"target.h\""},{"line_number":25,"context_line":"#include \"target_type.h\""},{"line_number":26,"context_line":"#include \"assert.h\""},{"line_number":27,"context_line":"#include \"rtos/rtos.h\""},{"line_number":28,"context_line":"#include \"esp32s2.h\""},{"line_number":29,"context_line":"#include \"esp_xtensa.h\""},{"line_number":30,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":22,"id":"2701d50f_8b8e9109","line":27,"in_reply_to":"ca25bb9f_3142db34","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"c1b3a8f7a0a96b1c3c3c0432a743107678f6e37a","unresolved":true,"context_lines":[{"line_number":584,"context_line":"\t\tret \u003d xtensa_read_buffer(target,"},{"line_number":585,"context_line":"\t\t\tESP32_S2_CHIP_REV_REG,"},{"line_number":586,"context_line":"\t\t\tsizeof(val),"},{"line_number":587,"context_line":"\t\t\t(uint8_t *)\u0026val);"},{"line_number":588,"context_line":"\t\tif (ret !\u003d ERROR_OK)"},{"line_number":589,"context_line":"\t\t\tLOG_ERROR(\"Failed to read chip revision register (%d)!\", ret);"},{"line_number":590,"context_line":"\t\tLOG_DEBUG(\"Chip ver 0x%x\", val);"}],"source_content_type":"text/x-csrc","patch_set":27,"id":"cbcd4f09_1b6464bb","line":587,"range":{"start_line":587,"start_character":3,"end_line":587,"end_character":18},"updated":"2022-05-10 09:05:25.000000000","message":"Endianess! Hopefully the last explicit type-cast.","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"68d6b6a3e93ae7de666133517d73834e9ff4aed7","unresolved":false,"context_lines":[{"line_number":584,"context_line":"\t\tret \u003d xtensa_read_buffer(target,"},{"line_number":585,"context_line":"\t\t\tESP32_S2_CHIP_REV_REG,"},{"line_number":586,"context_line":"\t\t\tsizeof(val),"},{"line_number":587,"context_line":"\t\t\t(uint8_t *)\u0026val);"},{"line_number":588,"context_line":"\t\tif (ret !\u003d ERROR_OK)"},{"line_number":589,"context_line":"\t\t\tLOG_ERROR(\"Failed to read chip revision register (%d)!\", ret);"},{"line_number":590,"context_line":"\t\tLOG_DEBUG(\"Chip ver 0x%x\", val);"}],"source_content_type":"text/x-csrc","patch_set":27,"id":"77bddf8c_56ad61ef","line":587,"range":{"start_line":587,"start_character":3,"end_line":587,"end_character":18},"in_reply_to":"cbcd4f09_1b6464bb","updated":"2022-05-10 15:03:04.000000000","message":"I removed that part of the code. We don\u0027t need the revision check anymore.","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"c1b3a8f7a0a96b1c3c3c0432a743107678f6e37a","unresolved":true,"context_lines":[{"line_number":675,"context_line":"\t\t.queue_tdi_idle_arg \u003d NULL"},{"line_number":676,"context_line":"\t};"},{"line_number":677,"context_line":""},{"line_number":678,"context_line":"\tstruct esp32s2_common *esp32 \u003d calloc(1, sizeof(struct esp32s2_common));"},{"line_number":679,"context_line":"\tif (!esp32) {"},{"line_number":680,"context_line":"\t\tLOG_ERROR(\"Failed to alloc memory for arch info!\");"},{"line_number":681,"context_line":"\t\treturn ERROR_FAIL;"}],"source_content_type":"text/x-csrc","patch_set":27,"id":"f1a7a7c4_dd64bb9f","line":678,"range":{"start_line":678,"start_character":32,"end_line":678,"end_character":72},"updated":"2022-05-10 09:05:25.000000000","message":"Leaks!","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"68d6b6a3e93ae7de666133517d73834e9ff4aed7","unresolved":false,"context_lines":[{"line_number":675,"context_line":"\t\t.queue_tdi_idle_arg \u003d NULL"},{"line_number":676,"context_line":"\t};"},{"line_number":677,"context_line":""},{"line_number":678,"context_line":"\tstruct esp32s2_common *esp32 \u003d calloc(1, sizeof(struct esp32s2_common));"},{"line_number":679,"context_line":"\tif (!esp32) {"},{"line_number":680,"context_line":"\t\tLOG_ERROR(\"Failed to alloc memory for arch info!\");"},{"line_number":681,"context_line":"\t\treturn ERROR_FAIL;"}],"source_content_type":"text/x-csrc","patch_set":27,"id":"4f7cbf1a_ce574d68","line":678,"range":{"start_line":678,"start_character":32,"end_line":678,"end_character":72},"in_reply_to":"f1a7a7c4_dd64bb9f","updated":"2022-05-10 15:03:04.000000000","message":"freed in the esp_xtensa_target_deinit","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"}],"src/target/esp_xtensa.c":[{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"71674f6c297a1cc1bc29fb2395240a415839e76b","unresolved":true,"context_lines":[{"line_number":58,"context_line":"\tconst struct xtensa_config *xtensa_cfg,"},{"line_number":59,"context_line":"\tstruct xtensa_debug_module_config *dm_cfg)"},{"line_number":60,"context_line":"{"},{"line_number":61,"context_line":"\tint ret \u003d xtensa_init_arch_info(target, \u0026esp_xtensa-\u003extensa, xtensa_cfg, dm_cfg);"},{"line_number":62,"context_line":"\tif (ret !\u003d ERROR_OK)"},{"line_number":63,"context_line":"\t\treturn ret;"},{"line_number":64,"context_line":"\treturn ERROR_OK;"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"0a994a38_10dbb52c","line":61,"updated":"2022-04-27 23:27:45.000000000","message":"can reduce to one line of code and return xtensa_init_arch_info() directly","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":58,"context_line":"\tconst struct xtensa_config *xtensa_cfg,"},{"line_number":59,"context_line":"\tstruct xtensa_debug_module_config *dm_cfg)"},{"line_number":60,"context_line":"{"},{"line_number":61,"context_line":"\tint ret \u003d xtensa_init_arch_info(target, \u0026esp_xtensa-\u003extensa, xtensa_cfg, dm_cfg);"},{"line_number":62,"context_line":"\tif (ret !\u003d ERROR_OK)"},{"line_number":63,"context_line":"\t\treturn ret;"},{"line_number":64,"context_line":"\treturn ERROR_OK;"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"4854210b_5f63470f","line":61,"in_reply_to":"0a994a38_10dbb52c","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":58,"context_line":"\tconst struct xtensa_config *xtensa_cfg,"},{"line_number":59,"context_line":"\tstruct xtensa_debug_module_config *dm_cfg)"},{"line_number":60,"context_line":"{"},{"line_number":61,"context_line":"\tint ret \u003d xtensa_init_arch_info(target, \u0026esp_xtensa-\u003extensa, xtensa_cfg, dm_cfg);"},{"line_number":62,"context_line":"\tif (ret !\u003d ERROR_OK)"},{"line_number":63,"context_line":"\t\treturn ret;"},{"line_number":64,"context_line":"\treturn ERROR_OK;"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"c4413c3e_07dd49ee","line":61,"updated":"2022-05-06 22:41:29.000000000","message":"directly:\n return xtensa_init_arch_info(...);","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":58,"context_line":"\tconst struct xtensa_config *xtensa_cfg,"},{"line_number":59,"context_line":"\tstruct xtensa_debug_module_config *dm_cfg)"},{"line_number":60,"context_line":"{"},{"line_number":61,"context_line":"\tint ret \u003d xtensa_init_arch_info(target, \u0026esp_xtensa-\u003extensa, xtensa_cfg, dm_cfg);"},{"line_number":62,"context_line":"\tif (ret !\u003d ERROR_OK)"},{"line_number":63,"context_line":"\t\treturn ret;"},{"line_number":64,"context_line":"\treturn ERROR_OK;"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"f420fb6b_874ac7bf","line":61,"in_reply_to":"c4413c3e_07dd49ee","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"}],"src/target/esp_xtensa.h":[{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"71674f6c297a1cc1bc29fb2395240a415839e76b","unresolved":true,"context_lines":[{"line_number":58,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":59,"context_line":"\t\treturn res;"},{"line_number":60,"context_line":"\treg_val \u003d (reg_val \u0026 (~mask)) | val;"},{"line_number":61,"context_line":"\tres \u003d target_write_u32(target, addr, reg_val);"},{"line_number":62,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":63,"context_line":"\t\treturn res;"},{"line_number":64,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":16,"id":"647a6b5c_01252f06","line":61,"updated":"2022-04-27 23:27:45.000000000","message":"can simplify and return target_write_u32() directly, removing following lines","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":58,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":59,"context_line":"\t\treturn res;"},{"line_number":60,"context_line":"\treg_val \u003d (reg_val \u0026 (~mask)) | val;"},{"line_number":61,"context_line":"\tres \u003d target_write_u32(target, addr, reg_val);"},{"line_number":62,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":63,"context_line":"\t\treturn res;"},{"line_number":64,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":16,"id":"d3a2415a_a50ecf0b","line":61,"in_reply_to":"647a6b5c_01252f06","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"}],"src/target/espressif/esp.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":15,"context_line":" *   You should have received a copy of the GNU General Public License     *"},{"line_number":16,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":17,"context_line":" ***************************************************************************/"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"#include \u003chelper/log.h\u003e"},{"line_number":20,"context_line":"#include \u003chelper/binarybuffer.h\u003e"},{"line_number":21,"context_line":"#include \u003ctarget/target.h\u003e"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"6d6dc60b_3d20624b","line":18,"updated":"2022-05-15 22:07:29.000000000","message":"every file.c __must__ start with\n#ifdef HAVE_CONFIG_H\n#include \"config.h\"\n#endif","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":15,"context_line":" *   You should have received a copy of the GNU General Public License     *"},{"line_number":16,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":17,"context_line":" ***************************************************************************/"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"#include \u003chelper/log.h\u003e"},{"line_number":20,"context_line":"#include \u003chelper/binarybuffer.h\u003e"},{"line_number":21,"context_line":"#include \u003ctarget/target.h\u003e"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"789f87a5_2aed5d6f","line":18,"in_reply_to":"6d6dc60b_3d20624b","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":17,"context_line":" ***************************************************************************/"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"#include \u003chelper/log.h\u003e"},{"line_number":20,"context_line":"#include \u003chelper/binarybuffer.h\u003e"},{"line_number":21,"context_line":"#include \u003ctarget/target.h\u003e"},{"line_number":22,"context_line":"#include \"esp.h\""},{"line_number":23,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"e46b8236_61b887c8","line":20,"updated":"2022-05-15 22:07:29.000000000","message":"binarybuffer.h is unused in this file","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":17,"context_line":" ***************************************************************************/"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"#include \u003chelper/log.h\u003e"},{"line_number":20,"context_line":"#include \u003chelper/binarybuffer.h\u003e"},{"line_number":21,"context_line":"#include \u003ctarget/target.h\u003e"},{"line_number":22,"context_line":"#include \"esp.h\""},{"line_number":23,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"cd404c13_7b999cce","line":20,"in_reply_to":"e46b8236_61b887c8","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":21,"context_line":"#include \u003ctarget/target.h\u003e"},{"line_number":22,"context_line":"#include \"esp.h\""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"#define ESP_FLASH_BREAKPOINTS_MAX_NUM  32"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"int esp_common_handle_gdb_detach(struct target *target)"},{"line_number":27,"context_line":"{"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"2da6ef17_af2b3606","line":24,"updated":"2022-05-15 22:07:29.000000000","message":"macro unused!","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":21,"context_line":"#include \u003ctarget/target.h\u003e"},{"line_number":22,"context_line":"#include \"esp.h\""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"#define ESP_FLASH_BREAKPOINTS_MAX_NUM  32"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"int esp_common_handle_gdb_detach(struct target *target)"},{"line_number":27,"context_line":"{"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"0905addb_430dcb4c","line":24,"in_reply_to":"2da6ef17_af2b3606","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":51,"context_line":"\t\tif (ret !\u003d ERROR_OK) {"},{"line_number":52,"context_line":"\t\t\tLOG_TARGET_ERROR("},{"line_number":53,"context_line":"\t\t\t\ttarget,"},{"line_number":54,"context_line":"\t\t\t\t\"Failed to resume target after flash BPs removal (%d)!\","},{"line_number":55,"context_line":"\t\t\t\tret);"},{"line_number":56,"context_line":"\t\t\treturn ret;"},{"line_number":57,"context_line":"\t\t}"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"12fa4d8b_4b31ffef","line":54,"updated":"2022-05-15 22:07:29.000000000","message":"where the flash breakpoints are removed?\nShould not be part of GDB duty to remove the breakpoints before quitting?","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":51,"context_line":"\t\tif (ret !\u003d ERROR_OK) {"},{"line_number":52,"context_line":"\t\t\tLOG_TARGET_ERROR("},{"line_number":53,"context_line":"\t\t\t\ttarget,"},{"line_number":54,"context_line":"\t\t\t\t\"Failed to resume target after flash BPs removal (%d)!\","},{"line_number":55,"context_line":"\t\t\t\tret);"},{"line_number":56,"context_line":"\t\t\treturn ret;"},{"line_number":57,"context_line":"\t\t}"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"01382ecc_16351057","line":54,"in_reply_to":"12fa4d8b_4b31ffef","updated":"2022-05-16 11:59:40.000000000","message":"It was done to ensure that breaks in flash are cleared when GDB connection is closed for whatever reason, e.g. when GDB crashes and does not send command to clear breaks. Otherwise user will need to re-flash app if something goes wrong with GDB.\nBut since we do not support the flash breakpoint yet, I removed that part of the code.","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"}],"src/target/espressif/esp.h":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"int esp_common_handle_gdb_detach(struct target *target);"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"#endif"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"7f848ec8_1dd6583b","line":24,"updated":"2022-05-15 22:07:29.000000000","message":"#endif /* OPENOCD_TARGET_ESP_H */","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"int esp_common_handle_gdb_detach(struct target *target);"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"#endif"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"9c03d2bb_452a3a6c","line":24,"in_reply_to":"7f848ec8_1dd6583b","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"}],"src/target/espressif/esp32s2.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"0b1439aca49bc5f06e3bb76490a1c41400324506","unresolved":true,"context_lines":[{"line_number":172,"context_line":"\t.reloc_vec \u003d true,"},{"line_number":173,"context_line":"\t.proc_id \u003d true,"},{"line_number":174,"context_line":"\t.threadptr \u003d true,"},{"line_number":175,"context_line":"\t.user_regs_num \u003d sizeof(esp32s2_user_regs) / sizeof(esp32s2_user_regs[0]),"},{"line_number":176,"context_line":"\t.user_regs \u003d esp32s2_user_regs,"},{"line_number":177,"context_line":"\t.fetch_user_regs \u003d xtensa_fetch_user_regs_u32,"},{"line_number":178,"context_line":"\t.queue_write_dirty_user_regs \u003d xtensa_queue_write_dirty_user_regs_u32,"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"245cdfa9_21625a6c","line":175,"updated":"2022-05-15 22:20:20.000000000","message":".user_regs_num \u003d ARRAY_SIZE(esp32s2_user_regs);","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":172,"context_line":"\t.reloc_vec \u003d true,"},{"line_number":173,"context_line":"\t.proc_id \u003d true,"},{"line_number":174,"context_line":"\t.threadptr \u003d true,"},{"line_number":175,"context_line":"\t.user_regs_num \u003d sizeof(esp32s2_user_regs) / sizeof(esp32s2_user_regs[0]),"},{"line_number":176,"context_line":"\t.user_regs \u003d esp32s2_user_regs,"},{"line_number":177,"context_line":"\t.fetch_user_regs \u003d xtensa_fetch_user_regs_u32,"},{"line_number":178,"context_line":"\t.queue_write_dirty_user_regs \u003d xtensa_queue_write_dirty_user_regs_u32,"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"dd29a371_c244c856","line":175,"in_reply_to":"245cdfa9_21625a6c","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":627,"context_line":"\tif (ret !\u003d ERROR_OK)"},{"line_number":628,"context_line":"\t\treturn ret;"},{"line_number":629,"context_line":""},{"line_number":630,"context_line":"\treturn target_register_event_callback(esp32s2_handle_target_event, target);"},{"line_number":631,"context_line":"}"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"static const struct xtensa_debug_ops esp32s2_dbg_ops \u003d {"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"d98270b8_6a7e5895","line":630,"updated":"2022-05-15 22:07:29.000000000","message":"This is unusual, a target_init that registers a callback to be wakeup at target\u0027s events.\nEvents handled here:\n- TARGET_EVENT_EXAMINE_END -\u003e can be handled in xtensa_examine() ?\n- TARGET_EVENT_HALTED -\u003e this is generated by esp32s2_poll(), can be handled there?\n- TARGET_EVENT_GDB_DETACH -\u003e I prefer keeping OpenOCD default and not change it in the C code. If for any reason a user wants a different behavior, he/she can use a TCL event handler","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"dd49a1784bba4055b48845f16c863101d1ff4414","unresolved":false,"context_lines":[{"line_number":627,"context_line":"\tif (ret !\u003d ERROR_OK)"},{"line_number":628,"context_line":"\t\treturn ret;"},{"line_number":629,"context_line":""},{"line_number":630,"context_line":"\treturn target_register_event_callback(esp32s2_handle_target_event, target);"},{"line_number":631,"context_line":"}"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"static const struct xtensa_debug_ops esp32s2_dbg_ops \u003d {"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"a8f341f8_4f1de0ff","line":630,"in_reply_to":"4a28feb0_184218d4","updated":"2022-05-17 22:42:09.000000000","message":"Ok.Done.","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b9072589dc28bad48cb2c5e5160776fa15e4e30e","unresolved":true,"context_lines":[{"line_number":627,"context_line":"\tif (ret !\u003d ERROR_OK)"},{"line_number":628,"context_line":"\t\treturn ret;"},{"line_number":629,"context_line":""},{"line_number":630,"context_line":"\treturn target_register_event_callback(esp32s2_handle_target_event, target);"},{"line_number":631,"context_line":"}"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"static const struct xtensa_debug_ops esp32s2_dbg_ops \u003d {"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"4a28feb0_184218d4","line":630,"in_reply_to":"7651d961_339889f4","updated":"2022-05-17 20:20:21.000000000","message":"the code of nds32 was merged ~15 years ago and almost never maintained. Don\u0027t use it as a reference. It will be dropped soon: https://review.openocd.org/6887\n\nEvents are mainly used to run callbacks in TCL. It\u0027s the same as calling a TCL proc from C, but the syntax to define event handlers is now familiar and comfortable.\nWe use them in few cases in the C code to connect different parts of OpenOCD, but not widely.\n\nFor me it\u0027s strange the way it is used here (I will not check nds32).\nAs I wrote before, TARGET_EVENT_EXAMINE_END is executed after xtensa_examine(). You can directly call the C code of the handler as last line of xtensa_examine(). It\u0027s more logical and easy to understand instead of the following the handlers.","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":true,"context_lines":[{"line_number":627,"context_line":"\tif (ret !\u003d ERROR_OK)"},{"line_number":628,"context_line":"\t\treturn ret;"},{"line_number":629,"context_line":""},{"line_number":630,"context_line":"\treturn target_register_event_callback(esp32s2_handle_target_event, target);"},{"line_number":631,"context_line":"}"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"static const struct xtensa_debug_ops esp32s2_dbg_ops \u003d {"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"7651d961_339889f4","line":630,"in_reply_to":"d98270b8_6a7e5895","updated":"2022-05-16 11:59:40.000000000","message":"looks like we followed nds32_init(). they did the same. \n\nWhere is the right place for registration the events in c code?\n\nTARGET_EVENT_HALTED triggered from 2 places. One of them is generic xtensa_step. So, I want to keep event handler for the target specific halt codes.","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"323f77da3d83f65b9b77b0a8d1e3a15fe7256f7a","unresolved":true,"context_lines":[{"line_number":106,"context_line":""},{"line_number":107,"context_line":"/* this should map local reg IDs to GDB reg mapping as defined in xtensa-config.c \u0027rmap\u0027 in"},{"line_number":108,"context_line":" * xtensa-overlay */"},{"line_number":109,"context_line":"static const int esp32s2_gdb_regs_mapping[ESP32_S2_NUM_REGS] \u003d {"},{"line_number":110,"context_line":"\tXT_REG_IDX_PC,"},{"line_number":111,"context_line":"\tXT_REG_IDX_AR0, XT_REG_IDX_AR1, XT_REG_IDX_AR2, XT_REG_IDX_AR3,"},{"line_number":112,"context_line":"\tXT_REG_IDX_AR4, XT_REG_IDX_AR5, XT_REG_IDX_AR6, XT_REG_IDX_AR7,"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"b82af808_7eafcb97","line":109,"range":{"start_line":109,"start_character":13,"end_line":109,"end_character":16},"updated":"2022-05-18 17:19:10.000000000","message":"unsigned int ?","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"680b43af3e0661cafcd12d42fd9eaafdd733f099","unresolved":false,"context_lines":[{"line_number":106,"context_line":""},{"line_number":107,"context_line":"/* this should map local reg IDs to GDB reg mapping as defined in xtensa-config.c \u0027rmap\u0027 in"},{"line_number":108,"context_line":" * xtensa-overlay */"},{"line_number":109,"context_line":"static const int esp32s2_gdb_regs_mapping[ESP32_S2_NUM_REGS] \u003d {"},{"line_number":110,"context_line":"\tXT_REG_IDX_PC,"},{"line_number":111,"context_line":"\tXT_REG_IDX_AR0, XT_REG_IDX_AR1, XT_REG_IDX_AR2, XT_REG_IDX_AR3,"},{"line_number":112,"context_line":"\tXT_REG_IDX_AR4, XT_REG_IDX_AR5, XT_REG_IDX_AR6, XT_REG_IDX_AR7,"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"16b1b32b_9144e2d8","line":109,"range":{"start_line":109,"start_character":13,"end_line":109,"end_character":16},"in_reply_to":"b82af808_7eafcb97","updated":"2022-05-18 20:02:09.000000000","message":"Done","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"db886b6e7a529b73a9d715271437e1814d293170","unresolved":true,"context_lines":[{"line_number":400,"context_line":"\t/* In order to write to peripheral registers, target must be halted first */"},{"line_number":401,"context_line":"\tif (target-\u003estate !\u003d TARGET_HALTED) {"},{"line_number":402,"context_line":"\t\tLOG_DEBUG(\"%s: Target not halted before SoC reset, trying to halt it first\","},{"line_number":403,"context_line":"\t\t\t__func__);"},{"line_number":404,"context_line":"\t\txtensa_halt(target);"},{"line_number":405,"context_line":"\t\tres \u003d target_wait_state(target, TARGET_HALTED, 1000);"},{"line_number":406,"context_line":"\t\tif (res !\u003d ERROR_OK) {"}],"source_content_type":"text/x-csrc","patch_set":41,"id":"41d8a736_45bf32f6","line":403,"range":{"start_line":403,"start_character":3,"end_line":403,"end_character":11},"updated":"2022-05-26 05:25:17.000000000","message":"The log infrastructure prepends the message by the name of function if debug_level \u003e\u003d LOG_DEBUG. Please do not duplicate it.\nMore occurrences below.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"af898da98c0c43d64a2fcad3c3f52d63d5a44921","unresolved":false,"context_lines":[{"line_number":400,"context_line":"\t/* In order to write to peripheral registers, target must be halted first */"},{"line_number":401,"context_line":"\tif (target-\u003estate !\u003d TARGET_HALTED) {"},{"line_number":402,"context_line":"\t\tLOG_DEBUG(\"%s: Target not halted before SoC reset, trying to halt it first\","},{"line_number":403,"context_line":"\t\t\t__func__);"},{"line_number":404,"context_line":"\t\txtensa_halt(target);"},{"line_number":405,"context_line":"\t\tres \u003d target_wait_state(target, TARGET_HALTED, 1000);"},{"line_number":406,"context_line":"\t\tif (res !\u003d ERROR_OK) {"}],"source_content_type":"text/x-csrc","patch_set":41,"id":"d58fcd2e_c75822fd","line":403,"range":{"start_line":403,"start_character":3,"end_line":403,"end_character":11},"in_reply_to":"41d8a736_45bf32f6","updated":"2022-05-26 10:22:54.000000000","message":"OK.I removed also for lower levels. Msg should be enough to find the location.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"}],"src/target/espressif/esp_xtensa.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":16,"context_line":" *   You should have received a copy of the GNU General Public License     *"},{"line_number":17,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":18,"context_line":" ***************************************************************************/"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"#include \u003cstdbool.h\u003e"},{"line_number":21,"context_line":"#include \u003cstdint.h\u003e"},{"line_number":22,"context_line":"#include \u003ctarget/smp.h\u003e"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"49ddcc18_392c1460","line":19,"updated":"2022-05-15 22:07:29.000000000","message":"add\n#ifdef HAVE_CONFIG_H\n#include \"config.h\"\n#endif","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":16,"context_line":" *   You should have received a copy of the GNU General Public License     *"},{"line_number":17,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":18,"context_line":" ***************************************************************************/"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"#include \u003cstdbool.h\u003e"},{"line_number":21,"context_line":"#include \u003cstdint.h\u003e"},{"line_number":22,"context_line":"#include \u003ctarget/smp.h\u003e"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"d43d2ae8_fb048d75","line":19,"in_reply_to":"49ddcc18_392c1460","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"}],"src/target/espressif/esp_xtensa.h":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":48,"context_line":"int esp_xtensa_handle_target_event(struct target *target, enum target_event event,"},{"line_number":49,"context_line":"\tvoid *priv);"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"static inline int esp_xtensa_set_peri_reg_mask(struct target *target,"},{"line_number":52,"context_line":"\ttarget_addr_t addr,"},{"line_number":53,"context_line":"\tuint32_t mask,"},{"line_number":54,"context_line":"\tuint32_t val)"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"fae7ca37_e1231494","line":51,"updated":"2022-05-15 22:07:29.000000000","message":"this function is called only in src/target/espressif/esp32s2.c\nMove it there, no need to be in a file .h","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":48,"context_line":"int esp_xtensa_handle_target_event(struct target *target, enum target_event event,"},{"line_number":49,"context_line":"\tvoid *priv);"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"static inline int esp_xtensa_set_peri_reg_mask(struct target *target,"},{"line_number":52,"context_line":"\ttarget_addr_t addr,"},{"line_number":53,"context_line":"\tuint32_t mask,"},{"line_number":54,"context_line":"\tuint32_t val)"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"bb7959c0_e80009a7","line":51,"in_reply_to":"fae7ca37_e1231494","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":65,"context_line":"\treturn ERROR_OK;"},{"line_number":66,"context_line":"}"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"#endif"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"d1e4d99a_be4ae9eb","line":68,"updated":"2022-05-15 22:07:29.000000000","message":"#endif /* OPENOCD_TARGET_ESP_XTENSA_H */\nfor all the new files .h","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":65,"context_line":"\treturn ERROR_OK;"},{"line_number":66,"context_line":"}"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"#endif"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"b7aa77cf_81332732","line":68,"in_reply_to":"d1e4d99a_be4ae9eb","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"}],"src/target/xtensa.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":284,"context_line":"{"},{"line_number":285,"context_line":"\tswitch (type) {"},{"line_number":286,"context_line":"\t\tcase XTENSA_MEM_REG_IROM:"},{"line_number":287,"context_line":"\t\t\treturn \u0026(xtensa-\u003ecore_config-\u003eirom);"},{"line_number":288,"context_line":"\t\tcase XTENSA_MEM_REG_IRAM:"},{"line_number":289,"context_line":"\t\t\treturn \u0026(xtensa-\u003ecore_config-\u003eiram);"},{"line_number":290,"context_line":"\t\tcase XTENSA_MEM_REG_DROM:"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"15bc9720_a34e22a2","line":287,"updated":"2022-04-21 22:57:20.000000000","message":"no need for parentheses. Also in following lines in this function","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":284,"context_line":"{"},{"line_number":285,"context_line":"\tswitch (type) {"},{"line_number":286,"context_line":"\t\tcase XTENSA_MEM_REG_IROM:"},{"line_number":287,"context_line":"\t\t\treturn \u0026(xtensa-\u003ecore_config-\u003eirom);"},{"line_number":288,"context_line":"\t\tcase XTENSA_MEM_REG_IRAM:"},{"line_number":289,"context_line":"\t\t\treturn \u0026(xtensa-\u003ecore_config-\u003eiram);"},{"line_number":290,"context_line":"\t\tcase XTENSA_MEM_REG_DROM:"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"661b0e5a_ba3b016e","line":287,"in_reply_to":"15bc9720_a34e22a2","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":311,"context_line":"{"},{"line_number":312,"context_line":"\tfor (int i \u003d 0; i \u003c mem-\u003ecount; i++) {"},{"line_number":313,"context_line":"\t\tconst struct xtensa_local_mem_region_config *region \u003d \u0026mem-\u003eregions[i];"},{"line_number":314,"context_line":"\t\tif (address \u003e\u003d region-\u003ebase \u0026\u0026 address \u003c (region-\u003ebase+region-\u003esize))"},{"line_number":315,"context_line":"\t\t\treturn region;"},{"line_number":316,"context_line":"\t}"},{"line_number":317,"context_line":"\treturn NULL;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"95520152_c90c7917","line":314,"updated":"2022-04-21 22:57:20.000000000","message":"add space around \u0027+\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":311,"context_line":"{"},{"line_number":312,"context_line":"\tfor (int i \u003d 0; i \u003c mem-\u003ecount; i++) {"},{"line_number":313,"context_line":"\t\tconst struct xtensa_local_mem_region_config *region \u003d \u0026mem-\u003eregions[i];"},{"line_number":314,"context_line":"\t\tif (address \u003e\u003d region-\u003ebase \u0026\u0026 address \u003c (region-\u003ebase+region-\u003esize))"},{"line_number":315,"context_line":"\t\t\treturn region;"},{"line_number":316,"context_line":"\t}"},{"line_number":317,"context_line":"\treturn NULL;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"934e4b34_6b534611","line":314,"in_reply_to":"95520152_c90c7917","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":415,"context_line":"\tconst int windowbase)"},{"line_number":416,"context_line":"{"},{"line_number":417,"context_line":"\tint idx;"},{"line_number":418,"context_line":"\tif (reg \u003e\u003d XT_REG_IDX_AR0 \u0026\u0026 reg \u003c\u003d XT_REG_IDX_AR63)"},{"line_number":419,"context_line":"\t\tidx \u003d reg - XT_REG_IDX_AR0;"},{"line_number":420,"context_line":"\telse if (reg \u003e\u003d XT_REG_IDX_A0 \u0026\u0026 reg \u003c\u003d XT_REG_IDX_A15)"},{"line_number":421,"context_line":"\t\tidx \u003d reg - XT_REG_IDX_A0;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"4112717f_3db70aa5","line":418,"updated":"2022-04-21 22:57:20.000000000","message":"one of the branches of this if/then/elsif requires {}, then all branches need them","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":415,"context_line":"\tconst int windowbase)"},{"line_number":416,"context_line":"{"},{"line_number":417,"context_line":"\tint idx;"},{"line_number":418,"context_line":"\tif (reg \u003e\u003d XT_REG_IDX_AR0 \u0026\u0026 reg \u003c\u003d XT_REG_IDX_AR63)"},{"line_number":419,"context_line":"\t\tidx \u003d reg - XT_REG_IDX_AR0;"},{"line_number":420,"context_line":"\telse if (reg \u003e\u003d XT_REG_IDX_A0 \u0026\u0026 reg \u003c\u003d XT_REG_IDX_A15)"},{"line_number":421,"context_line":"\t\tidx \u003d reg - XT_REG_IDX_A0;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"71e920b1_fdf4bdff","line":418,"in_reply_to":"4112717f_3db70aa5","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":468,"context_line":"\t\treturn xtensa-\u003ecore_config-\u003etim_irq.enabled;"},{"line_number":469,"context_line":"\telse if (reg_idx \u003e\u003d XT_REG_IDX_CCOMPARE0 \u0026\u0026 reg_idx \u003c\u003d XT_REG_IDX_CCOMPARE2)"},{"line_number":470,"context_line":"\t\treturn xtensa-\u003ecore_config-\u003etim_irq.enabled \u0026\u0026"},{"line_number":471,"context_line":"\t\t       ((reg_idx-XT_REG_IDX_CCOMPARE0) \u003c xtensa-\u003ecore_config-\u003etim_irq.comp_num);"},{"line_number":472,"context_line":"\telse if (reg_idx \u003d\u003d XT_REG_IDX_PRID)"},{"line_number":473,"context_line":"\t\treturn xtensa-\u003ecore_config-\u003eproc_id;"},{"line_number":474,"context_line":"\telse if (reg_idx \u003e\u003d XT_REG_IDX_MISC0 \u0026\u0026 reg_idx \u003c\u003d XT_REG_IDX_MISC3)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"929f6948_7f4591b5","line":471,"updated":"2022-04-21 22:57:20.000000000","message":"add space around \u0027-\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":468,"context_line":"\t\treturn xtensa-\u003ecore_config-\u003etim_irq.enabled;"},{"line_number":469,"context_line":"\telse if (reg_idx \u003e\u003d XT_REG_IDX_CCOMPARE0 \u0026\u0026 reg_idx \u003c\u003d XT_REG_IDX_CCOMPARE2)"},{"line_number":470,"context_line":"\t\treturn xtensa-\u003ecore_config-\u003etim_irq.enabled \u0026\u0026"},{"line_number":471,"context_line":"\t\t       ((reg_idx-XT_REG_IDX_CCOMPARE0) \u003c xtensa-\u003ecore_config-\u003etim_irq.comp_num);"},{"line_number":472,"context_line":"\telse if (reg_idx \u003d\u003d XT_REG_IDX_PRID)"},{"line_number":473,"context_line":"\t\treturn xtensa-\u003ecore_config-\u003eproc_id;"},{"line_number":474,"context_line":"\telse if (reg_idx \u003e\u003d XT_REG_IDX_MISC0 \u0026\u0026 reg_idx \u003c\u003d XT_REG_IDX_MISC3)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"742054ac_52ae7ec0","line":471,"in_reply_to":"929f6948_7f4591b5","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":472,"context_line":"\telse if (reg_idx \u003d\u003d XT_REG_IDX_PRID)"},{"line_number":473,"context_line":"\t\treturn xtensa-\u003ecore_config-\u003eproc_id;"},{"line_number":474,"context_line":"\telse if (reg_idx \u003e\u003d XT_REG_IDX_MISC0 \u0026\u0026 reg_idx \u003c\u003d XT_REG_IDX_MISC3)"},{"line_number":475,"context_line":"\t\treturn ((reg_idx-XT_REG_IDX_MISC0) \u003c xtensa-\u003ecore_config-\u003emiscregs_num);"},{"line_number":476,"context_line":"\treturn true;"},{"line_number":477,"context_line":"}"},{"line_number":478,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"06f53968_53f07364","line":475,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027-\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":472,"context_line":"\telse if (reg_idx \u003d\u003d XT_REG_IDX_PRID)"},{"line_number":473,"context_line":"\t\treturn xtensa-\u003ecore_config-\u003eproc_id;"},{"line_number":474,"context_line":"\telse if (reg_idx \u003e\u003d XT_REG_IDX_MISC0 \u0026\u0026 reg_idx \u003c\u003d XT_REG_IDX_MISC3)"},{"line_number":475,"context_line":"\t\treturn ((reg_idx-XT_REG_IDX_MISC0) \u003c xtensa-\u003ecore_config-\u003emiscregs_num);"},{"line_number":476,"context_line":"\treturn true;"},{"line_number":477,"context_line":"}"},{"line_number":478,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"e8e96ac4_3ded306c","line":475,"in_reply_to":"06f53968_53f07364","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":571,"context_line":"\t\t\t\t\t\tsizeof(xtensa_reg_val_t)) !\u003d 0)"},{"line_number":572,"context_line":"\t\t\t\t\tLOG_WARNING("},{"line_number":573,"context_line":"\t\t\t\t\t\t\"Warning: Both A%d as well as the physical register it points to (AR%d) are dirty and differs in value. Results are undefined!\","},{"line_number":574,"context_line":"\t\t\t\t\t\ti-XT_REG_IDX_A0,"},{"line_number":575,"context_line":"\t\t\t\t\t\tj-XT_REG_IDX_AR0);"},{"line_number":576,"context_line":"\t\t\t}"},{"line_number":577,"context_line":"\t\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"28e20085_951990ae","line":574,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027-\u0027, and in next line","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":571,"context_line":"\t\t\t\t\t\tsizeof(xtensa_reg_val_t)) !\u003d 0)"},{"line_number":572,"context_line":"\t\t\t\t\tLOG_WARNING("},{"line_number":573,"context_line":"\t\t\t\t\t\t\"Warning: Both A%d as well as the physical register it points to (AR%d) are dirty and differs in value. Results are undefined!\","},{"line_number":574,"context_line":"\t\t\t\t\t\ti-XT_REG_IDX_A0,"},{"line_number":575,"context_line":"\t\t\t\t\t\tj-XT_REG_IDX_AR0);"},{"line_number":576,"context_line":"\t\t\t}"},{"line_number":577,"context_line":"\t\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"e8134f6c_05ec675d","line":574,"in_reply_to":"28e20085_951990ae","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":579,"context_line":""},{"line_number":580,"context_line":"\t/*Write A0-A16 */"},{"line_number":581,"context_line":"\tfor (i \u003d 0; i \u003c 16; i++) {"},{"line_number":582,"context_line":"\t\tif (reg_list[XT_REG_IDX_A0+i].dirty) {"},{"line_number":583,"context_line":"\t\t\tregval \u003d xtensa_reg_get(target, XT_REG_IDX_A0+i);"},{"line_number":584,"context_line":"\t\t\tLOG_DEBUG(\"%s: Writing back reg %s value %08X, num \u003d%i\","},{"line_number":585,"context_line":"\t\t\t\ttarget_name(target),"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"6a6ae338_ef0deece","line":582,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027+\u0027 and in next line","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":579,"context_line":""},{"line_number":580,"context_line":"\t/*Write A0-A16 */"},{"line_number":581,"context_line":"\tfor (i \u003d 0; i \u003c 16; i++) {"},{"line_number":582,"context_line":"\t\tif (reg_list[XT_REG_IDX_A0+i].dirty) {"},{"line_number":583,"context_line":"\t\t\tregval \u003d xtensa_reg_get(target, XT_REG_IDX_A0+i);"},{"line_number":584,"context_line":"\t\t\tLOG_DEBUG(\"%s: Writing back reg %s value %08X, num \u003d%i\","},{"line_number":585,"context_line":"\t\t\t\ttarget_name(target),"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"802625de_db19409a","line":582,"in_reply_to":"6a6ae338_ef0deece","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":588,"context_line":"\t\t\t\txtensa_regs[XT_REG_IDX_A0 + i].reg_num);"},{"line_number":589,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, regval);"},{"line_number":590,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, i));"},{"line_number":591,"context_line":"\t\t\treg_list[XT_REG_IDX_A0+i].dirty \u003d 0;"},{"line_number":592,"context_line":"\t\t}"},{"line_number":593,"context_line":"\t}"},{"line_number":594,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"62105554_5ca729f7","line":591,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027+\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":588,"context_line":"\t\t\t\txtensa_regs[XT_REG_IDX_A0 + i].reg_num);"},{"line_number":589,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, regval);"},{"line_number":590,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, i));"},{"line_number":591,"context_line":"\t\t\treg_list[XT_REG_IDX_A0+i].dirty \u003d 0;"},{"line_number":592,"context_line":"\t\t}"},{"line_number":593,"context_line":"\t}"},{"line_number":594,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"7f94fb70_9d06142f","line":591,"in_reply_to":"62105554_5ca729f7","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":597,"context_line":"\t\tfor (j \u003d 0; j \u003c 64; j +\u003d 16) {"},{"line_number":598,"context_line":"\t\t\t/*Write the 16 registers we can see */"},{"line_number":599,"context_line":"\t\t\tfor (i \u003d 0; i \u003c 16; i++) {"},{"line_number":600,"context_line":"\t\t\t\tif (i+j \u003c xtensa-\u003ecore_config-\u003earegs_num) {"},{"line_number":601,"context_line":"\t\t\t\t\tenum xtensa_reg_id realadr \u003d"},{"line_number":602,"context_line":"\t\t\t\t\t\txtensa_windowbase_offset_to_canonical("},{"line_number":603,"context_line":"\t\t\t\t\t\tXT_REG_IDX_AR0+i+j,"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"6f9045ce_8b151d03","line":600,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027+\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":597,"context_line":"\t\tfor (j \u003d 0; j \u003c 64; j +\u003d 16) {"},{"line_number":598,"context_line":"\t\t\t/*Write the 16 registers we can see */"},{"line_number":599,"context_line":"\t\t\tfor (i \u003d 0; i \u003c 16; i++) {"},{"line_number":600,"context_line":"\t\t\t\tif (i+j \u003c xtensa-\u003ecore_config-\u003earegs_num) {"},{"line_number":601,"context_line":"\t\t\t\t\tenum xtensa_reg_id realadr \u003d"},{"line_number":602,"context_line":"\t\t\t\t\t\txtensa_windowbase_offset_to_canonical("},{"line_number":603,"context_line":"\t\t\t\t\t\tXT_REG_IDX_AR0+i+j,"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"1777c78a_d8be2f0d","line":600,"in_reply_to":"6f9045ce_8b151d03","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":600,"context_line":"\t\t\t\tif (i+j \u003c xtensa-\u003ecore_config-\u003earegs_num) {"},{"line_number":601,"context_line":"\t\t\t\t\tenum xtensa_reg_id realadr \u003d"},{"line_number":602,"context_line":"\t\t\t\t\t\txtensa_windowbase_offset_to_canonical("},{"line_number":603,"context_line":"\t\t\t\t\t\tXT_REG_IDX_AR0+i+j,"},{"line_number":604,"context_line":"\t\t\t\t\t\twindowbase);"},{"line_number":605,"context_line":"\t\t\t\t\t/*Write back any dirty un-windowed registers */"},{"line_number":606,"context_line":"\t\t\t\t\tif (reg_list[realadr].dirty) {"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"96d3ce59_6193c5f7","line":603,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027+\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":600,"context_line":"\t\t\t\tif (i+j \u003c xtensa-\u003ecore_config-\u003earegs_num) {"},{"line_number":601,"context_line":"\t\t\t\t\tenum xtensa_reg_id realadr \u003d"},{"line_number":602,"context_line":"\t\t\t\t\t\txtensa_windowbase_offset_to_canonical("},{"line_number":603,"context_line":"\t\t\t\t\t\tXT_REG_IDX_AR0+i+j,"},{"line_number":604,"context_line":"\t\t\t\t\t\twindowbase);"},{"line_number":605,"context_line":"\t\t\t\t\t/*Write back any dirty un-windowed registers */"},{"line_number":606,"context_line":"\t\t\t\t\tif (reg_list[realadr].dirty) {"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"00161036_931efe09","line":603,"in_reply_to":"96d3ce59_6193c5f7","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":616,"context_line":"\t\t\t\t\t\t\tregval);"},{"line_number":617,"context_line":"\t\t\t\t\t\txtensa_queue_exec_ins(xtensa,"},{"line_number":618,"context_line":"\t\t\t\t\t\t\tXT_INS_RSR(XT_SR_DDR,"},{"line_number":619,"context_line":"\t\t\t\t\t\t\t\txtensa_regs[XT_REG_IDX_AR0+"},{"line_number":620,"context_line":"\t\t\t\t\t\t\t\t\ti].reg_num));"},{"line_number":621,"context_line":"\t\t\t\t\t\treg_list[realadr].dirty \u003d 0;"},{"line_number":622,"context_line":"\t\t\t\t\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"a6a05d6a_a351afc2","line":619,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027+\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":616,"context_line":"\t\t\t\t\t\t\tregval);"},{"line_number":617,"context_line":"\t\t\t\t\t\txtensa_queue_exec_ins(xtensa,"},{"line_number":618,"context_line":"\t\t\t\t\t\t\tXT_INS_RSR(XT_SR_DDR,"},{"line_number":619,"context_line":"\t\t\t\t\t\t\t\txtensa_regs[XT_REG_IDX_AR0+"},{"line_number":620,"context_line":"\t\t\t\t\t\t\t\t\ti].reg_num));"},{"line_number":621,"context_line":"\t\t\t\t\t\treg_list[realadr].dirty \u003d 0;"},{"line_number":622,"context_line":"\t\t\t\t\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"866d26e5_fce1eca1","line":619,"in_reply_to":"a6a05d6a_a351afc2","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":680,"context_line":"\tint res, cmd;"},{"line_number":681,"context_line":""},{"line_number":682,"context_line":"\tLOG_DEBUG(\"%s coreid\u003d%d\", __func__, target-\u003ecoreid);"},{"line_number":683,"context_line":"\tcmd \u003d PWRCTL_DEBUGWAKEUP|PWRCTL_MEMWAKEUP|PWRCTL_COREWAKEUP;"},{"line_number":684,"context_line":"\txtensa_queue_pwr_reg_write(xtensa, DMREG_PWRCTL, cmd);"},{"line_number":685,"context_line":"\txtensa_queue_pwr_reg_write(xtensa, DMREG_PWRCTL, cmd | PWRCTL_JTAGDEBUGUSE);"},{"line_number":686,"context_line":"\txtensa_dm_queue_enable(\u0026xtensa-\u003edbg_mod);"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"8a0db77d_63b453f4","line":683,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":680,"context_line":"\tint res, cmd;"},{"line_number":681,"context_line":""},{"line_number":682,"context_line":"\tLOG_DEBUG(\"%s coreid\u003d%d\", __func__, target-\u003ecoreid);"},{"line_number":683,"context_line":"\tcmd \u003d PWRCTL_DEBUGWAKEUP|PWRCTL_MEMWAKEUP|PWRCTL_COREWAKEUP;"},{"line_number":684,"context_line":"\txtensa_queue_pwr_reg_write(xtensa, DMREG_PWRCTL, cmd);"},{"line_number":685,"context_line":"\txtensa_queue_pwr_reg_write(xtensa, DMREG_PWRCTL, cmd | PWRCTL_JTAGDEBUGUSE);"},{"line_number":686,"context_line":"\txtensa_dm_queue_enable(\u0026xtensa-\u003edbg_mod);"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"52363e40_2abc0af5","line":683,"in_reply_to":"8a0db77d_63b453f4","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":701,"context_line":"int xtensa_wakeup(struct target *target)"},{"line_number":702,"context_line":"{"},{"line_number":703,"context_line":"\tstruct xtensa *xtensa \u003d target_to_xtensa(target);"},{"line_number":704,"context_line":"\tint cmd \u003d PWRCTL_DEBUGWAKEUP|PWRCTL_MEMWAKEUP|PWRCTL_COREWAKEUP;"},{"line_number":705,"context_line":""},{"line_number":706,"context_line":"\tif (xtensa-\u003ereset_asserted)"},{"line_number":707,"context_line":"\t\tcmd |\u003d PWRCTL_CORERESET;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"d9b2c28e_a8e7f5ed","line":704,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":701,"context_line":"int xtensa_wakeup(struct target *target)"},{"line_number":702,"context_line":"{"},{"line_number":703,"context_line":"\tstruct xtensa *xtensa \u003d target_to_xtensa(target);"},{"line_number":704,"context_line":"\tint cmd \u003d PWRCTL_DEBUGWAKEUP|PWRCTL_MEMWAKEUP|PWRCTL_COREWAKEUP;"},{"line_number":705,"context_line":""},{"line_number":706,"context_line":"\tif (xtensa-\u003ereset_asserted)"},{"line_number":707,"context_line":"\t\tcmd |\u003d PWRCTL_CORERESET;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"8a0b1b4e_9cf7e196","line":704,"in_reply_to":"d9b2c28e_a8e7f5ed","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":716,"context_line":"{"},{"line_number":717,"context_line":"\tint res \u003d ERROR_OK;"},{"line_number":718,"context_line":"\tuint32_t dsr_data \u003d 0x00110000;"},{"line_number":719,"context_line":"\tuint32_t clear \u003d (set|OCDDCR_ENABLEOCD) ^"},{"line_number":720,"context_line":"\t\t(OCDDCR_BREAKINEN|OCDDCR_BREAKOUTEN|OCDDCR_RUNSTALLINEN|OCDDCR_DEBUGMODEOUTEN|"},{"line_number":721,"context_line":"\t\tOCDDCR_ENABLEOCD);"},{"line_number":722,"context_line":""},{"line_number":723,"context_line":"\tLOG_DEBUG(\"%s: write smpbreak set\u003d0x%x clear\u003d0x%x\", target_name(xtensa-\u003etarget), set, clear);"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"5a75e945_75bc5c7f","line":720,"range":{"start_line":719,"start_character":1,"end_line":720,"end_character":15},"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":716,"context_line":"{"},{"line_number":717,"context_line":"\tint res \u003d ERROR_OK;"},{"line_number":718,"context_line":"\tuint32_t dsr_data \u003d 0x00110000;"},{"line_number":719,"context_line":"\tuint32_t clear \u003d (set|OCDDCR_ENABLEOCD) ^"},{"line_number":720,"context_line":"\t\t(OCDDCR_BREAKINEN|OCDDCR_BREAKOUTEN|OCDDCR_RUNSTALLINEN|OCDDCR_DEBUGMODEOUTEN|"},{"line_number":721,"context_line":"\t\tOCDDCR_ENABLEOCD);"},{"line_number":722,"context_line":""},{"line_number":723,"context_line":"\tLOG_DEBUG(\"%s: write smpbreak set\u003d0x%x clear\u003d0x%x\", target_name(xtensa-\u003etarget), set, clear);"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"7f67d330_6cd7625e","line":720,"range":{"start_line":719,"start_character":1,"end_line":720,"end_character":15},"in_reply_to":"5a75e945_75bc5c7f","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":721,"context_line":"\t\tOCDDCR_ENABLEOCD);"},{"line_number":722,"context_line":""},{"line_number":723,"context_line":"\tLOG_DEBUG(\"%s: write smpbreak set\u003d0x%x clear\u003d0x%x\", target_name(xtensa-\u003etarget), set, clear);"},{"line_number":724,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DCRSET, set|OCDDCR_ENABLEOCD);"},{"line_number":725,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DCRCLR, clear);"},{"line_number":726,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DSR, dsr_data);"},{"line_number":727,"context_line":"\txtensa_dm_queue_tdi_idle(\u0026xtensa-\u003edbg_mod);"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"7f1e0258_812ee73b","line":724,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":721,"context_line":"\t\tOCDDCR_ENABLEOCD);"},{"line_number":722,"context_line":""},{"line_number":723,"context_line":"\tLOG_DEBUG(\"%s: write smpbreak set\u003d0x%x clear\u003d0x%x\", target_name(xtensa-\u003etarget), set, clear);"},{"line_number":724,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DCRSET, set|OCDDCR_ENABLEOCD);"},{"line_number":725,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DCRCLR, clear);"},{"line_number":726,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DSR, dsr_data);"},{"line_number":727,"context_line":"\txtensa_dm_queue_tdi_idle(\u0026xtensa-\u003edbg_mod);"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"3b0a6572_b5c76f49","line":724,"in_reply_to":"7f1e0258_812ee73b","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":806,"context_line":"\t}"},{"line_number":807,"context_line":"\tif (needclear) {"},{"line_number":808,"context_line":"\t\tres \u003d xtensa_dm_core_status_clear(\u0026xtensa-\u003edbg_mod,"},{"line_number":809,"context_line":"\t\t\tOCDDSR_EXECEXCEPTION|OCDDSR_EXECOVERRUN);"},{"line_number":810,"context_line":"\t\tif (res !\u003d ERROR_OK \u0026\u0026 !xtensa-\u003esuppress_dsr_errors)"},{"line_number":811,"context_line":"\t\t\tLOG_ERROR(\"%s: clearing DSR failed!\", target_name(target));"},{"line_number":812,"context_line":"\t\treturn xtensa-\u003esuppress_dsr_errors ? ERROR_OK : ERROR_FAIL;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"c8fe5417_6e534d75","line":809,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":806,"context_line":"\t}"},{"line_number":807,"context_line":"\tif (needclear) {"},{"line_number":808,"context_line":"\t\tres \u003d xtensa_dm_core_status_clear(\u0026xtensa-\u003edbg_mod,"},{"line_number":809,"context_line":"\t\t\tOCDDSR_EXECEXCEPTION|OCDDSR_EXECOVERRUN);"},{"line_number":810,"context_line":"\t\tif (res !\u003d ERROR_OK \u0026\u0026 !xtensa-\u003esuppress_dsr_errors)"},{"line_number":811,"context_line":"\t\t\tLOG_ERROR(\"%s: clearing DSR failed!\", target_name(target));"},{"line_number":812,"context_line":"\t\treturn xtensa-\u003esuppress_dsr_errors ? ERROR_OK : ERROR_FAIL;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"fc8bc8e0_62833b04","line":809,"in_reply_to":"c8fe5417_6e534d75","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":843,"context_line":"\ttarget-\u003estate \u003d TARGET_RESET;"},{"line_number":844,"context_line":"\txtensa_queue_pwr_reg_write(xtensa,"},{"line_number":845,"context_line":"\t\tDMREG_PWRCTL,"},{"line_number":846,"context_line":"\t\tPWRCTL_JTAGDEBUGUSE|PWRCTL_DEBUGWAKEUP|PWRCTL_MEMWAKEUP|PWRCTL_COREWAKEUP|"},{"line_number":847,"context_line":"\t\tPWRCTL_CORERESET);"},{"line_number":848,"context_line":"\txtensa_dm_queue_tdi_idle(\u0026xtensa-\u003edbg_mod);"},{"line_number":849,"context_line":"\tres \u003d jtag_execute_queue();"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"0adf8d66_015230b3","line":846,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":843,"context_line":"\ttarget-\u003estate \u003d TARGET_RESET;"},{"line_number":844,"context_line":"\txtensa_queue_pwr_reg_write(xtensa,"},{"line_number":845,"context_line":"\t\tDMREG_PWRCTL,"},{"line_number":846,"context_line":"\t\tPWRCTL_JTAGDEBUGUSE|PWRCTL_DEBUGWAKEUP|PWRCTL_MEMWAKEUP|PWRCTL_COREWAKEUP|"},{"line_number":847,"context_line":"\t\tPWRCTL_CORERESET);"},{"line_number":848,"context_line":"\txtensa_dm_queue_tdi_idle(\u0026xtensa-\u003edbg_mod);"},{"line_number":849,"context_line":"\tres \u003d jtag_execute_queue();"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"7789d5bf_4346eb16","line":846,"in_reply_to":"0adf8d66_015230b3","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":862,"context_line":"\tif (target-\u003ereset_halt)"},{"line_number":863,"context_line":"\t\txtensa_queue_dbg_reg_write(xtensa,"},{"line_number":864,"context_line":"\t\t\tNARADR_DCRSET,"},{"line_number":865,"context_line":"\t\t\tOCDDCR_ENABLEOCD|OCDDCR_DEBUGINTERRUPT);"},{"line_number":866,"context_line":"\txtensa_queue_pwr_reg_write(xtensa,"},{"line_number":867,"context_line":"\t\tDMREG_PWRCTL,"},{"line_number":868,"context_line":"\t\tPWRCTL_JTAGDEBUGUSE|PWRCTL_DEBUGWAKEUP|PWRCTL_MEMWAKEUP|PWRCTL_COREWAKEUP);"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"30d0d309_bd900fb5","line":865,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":862,"context_line":"\tif (target-\u003ereset_halt)"},{"line_number":863,"context_line":"\t\txtensa_queue_dbg_reg_write(xtensa,"},{"line_number":864,"context_line":"\t\t\tNARADR_DCRSET,"},{"line_number":865,"context_line":"\t\t\tOCDDCR_ENABLEOCD|OCDDCR_DEBUGINTERRUPT);"},{"line_number":866,"context_line":"\txtensa_queue_pwr_reg_write(xtensa,"},{"line_number":867,"context_line":"\t\tDMREG_PWRCTL,"},{"line_number":868,"context_line":"\t\tPWRCTL_JTAGDEBUGUSE|PWRCTL_DEBUGWAKEUP|PWRCTL_MEMWAKEUP|PWRCTL_COREWAKEUP);"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"4692df4b_edbe20e8","line":865,"in_reply_to":"30d0d309_bd900fb5","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":865,"context_line":"\t\t\tOCDDCR_ENABLEOCD|OCDDCR_DEBUGINTERRUPT);"},{"line_number":866,"context_line":"\txtensa_queue_pwr_reg_write(xtensa,"},{"line_number":867,"context_line":"\t\tDMREG_PWRCTL,"},{"line_number":868,"context_line":"\t\tPWRCTL_JTAGDEBUGUSE|PWRCTL_DEBUGWAKEUP|PWRCTL_MEMWAKEUP|PWRCTL_COREWAKEUP);"},{"line_number":869,"context_line":"\txtensa_dm_queue_tdi_idle(\u0026xtensa-\u003edbg_mod);"},{"line_number":870,"context_line":"\tres \u003d jtag_execute_queue();"},{"line_number":871,"context_line":"\tif (res !\u003d ERROR_OK)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"572f549d_06cb41ba","line":868,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":865,"context_line":"\t\t\tOCDDCR_ENABLEOCD|OCDDCR_DEBUGINTERRUPT);"},{"line_number":866,"context_line":"\txtensa_queue_pwr_reg_write(xtensa,"},{"line_number":867,"context_line":"\t\tDMREG_PWRCTL,"},{"line_number":868,"context_line":"\t\tPWRCTL_JTAGDEBUGUSE|PWRCTL_DEBUGWAKEUP|PWRCTL_MEMWAKEUP|PWRCTL_COREWAKEUP);"},{"line_number":869,"context_line":"\txtensa_dm_queue_tdi_idle(\u0026xtensa-\u003edbg_mod);"},{"line_number":870,"context_line":"\tres \u003d jtag_execute_queue();"},{"line_number":871,"context_line":"\tif (res !\u003d ERROR_OK)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"fbb7fd0e_4c48ad20","line":868,"in_reply_to":"572f549d_06cb41ba","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":894,"context_line":"\tfor (j \u003d 0; j \u003c XT_AREGS_NUM_MAX; j +\u003d 16) {"},{"line_number":895,"context_line":"\t\t/*Grab the 16 registers we can see */"},{"line_number":896,"context_line":"\t\tfor (i \u003d 0; i \u003c 16; i++) {"},{"line_number":897,"context_line":"\t\t\tif (i+j \u003c xtensa-\u003ecore_config-\u003earegs_num) {"},{"line_number":898,"context_line":"\t\t\t\txtensa_queue_exec_ins(xtensa,"},{"line_number":899,"context_line":"\t\t\t\t\tXT_INS_WSR(XT_SR_DDR,"},{"line_number":900,"context_line":"\t\t\t\t\t\txtensa_regs[XT_REG_IDX_AR0 + i].reg_num));"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"73f0ef3f_3bdb139c","line":897,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027+\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":894,"context_line":"\tfor (j \u003d 0; j \u003c XT_AREGS_NUM_MAX; j +\u003d 16) {"},{"line_number":895,"context_line":"\t\t/*Grab the 16 registers we can see */"},{"line_number":896,"context_line":"\t\tfor (i \u003d 0; i \u003c 16; i++) {"},{"line_number":897,"context_line":"\t\t\tif (i+j \u003c xtensa-\u003ecore_config-\u003earegs_num) {"},{"line_number":898,"context_line":"\t\t\t\txtensa_queue_exec_ins(xtensa,"},{"line_number":899,"context_line":"\t\t\t\t\tXT_INS_WSR(XT_SR_DDR,"},{"line_number":900,"context_line":"\t\t\t\t\t\txtensa_regs[XT_REG_IDX_AR0 + i].reg_num));"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"0ec94623_3b5a4d2f","line":897,"in_reply_to":"73f0ef3f_3bdb139c","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":944,"context_line":"\t\t\telse if (xtensa_regs[i].type \u003d\u003d XT_REG_FR)"},{"line_number":945,"context_line":"\t\t\t\txtensa_queue_exec_ins(xtensa,"},{"line_number":946,"context_line":"\t\t\t\t\tXT_INS_RFR(xtensa_regs[i].reg_num, XT_REG_A3));"},{"line_number":947,"context_line":"\t\t\telse {\t/*SFR */"},{"line_number":948,"context_line":"\t\t\t\tint reg_num \u003d xtensa_regs[i].reg_num;"},{"line_number":949,"context_line":"\t\t\t\tif (reg_num \u003d\u003d XT_PC_REG_NUM_BASE) {"},{"line_number":950,"context_line":"\t\t\t\t\t/* reg number of PC for debug interrupt depends on"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"c4558eb8_2f9a748b","line":947,"updated":"2022-04-21 22:57:20.000000000","message":"use {} on all branches of if/then/else","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":944,"context_line":"\t\t\telse if (xtensa_regs[i].type \u003d\u003d XT_REG_FR)"},{"line_number":945,"context_line":"\t\t\t\txtensa_queue_exec_ins(xtensa,"},{"line_number":946,"context_line":"\t\t\t\t\tXT_INS_RFR(xtensa_regs[i].reg_num, XT_REG_A3));"},{"line_number":947,"context_line":"\t\t\telse {\t/*SFR */"},{"line_number":948,"context_line":"\t\t\t\tint reg_num \u003d xtensa_regs[i].reg_num;"},{"line_number":949,"context_line":"\t\t\t\tif (reg_num \u003d\u003d XT_PC_REG_NUM_BASE) {"},{"line_number":950,"context_line":"\t\t\t\t\t/* reg number of PC for debug interrupt depends on"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"1fee9f09_b386a466","line":947,"in_reply_to":"c4558eb8_2f9a748b","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1013,"context_line":"\t\t\t} else if (xtensa_regs[i].type \u003d\u003d XT_REG_RELGEN) {"},{"line_number":1014,"context_line":"\t\t\t\tregval \u003d"},{"line_number":1015,"context_line":"\t\t\t\t\tbuf_get_u32(regvals[xtensa_regs[i].reg_num], 0, 32);"},{"line_number":1016,"context_line":"\t\t\t} else"},{"line_number":1017,"context_line":"\t\t\t\tregval \u003d buf_get_u32(regvals[i], 0, 32);"},{"line_number":1018,"context_line":"\t\t\txtensa_reg_set(target, i, regval);"},{"line_number":1019,"context_line":"\t\t\treg_list[i].valid \u003d 1;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"1449f3fa_9c059fe9","line":1016,"updated":"2022-04-21 22:57:20.000000000","message":"use {} on all branches of if/then/else","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1013,"context_line":"\t\t\t} else if (xtensa_regs[i].type \u003d\u003d XT_REG_RELGEN) {"},{"line_number":1014,"context_line":"\t\t\t\tregval \u003d"},{"line_number":1015,"context_line":"\t\t\t\t\tbuf_get_u32(regvals[xtensa_regs[i].reg_num], 0, 32);"},{"line_number":1016,"context_line":"\t\t\t} else"},{"line_number":1017,"context_line":"\t\t\t\tregval \u003d buf_get_u32(regvals[i], 0, 32);"},{"line_number":1018,"context_line":"\t\t\txtensa_reg_set(target, i, regval);"},{"line_number":1019,"context_line":"\t\t\treg_list[i].valid \u003d 1;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"ee031a55_e20ca264","line":1016,"in_reply_to":"1449f3fa_9c059fe9","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1018,"context_line":"\t\t\txtensa_reg_set(target, i, regval);"},{"line_number":1019,"context_line":"\t\t\treg_list[i].valid \u003d 1;"},{"line_number":1020,"context_line":"\t\t\treg_list[i].dirty \u003d 0;\t/*always do this _after_ xtensa_reg_set! */"},{"line_number":1021,"context_line":"\t\t} else"},{"line_number":1022,"context_line":"\t\t\treg_list[i].valid \u003d 0;"},{"line_number":1023,"context_line":"\t}"},{"line_number":1024,"context_line":"\t/*We have used A3 as a scratch register and we will need to write that back. */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"a8a8a62b_27a986f1","line":1021,"updated":"2022-04-21 22:57:20.000000000","message":"use {} on all branches of if/then/else","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1018,"context_line":"\t\t\txtensa_reg_set(target, i, regval);"},{"line_number":1019,"context_line":"\t\t\treg_list[i].valid \u003d 1;"},{"line_number":1020,"context_line":"\t\t\treg_list[i].dirty \u003d 0;\t/*always do this _after_ xtensa_reg_set! */"},{"line_number":1021,"context_line":"\t\t} else"},{"line_number":1022,"context_line":"\t\t\treg_list[i].valid \u003d 0;"},{"line_number":1023,"context_line":"\t}"},{"line_number":1024,"context_line":"\t/*We have used A3 as a scratch register and we will need to write that back. */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"20f9d794_f475a4bb","line":1021,"in_reply_to":"a8a8a62b_27a986f1","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1078,"context_line":"\t\t\txtensa_reg_set(target, XT_USR_REG_START + i, buf_get_u32(regvals[i], 0, 32));"},{"line_number":1079,"context_line":"\t\t\treg_list[XT_USR_REG_START + i].valid \u003d 1;"},{"line_number":1080,"context_line":"\t\t\treg_list[XT_USR_REG_START + i].dirty \u003d 0;"},{"line_number":1081,"context_line":"\t\t} else"},{"line_number":1082,"context_line":"\t\t\treg_list[XT_USR_REG_START + i].valid \u003d 0;"},{"line_number":1083,"context_line":"\t}"},{"line_number":1084,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"7c76a932_dd0fee8b","line":1081,"updated":"2022-04-21 22:57:20.000000000","message":"use {} on all branches of if/then/else","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1078,"context_line":"\t\t\txtensa_reg_set(target, XT_USR_REG_START + i, buf_get_u32(regvals[i], 0, 32));"},{"line_number":1079,"context_line":"\t\t\treg_list[XT_USR_REG_START + i].valid \u003d 1;"},{"line_number":1080,"context_line":"\t\t\treg_list[XT_USR_REG_START + i].dirty \u003d 0;"},{"line_number":1081,"context_line":"\t\t} else"},{"line_number":1082,"context_line":"\t\t\treg_list[XT_USR_REG_START + i].valid \u003d 0;"},{"line_number":1083,"context_line":"\t}"},{"line_number":1084,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"aec1c1da_998d90ae","line":1081,"in_reply_to":"7c76a932_dd0fee8b","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1100,"context_line":"\telse"},{"line_number":1101,"context_line":"\t\t*reg_list_size \u003d xtensa-\u003ecore_config-\u003egdb_general_regs_num;"},{"line_number":1102,"context_line":""},{"line_number":1103,"context_line":"\tLOG_DEBUG(\"reg_class\u003d%i, num_regs\u003d%d\", (int)reg_class, *reg_list_size);"},{"line_number":1104,"context_line":""},{"line_number":1105,"context_line":"\t*reg_list \u003d malloc((*reg_list_size)*sizeof(struct reg *));"},{"line_number":1106,"context_line":"\tif (!*reg_list)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"b51672e9_026adc6b","line":1103,"updated":"2022-04-21 22:57:20.000000000","message":"Humm, reg_class is an enum. Why you need to cast it to int?\nIs there any compiler that triggers this as error/warning?","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1100,"context_line":"\telse"},{"line_number":1101,"context_line":"\t\t*reg_list_size \u003d xtensa-\u003ecore_config-\u003egdb_general_regs_num;"},{"line_number":1102,"context_line":""},{"line_number":1103,"context_line":"\tLOG_DEBUG(\"reg_class\u003d%i, num_regs\u003d%d\", (int)reg_class, *reg_list_size);"},{"line_number":1104,"context_line":""},{"line_number":1105,"context_line":"\t*reg_list \u003d malloc((*reg_list_size)*sizeof(struct reg *));"},{"line_number":1106,"context_line":"\tif (!*reg_list)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"c65bbb0f_60b31d8f","line":1103,"in_reply_to":"b51672e9_026adc6b","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1102,"context_line":""},{"line_number":1103,"context_line":"\tLOG_DEBUG(\"reg_class\u003d%i, num_regs\u003d%d\", (int)reg_class, *reg_list_size);"},{"line_number":1104,"context_line":""},{"line_number":1105,"context_line":"\t*reg_list \u003d malloc((*reg_list_size)*sizeof(struct reg *));"},{"line_number":1106,"context_line":"\tif (!*reg_list)"},{"line_number":1107,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1108,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"a4433f3d_9249e000","line":1105,"updated":"2022-04-21 22:57:20.000000000","message":"add space around the multiply operator \u0027*\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1102,"context_line":""},{"line_number":1103,"context_line":"\tLOG_DEBUG(\"reg_class\u003d%i, num_regs\u003d%d\", (int)reg_class, *reg_list_size);"},{"line_number":1104,"context_line":""},{"line_number":1105,"context_line":"\t*reg_list \u003d malloc((*reg_list_size)*sizeof(struct reg *));"},{"line_number":1106,"context_line":"\tif (!*reg_list)"},{"line_number":1107,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1108,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"a9948621_9cd4ccd6","line":1105,"in_reply_to":"a4433f3d_9249e000","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1143,"context_line":"\tif (!xtensa_is_stopped(target)) {"},{"line_number":1144,"context_line":"\t\txtensa_queue_dbg_reg_write(xtensa,"},{"line_number":1145,"context_line":"\t\t\tNARADR_DCRSET,"},{"line_number":1146,"context_line":"\t\t\tOCDDCR_ENABLEOCD|OCDDCR_DEBUGINTERRUPT);"},{"line_number":1147,"context_line":"\t\txtensa_dm_queue_tdi_idle(\u0026xtensa-\u003edbg_mod);"},{"line_number":1148,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1149,"context_line":"\t\tif (res !\u003d ERROR_OK) {"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"b94cb47e_c85bbbc7","line":1146,"updated":"2022-04-21 22:57:20.000000000","message":"add space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1143,"context_line":"\tif (!xtensa_is_stopped(target)) {"},{"line_number":1144,"context_line":"\t\txtensa_queue_dbg_reg_write(xtensa,"},{"line_number":1145,"context_line":"\t\t\tNARADR_DCRSET,"},{"line_number":1146,"context_line":"\t\t\tOCDDCR_ENABLEOCD|OCDDCR_DEBUGINTERRUPT);"},{"line_number":1147,"context_line":"\t\txtensa_dm_queue_tdi_idle(\u0026xtensa-\u003edbg_mod);"},{"line_number":1148,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1149,"context_line":"\t\tif (res !\u003d ERROR_OK) {"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"3917a518_89ba2ab5","line":1146,"in_reply_to":"b94cb47e_c85bbbc7","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1183,"context_line":""},{"line_number":1184,"context_line":"\tif (address \u0026\u0026 !current)"},{"line_number":1185,"context_line":"\t\txtensa_reg_set(target, XT_REG_IDX_PC, address);"},{"line_number":1186,"context_line":"\telse {"},{"line_number":1187,"context_line":"\t\txtensa_reg_val_t cause \u003d xtensa_reg_get(target, XT_REG_IDX_DEBUGCAUSE);"},{"line_number":1188,"context_line":"\t\tif (cause \u0026 DEBUGCAUSE_DB) {"},{"line_number":1189,"context_line":"\t\t\t/*We stopped due to a watchpoint. We can\u0027t just resume executing the"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"c064b3a1_f873b67b","line":1186,"updated":"2022-04-21 22:57:20.000000000","message":"{} for all branches","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1183,"context_line":""},{"line_number":1184,"context_line":"\tif (address \u0026\u0026 !current)"},{"line_number":1185,"context_line":"\t\txtensa_reg_set(target, XT_REG_IDX_PC, address);"},{"line_number":1186,"context_line":"\telse {"},{"line_number":1187,"context_line":"\t\txtensa_reg_val_t cause \u003d xtensa_reg_get(target, XT_REG_IDX_DEBUGCAUSE);"},{"line_number":1188,"context_line":"\t\tif (cause \u0026 DEBUGCAUSE_DB) {"},{"line_number":1189,"context_line":"\t\t\t/*We stopped due to a watchpoint. We can\u0027t just resume executing the"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"08be28f9_881456a7","line":1186,"in_reply_to":"c064b3a1_f873b67b","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1192,"context_line":"\t\t\t * which ignores watchpoints. */"},{"line_number":1193,"context_line":"\t\t\txtensa_do_step(target, current, address, handle_breakpoints);"},{"line_number":1194,"context_line":"\t\t}"},{"line_number":1195,"context_line":"\t\tif (cause \u0026 (DEBUGCAUSE_BI|DEBUGCAUSE_BN)) {"},{"line_number":1196,"context_line":"\t\t\t/*We stopped due to a break instruction. We can\u0027t just resume executing the"},{"line_number":1197,"context_line":"\t\t\t * instruction again because */"},{"line_number":1198,"context_line":"\t\t\t/*that would trigger the break again. To fix this, we single-step, which"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"7d856f3c_40efb51d","line":1195,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1192,"context_line":"\t\t\t * which ignores watchpoints. */"},{"line_number":1193,"context_line":"\t\t\txtensa_do_step(target, current, address, handle_breakpoints);"},{"line_number":1194,"context_line":"\t\t}"},{"line_number":1195,"context_line":"\t\tif (cause \u0026 (DEBUGCAUSE_BI|DEBUGCAUSE_BN)) {"},{"line_number":1196,"context_line":"\t\t\t/*We stopped due to a break instruction. We can\u0027t just resume executing the"},{"line_number":1197,"context_line":"\t\t\t * instruction again because */"},{"line_number":1198,"context_line":"\t\t\t/*that would trigger the break again. To fix this, we single-step, which"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"44ff39d0_b21b987f","line":1195,"in_reply_to":"7d856f3c_40efb51d","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1304,"context_line":"\txtensa_reg_val_t icountlvl, cause;"},{"line_number":1305,"context_line":"\txtensa_reg_val_t oldps, newps, oldpc, cur_pc;"},{"line_number":1306,"context_line":""},{"line_number":1307,"context_line":"\tLOG_DEBUG(\"%s: current\u003d%d, address\u003d\"TARGET_ADDR_FMT \", handle_breakpoints\u003d%i\","},{"line_number":1308,"context_line":"\t\ttarget_name(target), current, address, handle_breakpoints);"},{"line_number":1309,"context_line":""},{"line_number":1310,"context_line":"\tif (target-\u003estate !\u003d TARGET_HALTED) {"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"7b692f5c_1232521c","line":1307,"updated":"2022-04-21 22:57:20.000000000","message":"add space before TARGET_ADDR_FMT","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1304,"context_line":"\txtensa_reg_val_t icountlvl, cause;"},{"line_number":1305,"context_line":"\txtensa_reg_val_t oldps, newps, oldpc, cur_pc;"},{"line_number":1306,"context_line":""},{"line_number":1307,"context_line":"\tLOG_DEBUG(\"%s: current\u003d%d, address\u003d\"TARGET_ADDR_FMT \", handle_breakpoints\u003d%i\","},{"line_number":1308,"context_line":"\t\ttarget_name(target), current, address, handle_breakpoints);"},{"line_number":1309,"context_line":""},{"line_number":1310,"context_line":"\tif (target-\u003estate !\u003d TARGET_HALTED) {"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"691ca391_3f0bc24e","line":1307,"in_reply_to":"7b692f5c_1232521c","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1386,"context_line":"\t\txtensa-\u003ecore_cache-\u003ereg_list[XT_REG_IDX_DEBUGCAUSE].dirty \u003d 0;"},{"line_number":1387,"context_line":"\t\t/*Save all DBREAKCx registers and set to 0 to disable watchpoints */"},{"line_number":1388,"context_line":"\t\tfor (slot \u003d 0; slot \u003c xtensa-\u003ecore_config-\u003edebug.dbreaks_num; slot++) {"},{"line_number":1389,"context_line":"\t\t\tdbreakc[slot] \u003d xtensa_reg_get(target, XT_REG_IDX_DBREAKC0+slot);"},{"line_number":1390,"context_line":"\t\t\txtensa_reg_set(target, XT_REG_IDX_DBREAKC0+slot, 0);"},{"line_number":1391,"context_line":"\t\t}"},{"line_number":1392,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"f5c4cda4_be319797","line":1389,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027+\u0027 and in next line","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1386,"context_line":"\t\txtensa-\u003ecore_cache-\u003ereg_list[XT_REG_IDX_DEBUGCAUSE].dirty \u003d 0;"},{"line_number":1387,"context_line":"\t\t/*Save all DBREAKCx registers and set to 0 to disable watchpoints */"},{"line_number":1388,"context_line":"\t\tfor (slot \u003d 0; slot \u003c xtensa-\u003ecore_config-\u003edebug.dbreaks_num; slot++) {"},{"line_number":1389,"context_line":"\t\t\tdbreakc[slot] \u003d xtensa_reg_get(target, XT_REG_IDX_DBREAKC0+slot);"},{"line_number":1390,"context_line":"\t\t\txtensa_reg_set(target, XT_REG_IDX_DBREAKC0+slot, 0);"},{"line_number":1391,"context_line":"\t\t}"},{"line_number":1392,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"ffc8721e_e5a453a7","line":1389,"in_reply_to":"f5c4cda4_be319797","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1391,"context_line":"\t\t}"},{"line_number":1392,"context_line":"\t}"},{"line_number":1393,"context_line":""},{"line_number":1394,"context_line":"\tif (!handle_breakpoints \u0026\u0026 (cause \u0026 (DEBUGCAUSE_BI|DEBUGCAUSE_BN))) {"},{"line_number":1395,"context_line":"\t\t/* handle normal SW breakpoint */"},{"line_number":1396,"context_line":"\t\txtensa_reg_set(target, XT_REG_IDX_DEBUGCAUSE, 0);\t/*so we don\u0027t recurse into"},{"line_number":1397,"context_line":"\t\t\t\t\t\t\t\t\t * the same routine */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"65526b44_0a7e468b","line":1394,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027|\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1391,"context_line":"\t\t}"},{"line_number":1392,"context_line":"\t}"},{"line_number":1393,"context_line":""},{"line_number":1394,"context_line":"\tif (!handle_breakpoints \u0026\u0026 (cause \u0026 (DEBUGCAUSE_BI|DEBUGCAUSE_BN))) {"},{"line_number":1395,"context_line":"\t\t/* handle normal SW breakpoint */"},{"line_number":1396,"context_line":"\t\txtensa_reg_set(target, XT_REG_IDX_DEBUGCAUSE, 0);\t/*so we don\u0027t recurse into"},{"line_number":1397,"context_line":"\t\t\t\t\t\t\t\t\t * the same routine */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"0b35e790_d69a1b8d","line":1394,"in_reply_to":"65526b44_0a7e468b","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1417,"context_line":""},{"line_number":1418,"context_line":"\t\t/* Wait for stepping to complete */"},{"line_number":1419,"context_line":"\t\tint64_t start \u003d timeval_ms();"},{"line_number":1420,"context_line":"\t\twhile (timeval_ms() \u003c start+500) {"},{"line_number":1421,"context_line":"\t\t\t/*Do not use target_poll here, it also triggers other things... just"},{"line_number":1422,"context_line":"\t\t\t * manually read the DSR until stepping */"},{"line_number":1423,"context_line":"\t\t\t/*is complete. */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"233646ee_d27c9e53","line":1420,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027+\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1417,"context_line":""},{"line_number":1418,"context_line":"\t\t/* Wait for stepping to complete */"},{"line_number":1419,"context_line":"\t\tint64_t start \u003d timeval_ms();"},{"line_number":1420,"context_line":"\t\twhile (timeval_ms() \u003c start+500) {"},{"line_number":1421,"context_line":"\t\t\t/*Do not use target_poll here, it also triggers other things... just"},{"line_number":1422,"context_line":"\t\t\t * manually read the DSR until stepping */"},{"line_number":1423,"context_line":"\t\t\t/*is complete. */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"e0c398a7_b9d5ad20","line":1420,"in_reply_to":"233646ee_d27c9e53","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1429,"context_line":"\t\t\t}"},{"line_number":1430,"context_line":"\t\t\tif (xtensa_is_stopped(target))"},{"line_number":1431,"context_line":"\t\t\t\tbreak;"},{"line_number":1432,"context_line":"\t\t\telse"},{"line_number":1433,"context_line":"\t\t\t\tusleep(1000);"},{"line_number":1434,"context_line":"\t\t}"},{"line_number":1435,"context_line":"\t\tLOG_DEBUG(\"%s: Finish stepping. dsr\u003d0x%08x\","}],"source_content_type":"text/x-csrc","patch_set":6,"id":"e884a27e_f1bb346b","line":1432,"updated":"2022-04-21 22:57:20.000000000","message":"no need for else after break. Remove else and reduce the indentation of next line","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1429,"context_line":"\t\t\t}"},{"line_number":1430,"context_line":"\t\t\tif (xtensa_is_stopped(target))"},{"line_number":1431,"context_line":"\t\t\t\tbreak;"},{"line_number":1432,"context_line":"\t\t\telse"},{"line_number":1433,"context_line":"\t\t\t\tusleep(1000);"},{"line_number":1434,"context_line":"\t\t}"},{"line_number":1435,"context_line":"\t\tLOG_DEBUG(\"%s: Finish stepping. dsr\u003d0x%08x\","}],"source_content_type":"text/x-csrc","patch_set":6,"id":"d3f26361_9d8601cd","line":1432,"in_reply_to":"e884a27e_f1bb346b","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1483,"context_line":"\t\tLOG_DEBUG(\"%s: ...Done, re-installing watchpoints.\", target_name(target));"},{"line_number":1484,"context_line":"\t\t/*Restore the DBREAKCx registers */"},{"line_number":1485,"context_line":"\t\tfor (slot \u003d 0; slot \u003c xtensa-\u003ecore_config-\u003edebug.dbreaks_num; slot++)"},{"line_number":1486,"context_line":"\t\t\txtensa_reg_set(target, XT_REG_IDX_DBREAKC0+slot, dbreakc[slot]);"},{"line_number":1487,"context_line":"\t}"},{"line_number":1488,"context_line":""},{"line_number":1489,"context_line":"\t/*Restore int level */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"96de433a_4bf9a8e9","line":1486,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027+\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1483,"context_line":"\t\tLOG_DEBUG(\"%s: ...Done, re-installing watchpoints.\", target_name(target));"},{"line_number":1484,"context_line":"\t\t/*Restore the DBREAKCx registers */"},{"line_number":1485,"context_line":"\t\tfor (slot \u003d 0; slot \u003c xtensa-\u003ecore_config-\u003edebug.dbreaks_num; slot++)"},{"line_number":1486,"context_line":"\t\t\txtensa_reg_set(target, XT_REG_IDX_DBREAKC0+slot, dbreakc[slot]);"},{"line_number":1487,"context_line":"\t}"},{"line_number":1488,"context_line":""},{"line_number":1489,"context_line":"\t/*Restore int level */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"553ffe0d_59e201e4","line":1486,"in_reply_to":"96de433a_4bf9a8e9","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1594,"context_line":"\tstruct xtensa *xtensa \u003d target_to_xtensa(target);"},{"line_number":1595,"context_line":"\t/*We are going to read memory in 32-bit increments. This may not be what the calling"},{"line_number":1596,"context_line":"\t * function expects, so we may need to allocate a temp buffer and read into that first. */"},{"line_number":1597,"context_line":"\ttarget_addr_t addrstart_al \u003d (address) \u0026 ~3;"},{"line_number":1598,"context_line":"\ttarget_addr_t addrend_al \u003d (address + (size*count) + 3) \u0026 ~3;"},{"line_number":1599,"context_line":"\ttarget_addr_t adr \u003d addrstart_al;"},{"line_number":1600,"context_line":"\tint i \u003d 0, res;"},{"line_number":1601,"context_line":"\tuint8_t *albuff;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"901e9099_051d873e","line":1598,"range":{"start_line":1597,"start_character":1,"end_line":1598,"end_character":3},"updated":"2022-04-21 22:57:20.000000000","message":"There are macros for these:\n#include \u003chelper/align.h\u003e\naddrstart_al \u003d ALIGN_DOWN(address, 4);\naddrend_al \u003d ALIGN_UP(address + size * count, 4);","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1594,"context_line":"\tstruct xtensa *xtensa \u003d target_to_xtensa(target);"},{"line_number":1595,"context_line":"\t/*We are going to read memory in 32-bit increments. This may not be what the calling"},{"line_number":1596,"context_line":"\t * function expects, so we may need to allocate a temp buffer and read into that first. */"},{"line_number":1597,"context_line":"\ttarget_addr_t addrstart_al \u003d (address) \u0026 ~3;"},{"line_number":1598,"context_line":"\ttarget_addr_t addrend_al \u003d (address + (size*count) + 3) \u0026 ~3;"},{"line_number":1599,"context_line":"\ttarget_addr_t adr \u003d addrstart_al;"},{"line_number":1600,"context_line":"\tint i \u003d 0, res;"},{"line_number":1601,"context_line":"\tuint8_t *albuff;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"3c687f3f_f33c9b8d","line":1598,"range":{"start_line":1597,"start_character":1,"end_line":1598,"end_character":3},"in_reply_to":"901e9099_051d873e","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1600,"context_line":"\tint i \u003d 0, res;"},{"line_number":1601,"context_line":"\tuint8_t *albuff;"},{"line_number":1602,"context_line":""},{"line_number":1603,"context_line":"/*  LOG_INFO(\"%s: %s: reading %d bytes from addr %08X\", target_name(target), __func__,"},{"line_number":1604,"context_line":" * size*count, address); */"},{"line_number":1605,"context_line":"/*  LOG_INFO(\"Converted to aligned addresses: read from %08X to %08X\", addrstart_al, addrend_al); */"},{"line_number":1606,"context_line":"\tif (target-\u003estate !\u003d TARGET_HALTED) {"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"010a0707_cf8565b7","line":1603,"updated":"2022-04-21 22:57:20.000000000","message":"align comments to code\u0027s indentation","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1600,"context_line":"\tint i \u003d 0, res;"},{"line_number":1601,"context_line":"\tuint8_t *albuff;"},{"line_number":1602,"context_line":""},{"line_number":1603,"context_line":"/*  LOG_INFO(\"%s: %s: reading %d bytes from addr %08X\", target_name(target), __func__,"},{"line_number":1604,"context_line":" * size*count, address); */"},{"line_number":1605,"context_line":"/*  LOG_INFO(\"Converted to aligned addresses: read from %08X to %08X\", addrstart_al, addrend_al); */"},{"line_number":1606,"context_line":"\tif (target-\u003estate !\u003d TARGET_HALTED) {"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"348622bb_47e1dfa0","line":1603,"in_reply_to":"010a0707_cf8565b7","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1609,"context_line":"\t}"},{"line_number":1610,"context_line":""},{"line_number":1611,"context_line":"\tif (!xtensa-\u003epermissive_mode) {"},{"line_number":1612,"context_line":"\t\tif (!xtensa_memory_op_validate_range(xtensa, address, (size*count),"},{"line_number":1613,"context_line":"\t\t\t\tXT_MEM_ACCESS_READ)) {"},{"line_number":1614,"context_line":"\t\t\tLOG_DEBUG(\"address \"TARGET_ADDR_FMT \" not readable\", address);"},{"line_number":1615,"context_line":"\t\t\treturn ERROR_FAIL;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"033d1abd_daaa6795","line":1612,"updated":"2022-04-21 22:57:20.000000000","message":"space around \u0027*\u0027. I stop here, but I see other later on.","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1609,"context_line":"\t}"},{"line_number":1610,"context_line":""},{"line_number":1611,"context_line":"\tif (!xtensa-\u003epermissive_mode) {"},{"line_number":1612,"context_line":"\t\tif (!xtensa_memory_op_validate_range(xtensa, address, (size*count),"},{"line_number":1613,"context_line":"\t\t\t\tXT_MEM_ACCESS_READ)) {"},{"line_number":1614,"context_line":"\t\t\tLOG_DEBUG(\"address \"TARGET_ADDR_FMT \" not readable\", address);"},{"line_number":1615,"context_line":"\t\t\treturn ERROR_FAIL;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"54589c07_f7c3e304","line":1612,"in_reply_to":"033d1abd_daaa6795","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1622,"context_line":"\t\talbuff \u003d malloc(addrend_al-addrstart_al);"},{"line_number":1623,"context_line":"\t\tif (!albuff) {"},{"line_number":1624,"context_line":"\t\t\tLOG_ERROR(\"%s: Out of memory allocating %ld bytes!\", __func__,"},{"line_number":1625,"context_line":"\t\t\t\t(long)(addrend_al-addrstart_al));"},{"line_number":1626,"context_line":"\t\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1627,"context_line":"\t\t}"},{"line_number":1628,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"98045819_9e763be8","line":1625,"updated":"2022-04-21 22:57:20.000000000","message":"Don\u0027t use cast. Here the result is of type target_addr_t, so remove cast and\nLOG_ERROR(\"%s: Out of memory allocating %\" TARGET_PRIdADDR \" bytes!\",","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1622,"context_line":"\t\talbuff \u003d malloc(addrend_al-addrstart_al);"},{"line_number":1623,"context_line":"\t\tif (!albuff) {"},{"line_number":1624,"context_line":"\t\t\tLOG_ERROR(\"%s: Out of memory allocating %ld bytes!\", __func__,"},{"line_number":1625,"context_line":"\t\t\t\t(long)(addrend_al-addrstart_al));"},{"line_number":1626,"context_line":"\t\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1627,"context_line":"\t\t}"},{"line_number":1628,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"cf53c51d_174df6ff","line":1625,"in_reply_to":"98045819_9e763be8","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":1708,"context_line":"\t\talbuff \u003d malloc(addrend_al-addrstart_al);"},{"line_number":1709,"context_line":"\t\tif (!albuff) {"},{"line_number":1710,"context_line":"\t\t\tLOG_ERROR(\"%s: Out of memory allocating %ld bytes!\", __func__,"},{"line_number":1711,"context_line":"\t\t\t\t(long)(addrend_al-addrstart_al));"},{"line_number":1712,"context_line":"\t\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1713,"context_line":"\t\t}"},{"line_number":1714,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"bbb78ad8_4347d6fa","line":1711,"updated":"2022-04-21 22:57:20.000000000","message":"also here, use TARGET_PRIdADDR instead of cast","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":1708,"context_line":"\t\talbuff \u003d malloc(addrend_al-addrstart_al);"},{"line_number":1709,"context_line":"\t\tif (!albuff) {"},{"line_number":1710,"context_line":"\t\t\tLOG_ERROR(\"%s: Out of memory allocating %ld bytes!\", __func__,"},{"line_number":1711,"context_line":"\t\t\t\t(long)(addrend_al-addrstart_al));"},{"line_number":1712,"context_line":"\t\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1713,"context_line":"\t\t}"},{"line_number":1714,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"d8817331_885f9638","line":1711,"in_reply_to":"bbb78ad8_4347d6fa","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":2062,"context_line":"\t/*It\u0027s basically 0x3F with an incremental bit removed from the LSB for each extra length"},{"line_number":2063,"context_line":"\t * power of 2. */"},{"line_number":2064,"context_line":"\t/*Yes, I could have calculated this, but for 7 options... */"},{"line_number":2065,"context_line":"\tdbreakcval \u003d 0xaa;\t/*invalid, so we can check if this is changed later */"},{"line_number":2066,"context_line":"\tif (watchpoint-\u003elength \u003d\u003d 1 \u0026\u0026 (watchpoint-\u003eaddress \u0026 0x00) \u003d\u003d 0)"},{"line_number":2067,"context_line":"\t\tdbreakcval \u003d 0x3F;"},{"line_number":2068,"context_line":"\tif (watchpoint-\u003elength \u003d\u003d 2 \u0026\u0026 (watchpoint-\u003eaddress \u0026 0x01) \u003d\u003d 0)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"c33fd7e8_ec1d1fd8","line":2065,"updated":"2022-04-21 22:57:20.000000000","message":"shorter way to write this long code:\n if (watchpoint-\u003elength \u003c 1 ||\n     watchpoint-\u003elength \u003e 64 ||\n     !IS_PWR_OF_2(watchpoint-\u003elength) ||\n     !IS_ALIGNED(watchpoint-\u003eaddress, watchpoint-\u003elength)) {\n   LOG_WARNING(bla bla bla);\n   return ERROR_TARGET_RESOURCE_NOT_AVAILABLE;\n }\n dbreakcval \u003d ALIGN_DOWN(0x3f, watchpoint-\u003elength \u003e\u003e 1);\nThe \u0027if\u0027 looks readable, but last line is too cryptic because it\u0027s not a real alignment operation. If you have better idea, it\u0027s welcome","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5507f9daa77a8fcd728351a5185e06b64a7c9dac","unresolved":false,"context_lines":[{"line_number":2062,"context_line":"\t/*It\u0027s basically 0x3F with an incremental bit removed from the LSB for each extra length"},{"line_number":2063,"context_line":"\t * power of 2. */"},{"line_number":2064,"context_line":"\t/*Yes, I could have calculated this, but for 7 options... */"},{"line_number":2065,"context_line":"\tdbreakcval \u003d 0xaa;\t/*invalid, so we can check if this is changed later */"},{"line_number":2066,"context_line":"\tif (watchpoint-\u003elength \u003d\u003d 1 \u0026\u0026 (watchpoint-\u003eaddress \u0026 0x00) \u003d\u003d 0)"},{"line_number":2067,"context_line":"\t\tdbreakcval \u003d 0x3F;"},{"line_number":2068,"context_line":"\tif (watchpoint-\u003elength \u003d\u003d 2 \u0026\u0026 (watchpoint-\u003eaddress \u0026 0x01) \u003d\u003d 0)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"d0eabd8e_f5a64ced","line":2065,"in_reply_to":"6307c68a_84c1c502","updated":"2022-04-22 17:22:10.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":true,"context_lines":[{"line_number":2062,"context_line":"\t/*It\u0027s basically 0x3F with an incremental bit removed from the LSB for each extra length"},{"line_number":2063,"context_line":"\t * power of 2. */"},{"line_number":2064,"context_line":"\t/*Yes, I could have calculated this, but for 7 options... */"},{"line_number":2065,"context_line":"\tdbreakcval \u003d 0xaa;\t/*invalid, so we can check if this is changed later */"},{"line_number":2066,"context_line":"\tif (watchpoint-\u003elength \u003d\u003d 1 \u0026\u0026 (watchpoint-\u003eaddress \u0026 0x00) \u003d\u003d 0)"},{"line_number":2067,"context_line":"\t\tdbreakcval \u003d 0x3F;"},{"line_number":2068,"context_line":"\tif (watchpoint-\u003elength \u003d\u003d 2 \u0026\u0026 (watchpoint-\u003eaddress \u0026 0x01) \u003d\u003d 0)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"6307c68a_84c1c502","line":2065,"in_reply_to":"c33fd7e8_ec1d1fd8","updated":"2022-04-22 14:02:08.000000000","message":"Definetely looks better. But I will test it first.","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":2088,"context_line":"\t}"},{"line_number":2089,"context_line":""},{"line_number":2090,"context_line":"\tif (watchpoint-\u003erw \u003d\u003d WPT_READ)"},{"line_number":2091,"context_line":"\t\tdbreakcval |\u003d (1\u003c\u003c30);"},{"line_number":2092,"context_line":"\tif (watchpoint-\u003erw \u003d\u003d WPT_WRITE)"},{"line_number":2093,"context_line":"\t\tdbreakcval |\u003d (1U\u003c\u003c31);"},{"line_number":2094,"context_line":"\tif (watchpoint-\u003erw \u003d\u003d WPT_ACCESS)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"8ca4e547_2d826ee8","line":2091,"updated":"2022-04-21 22:57:20.000000000","message":"Use the macro BIT:\ndbreakcval |\u003d BIT(30);","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":2088,"context_line":"\t}"},{"line_number":2089,"context_line":""},{"line_number":2090,"context_line":"\tif (watchpoint-\u003erw \u003d\u003d WPT_READ)"},{"line_number":2091,"context_line":"\t\tdbreakcval |\u003d (1\u003c\u003c30);"},{"line_number":2092,"context_line":"\tif (watchpoint-\u003erw \u003d\u003d WPT_WRITE)"},{"line_number":2093,"context_line":"\t\tdbreakcval |\u003d (1U\u003c\u003c31);"},{"line_number":2094,"context_line":"\tif (watchpoint-\u003erw \u003d\u003d WPT_ACCESS)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"8566777b_da61c12d","line":2091,"in_reply_to":"8ca4e547_2d826ee8","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":2211,"context_line":"\tassert("},{"line_number":2212,"context_line":"\t\txtensa-\u003ealgo_context_backup !\u003d NULL \u0026\u0026"},{"line_number":2213,"context_line":"\t\t\"Failed to alloc mem for algorithm context backup!\");"},{"line_number":2214,"context_line":"\tfor (unsigned i \u003d 0; i \u003c reg_cache-\u003enum_regs; i++) {"},{"line_number":2215,"context_line":"\t\tstruct reg *reg \u003d \u0026reg_cache-\u003ereg_list[i];"},{"line_number":2216,"context_line":"\t\txtensa-\u003ealgo_context_backup[i] \u003d calloc(1, reg-\u003esize/8);"},{"line_number":2217,"context_line":"\t\tassert("}],"source_content_type":"text/x-csrc","patch_set":6,"id":"10f6db38_c4e7cd41","line":2214,"updated":"2022-04-21 22:57:20.000000000","message":"\u0027unsigned int\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":2211,"context_line":"\tassert("},{"line_number":2212,"context_line":"\t\txtensa-\u003ealgo_context_backup !\u003d NULL \u0026\u0026"},{"line_number":2213,"context_line":"\t\t\"Failed to alloc mem for algorithm context backup!\");"},{"line_number":2214,"context_line":"\tfor (unsigned i \u003d 0; i \u003c reg_cache-\u003enum_regs; i++) {"},{"line_number":2215,"context_line":"\t\tstruct reg *reg \u003d \u0026reg_cache-\u003ereg_list[i];"},{"line_number":2216,"context_line":"\t\txtensa-\u003ealgo_context_backup[i] \u003d calloc(1, reg-\u003esize/8);"},{"line_number":2217,"context_line":"\t\tassert("}],"source_content_type":"text/x-csrc","patch_set":6,"id":"0b7c4c92_a80e637f","line":2214,"in_reply_to":"10f6db38_c4e7cd41","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":2373,"context_line":"\tif (CMD_ARGC \u003c 2)"},{"line_number":2374,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":2375,"context_line":""},{"line_number":2376,"context_line":"\tunsigned counter_id \u003d strtoul(CMD_ARGV[0], NULL, 0);"},{"line_number":2377,"context_line":"\tif (counter_id \u003e\u003d XTENSA_MAX_PERF_COUNTERS) {"},{"line_number":2378,"context_line":"\t\tcommand_print(CMD, \"counter_id should be \u003c %d\", XTENSA_MAX_PERF_COUNTERS);"},{"line_number":2379,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"d8fc0695_8202fcae","line":2376,"updated":"2022-04-21 22:57:20.000000000","message":"use \u0027unsigned int\u0027","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":2373,"context_line":"\tif (CMD_ARGC \u003c 2)"},{"line_number":2374,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":2375,"context_line":""},{"line_number":2376,"context_line":"\tunsigned counter_id \u003d strtoul(CMD_ARGV[0], NULL, 0);"},{"line_number":2377,"context_line":"\tif (counter_id \u003e\u003d XTENSA_MAX_PERF_COUNTERS) {"},{"line_number":2378,"context_line":"\t\tcommand_print(CMD, \"counter_id should be \u003c %d\", XTENSA_MAX_PERF_COUNTERS);"},{"line_number":2379,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"f5c55a62_0246ffe9","line":2376,"in_reply_to":"d8fc0695_8202fcae","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":2448,"context_line":"\t\t\treturn res;"},{"line_number":2449,"context_line":"\t\tresult_pos +\u003d snprintf(result_buf + result_pos, sizeof(result_buf) - result_pos,"},{"line_number":2450,"context_line":"\t\t\t\"%-12llu%s\","},{"line_number":2451,"context_line":"\t\t\t(unsigned long long) result.value,"},{"line_number":2452,"context_line":"\t\t\t(result.overflow) ? \" (overflow)\" : \"\");"},{"line_number":2453,"context_line":"\t\tLOG_INFO(\"%s\", result_buf);"},{"line_number":2454,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"78d0fb0d_701c8911","line":2451,"updated":"2022-04-21 22:57:20.000000000","message":"result.value is uint64_t.\nRemove the cast and use \"%-12\" PRIu64 \"%s\"","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":2448,"context_line":"\t\t\treturn res;"},{"line_number":2449,"context_line":"\t\tresult_pos +\u003d snprintf(result_buf + result_pos, sizeof(result_buf) - result_pos,"},{"line_number":2450,"context_line":"\t\t\t\"%-12llu%s\","},{"line_number":2451,"context_line":"\t\t\t(unsigned long long) result.value,"},{"line_number":2452,"context_line":"\t\t\t(result.overflow) ? \" (overflow)\" : \"\");"},{"line_number":2453,"context_line":"\t\tLOG_INFO(\"%s\", result_buf);"},{"line_number":2454,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"3dce813c_77e44af0","line":2451,"in_reply_to":"78d0fb0d_701c8911","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":364,"context_line":"\tif (target-\u003estate !\u003d TARGET_HALTED)"},{"line_number":365,"context_line":"\t\treturn ERROR_TARGET_NOT_HALTED;"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"\tif (reg-\u003esize \u003c\u003d 32) {"},{"line_number":368,"context_line":"\t\tuint32_t value \u003d buf_get_u32(buf, 0, reg-\u003esize);"},{"line_number":369,"context_line":"\t\tbuf_set_u32(reg-\u003evalue, 0, reg-\u003esize, value);"},{"line_number":370,"context_line":"\t} else if (reg-\u003esize \u003c\u003d 64) {"},{"line_number":371,"context_line":"\t\tuint64_t value \u003d buf_get_u64(buf, 0, reg-\u003esize);"},{"line_number":372,"context_line":"\t\tbuf_set_u64(reg-\u003evalue, 0, reg-\u003esize, value);"},{"line_number":373,"context_line":"\t}"},{"line_number":374,"context_line":"\treg-\u003edirty \u003d 1;"},{"line_number":375,"context_line":"\treg-\u003evalid \u003d 1;"},{"line_number":376,"context_line":"\treturn ERROR_OK;"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"24886f4e_cf717100","line":373,"range":{"start_line":367,"start_character":1,"end_line":373,"end_character":2},"updated":"2022-04-27 17:06:23.000000000","message":"buf_cpy(buf, reg-\u003evalue, reg-\u003esize);\n\nand the size limit is no more necessary","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"635ef5f1f2010fb3090f01c8831fc7691f961797","unresolved":false,"context_lines":[{"line_number":364,"context_line":"\tif (target-\u003estate !\u003d TARGET_HALTED)"},{"line_number":365,"context_line":"\t\treturn ERROR_TARGET_NOT_HALTED;"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"\tif (reg-\u003esize \u003c\u003d 32) {"},{"line_number":368,"context_line":"\t\tuint32_t value \u003d buf_get_u32(buf, 0, reg-\u003esize);"},{"line_number":369,"context_line":"\t\tbuf_set_u32(reg-\u003evalue, 0, reg-\u003esize, value);"},{"line_number":370,"context_line":"\t} else if (reg-\u003esize \u003c\u003d 64) {"},{"line_number":371,"context_line":"\t\tuint64_t value \u003d buf_get_u64(buf, 0, reg-\u003esize);"},{"line_number":372,"context_line":"\t\tbuf_set_u64(reg-\u003evalue, 0, reg-\u003esize, value);"},{"line_number":373,"context_line":"\t}"},{"line_number":374,"context_line":"\treg-\u003edirty \u003d 1;"},{"line_number":375,"context_line":"\treg-\u003evalid \u003d 1;"},{"line_number":376,"context_line":"\treturn ERROR_OK;"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"ee29ecb7_64e542fe","line":373,"range":{"start_line":367,"start_character":1,"end_line":373,"end_character":2},"in_reply_to":"24886f4e_cf717100","updated":"2022-04-27 21:37:46.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":371,"context_line":"\t\tuint64_t value \u003d buf_get_u64(buf, 0, reg-\u003esize);"},{"line_number":372,"context_line":"\t\tbuf_set_u64(reg-\u003evalue, 0, reg-\u003esize, value);"},{"line_number":373,"context_line":"\t}"},{"line_number":374,"context_line":"\treg-\u003edirty \u003d 1;"},{"line_number":375,"context_line":"\treg-\u003evalid \u003d 1;"},{"line_number":376,"context_line":"\treturn ERROR_OK;"},{"line_number":377,"context_line":"}"},{"line_number":378,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"9dbf5a40_1b6097c5","line":375,"range":{"start_line":374,"start_character":1,"end_line":375,"end_character":16},"updated":"2022-04-27 17:06:23.000000000","message":"Use true for bool (search for all dirty/valid)","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"635ef5f1f2010fb3090f01c8831fc7691f961797","unresolved":false,"context_lines":[{"line_number":371,"context_line":"\t\tuint64_t value \u003d buf_get_u64(buf, 0, reg-\u003esize);"},{"line_number":372,"context_line":"\t\tbuf_set_u64(reg-\u003evalue, 0, reg-\u003esize, value);"},{"line_number":373,"context_line":"\t}"},{"line_number":374,"context_line":"\treg-\u003edirty \u003d 1;"},{"line_number":375,"context_line":"\treg-\u003evalid \u003d 1;"},{"line_number":376,"context_line":"\treturn ERROR_OK;"},{"line_number":377,"context_line":"}"},{"line_number":378,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"74ff4f33_5d4ac7b8","line":375,"range":{"start_line":374,"start_character":1,"end_line":375,"end_character":16},"in_reply_to":"9dbf5a40_1b6097c5","updated":"2022-04-27 21:37:46.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":675,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":676,"context_line":"\t\treturn res;"},{"line_number":677,"context_line":"\tif (!xtensa_dm_is_online(\u0026xtensa-\u003edbg_mod)) {"},{"line_number":678,"context_line":"\t\tLOG_DEBUG(\"OCD_ID \u003d %08x\", xtensa-\u003edbg_mod.device_id);"},{"line_number":679,"context_line":"\t\treturn ERROR_TARGET_FAILURE;"},{"line_number":680,"context_line":"\t}"},{"line_number":681,"context_line":"\tLOG_DEBUG(\"OCD_ID \u003d %08x\", xtensa-\u003edbg_mod.device_id);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"3966e152_ddca8ce5","line":678,"updated":"2022-04-27 17:06:23.000000000","message":"Add a reason of failure? Perhaps raise LOG level?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"635ef5f1f2010fb3090f01c8831fc7691f961797","unresolved":false,"context_lines":[{"line_number":675,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":676,"context_line":"\t\treturn res;"},{"line_number":677,"context_line":"\tif (!xtensa_dm_is_online(\u0026xtensa-\u003edbg_mod)) {"},{"line_number":678,"context_line":"\t\tLOG_DEBUG(\"OCD_ID \u003d %08x\", xtensa-\u003edbg_mod.device_id);"},{"line_number":679,"context_line":"\t\treturn ERROR_TARGET_FAILURE;"},{"line_number":680,"context_line":"\t}"},{"line_number":681,"context_line":"\tLOG_DEBUG(\"OCD_ID \u003d %08x\", xtensa-\u003edbg_mod.device_id);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"1314921a_0c53ecbc","line":678,"in_reply_to":"3966e152_ddca8ce5","updated":"2022-04-27 21:37:46.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":757,"context_line":"static inline void xtensa_reg_set_value(struct reg *reg, uint32_t value)"},{"line_number":758,"context_line":"{"},{"line_number":759,"context_line":"\tuint32_t reg_val \u003d value;"},{"line_number":760,"context_line":"\tbuf_cpy(\u0026reg_val, reg-\u003evalue, 32);"},{"line_number":761,"context_line":"\treg-\u003edirty \u003d 1;"},{"line_number":762,"context_line":"}"},{"line_number":763,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"f93a8bc2_492a4ae7","line":760,"range":{"start_line":760,"start_character":1,"end_line":760,"end_character":35},"updated":"2022-04-27 17:06:23.000000000","message":"Endianess!!\n\nUse buf_set_u32","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"635ef5f1f2010fb3090f01c8831fc7691f961797","unresolved":false,"context_lines":[{"line_number":757,"context_line":"static inline void xtensa_reg_set_value(struct reg *reg, uint32_t value)"},{"line_number":758,"context_line":"{"},{"line_number":759,"context_line":"\tuint32_t reg_val \u003d value;"},{"line_number":760,"context_line":"\tbuf_cpy(\u0026reg_val, reg-\u003evalue, 32);"},{"line_number":761,"context_line":"\treg-\u003edirty \u003d 1;"},{"line_number":762,"context_line":"}"},{"line_number":763,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"1d1e99d6_88562e3c","line":760,"range":{"start_line":760,"start_character":1,"end_line":760,"end_character":35},"in_reply_to":"f93a8bc2_492a4ae7","updated":"2022-04-27 21:37:46.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":887,"context_line":"\t\t\t\t\t\txtensa_regs[XT_REG_IDX_AR0 + i].reg_num));"},{"line_number":888,"context_line":"\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":889,"context_line":"\t\t\t\t\tregvals[XT_REG_IDX_AR0 + i + j]);"},{"line_number":890,"context_line":"\t\t\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":891,"context_line":"\t\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR,"},{"line_number":892,"context_line":"\t\t\t\t\t\tdsrs[XT_REG_IDX_AR0 + i + j]);"},{"line_number":893,"context_line":"\t\t\t}"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"257cb044_88736923","line":890,"updated":"2022-04-27 23:09:41.000000000","message":"Why is reading DSR done only at certain log levels?  It\u0027s safer to always read it so any exceptions can be reported/handled","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d8071e1774e088e24aea64b64a899c552df78865","unresolved":false,"context_lines":[{"line_number":887,"context_line":"\t\t\t\t\t\txtensa_regs[XT_REG_IDX_AR0 + i].reg_num));"},{"line_number":888,"context_line":"\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":889,"context_line":"\t\t\t\t\tregvals[XT_REG_IDX_AR0 + i + j]);"},{"line_number":890,"context_line":"\t\t\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":891,"context_line":"\t\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR,"},{"line_number":892,"context_line":"\t\t\t\t\t\tdsrs[XT_REG_IDX_AR0 + i + j]);"},{"line_number":893,"context_line":"\t\t\t}"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"ef05da37_2e3e18d3","line":890,"in_reply_to":"257cb044_88736923","updated":"2022-05-04 23:50:53.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":942,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_WSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":943,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, regvals[i]);"},{"line_number":944,"context_line":"\t\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":945,"context_line":"\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR, dsrs[i]);"},{"line_number":946,"context_line":"\t\t}"},{"line_number":947,"context_line":"\t}"},{"line_number":948,"context_line":"\t/* Ok, send the whole mess to the CPU. */"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"3ab02ae9_b5898084","line":945,"updated":"2022-04-27 23:09:41.000000000","message":"Why is reading DSR done only at certain log levels?  It\u0027s safer to always read it so any exceptions can be reported/handled","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"89c6301a9af1b72f4996e72bd5eb935154c1592b","unresolved":true,"context_lines":[{"line_number":942,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_WSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":943,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, regvals[i]);"},{"line_number":944,"context_line":"\t\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":945,"context_line":"\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR, dsrs[i]);"},{"line_number":946,"context_line":"\t\t}"},{"line_number":947,"context_line":"\t}"},{"line_number":948,"context_line":"\t/* Ok, send the whole mess to the CPU. */"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"0a8b28a6_874a9cc3","line":945,"in_reply_to":"02bdf0c8_57cb55dc","updated":"2022-05-06 15:21:00.000000000","message":"@Ian even though I removed the log_level checking for the DSR registers, we were intentionally reading DSRs only when debug output is enabled. This saves time for fetching registers and therefore stepping. If it is ok for you we prefer to keep it as is.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"bee60225fad22d298680f9648b4f9fa639481c38","unresolved":true,"context_lines":[{"line_number":942,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_WSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":943,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, regvals[i]);"},{"line_number":944,"context_line":"\t\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":945,"context_line":"\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR, dsrs[i]);"},{"line_number":946,"context_line":"\t\t}"},{"line_number":947,"context_line":"\t}"},{"line_number":948,"context_line":"\t/* Ok, send the whole mess to the CPU. */"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"5cc2d7a2_5080918c","line":945,"in_reply_to":"0a8b28a6_874a9cc3","updated":"2022-05-06 18:30:58.000000000","message":"Sure, that\u0027s fine with me for stepping, but it would be clearer to keep this enabled for the first time we first fetch registers after attaching.  Warning the user of exceptions would be especially useful when the OOCD config doesn\u0027t match the target config, or if invalid registers and/or addresses are inadvertently included (otherwise, the user will see junk register values instead of warnings/errors).  Perhaps we could have the best of both options?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d8071e1774e088e24aea64b64a899c552df78865","unresolved":false,"context_lines":[{"line_number":942,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_WSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":943,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, regvals[i]);"},{"line_number":944,"context_line":"\t\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":945,"context_line":"\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR, dsrs[i]);"},{"line_number":946,"context_line":"\t\t}"},{"line_number":947,"context_line":"\t}"},{"line_number":948,"context_line":"\t/* Ok, send the whole mess to the CPU. */"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"02bdf0c8_57cb55dc","line":945,"in_reply_to":"3ab02ae9_b5898084","updated":"2022-05-04 23:50:53.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"9ef426220b2825bca82a7441f0f92b7d48876b05","unresolved":true,"context_lines":[{"line_number":942,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_WSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":943,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, regvals[i]);"},{"line_number":944,"context_line":"\t\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":945,"context_line":"\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR, dsrs[i]);"},{"line_number":946,"context_line":"\t\t}"},{"line_number":947,"context_line":"\t}"},{"line_number":948,"context_line":"\t/* Ok, send the whole mess to the CPU. */"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"64edd451_a582dfa0","line":945,"in_reply_to":"5cc2d7a2_5080918c","updated":"2022-05-07 11:49:03.000000000","message":"As usually we have to set some compromise between the speed and error checking. Ian\u0027s proposal looks interesting. You may also release DSR checking as soon as the complete reg set has been once successfully read. I have no strong preference here, it\u0027s up to you Erhan.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":true,"context_lines":[{"line_number":942,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_WSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":943,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, regvals[i]);"},{"line_number":944,"context_line":"\t\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":945,"context_line":"\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR, dsrs[i]);"},{"line_number":946,"context_line":"\t\t}"},{"line_number":947,"context_line":"\t}"},{"line_number":948,"context_line":"\t/* Ok, send the whole mess to the CPU. */"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"99770c9c_86665890","line":945,"in_reply_to":"64edd451_a582dfa0","updated":"2022-05-09 13:20:40.000000000","message":"I introduced a new flag to keep the first fetch state. Please have a look. I am also OK with the better ideas.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"37434b98efa7d58524a9900b7be28e9557c20f4f","unresolved":true,"context_lines":[{"line_number":942,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_WSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":943,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, regvals[i]);"},{"line_number":944,"context_line":"\t\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":945,"context_line":"\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR, dsrs[i]);"},{"line_number":946,"context_line":"\t\t}"},{"line_number":947,"context_line":"\t}"},{"line_number":948,"context_line":"\t/* Ok, send the whole mess to the CPU. */"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"a65071c9_68460e9b","line":945,"in_reply_to":"99770c9c_86665890","updated":"2022-05-09 13:55:49.000000000","message":"Looks good","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"02a30207aeba054ad3aca8bd5e18c4fe50cc4d9c","unresolved":false,"context_lines":[{"line_number":942,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_WSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":943,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, regvals[i]);"},{"line_number":944,"context_line":"\t\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":945,"context_line":"\t\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR, dsrs[i]);"},{"line_number":946,"context_line":"\t\t}"},{"line_number":947,"context_line":"\t}"},{"line_number":948,"context_line":"\t/* Ok, send the whole mess to the CPU. */"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"e07f9574_e56a1f7f","line":945,"in_reply_to":"a65071c9_68460e9b","updated":"2022-05-09 17:30:34.000000000","message":"Thanks, that\u0027s great!","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":953,"context_line":"\t}"},{"line_number":954,"context_line":"\txtensa_core_status_check(target);"},{"line_number":955,"context_line":""},{"line_number":956,"context_line":"\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG)) {"},{"line_number":957,"context_line":"\t\t/* DSR checking: follows order in which registers are requested. */"},{"line_number":958,"context_line":"\t\tfor (i \u003d 0; i \u003c XT_NUM_REGS; i++) {"},{"line_number":959,"context_line":"\t\t\tif (xtensa_reg_is_readable(xtensa_regs[i].flags,"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"f71c2d62_80459a58","line":956,"updated":"2022-04-27 23:09:41.000000000","message":"Recommend removing log level check so that the error on line 966 gets reported regardless of log level, as it could be indicative of a config mismatch or other legitimate failure.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d8071e1774e088e24aea64b64a899c552df78865","unresolved":false,"context_lines":[{"line_number":953,"context_line":"\t}"},{"line_number":954,"context_line":"\txtensa_core_status_check(target);"},{"line_number":955,"context_line":""},{"line_number":956,"context_line":"\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG)) {"},{"line_number":957,"context_line":"\t\t/* DSR checking: follows order in which registers are requested. */"},{"line_number":958,"context_line":"\t\tfor (i \u003d 0; i \u003c XT_NUM_REGS; i++) {"},{"line_number":959,"context_line":"\t\t\tif (xtensa_reg_is_readable(xtensa_regs[i].flags,"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"15dc9e69_436b7d77","line":956,"in_reply_to":"f71c2d62_80459a58","updated":"2022-05-04 23:50:53.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":1001,"context_line":"\t\t\t\t\tbuf_get_u32(regvals[xtensa_regs[i].reg_num], 0, 32);"},{"line_number":1002,"context_line":"\t\t\t} else"},{"line_number":1003,"context_line":"\t\t\t\tregval \u003d buf_get_u32(regvals[i], 0, 32);"},{"line_number":1004,"context_line":"\t\t\txtensa_reg_set(target, i, regval);"},{"line_number":1005,"context_line":"\t\t\treg_list[i].valid \u003d 1;"},{"line_number":1006,"context_line":"\t\t\treg_list[i].dirty \u003d 0;\t/* always do this _after_ xtensa_reg_set! */"},{"line_number":1007,"context_line":"\t\t} else"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"1ac05c29_6c58d064","line":1004,"range":{"start_line":1004,"start_character":3,"end_line":1004,"end_character":17},"updated":"2022-04-27 17:06:23.000000000","message":"Don\u0027t use xtensa_reg_set() for both caching the fetched registers and changing the register in the cache.\nHere I suggest to use just buf_cpy(regvals[], reg_list[i].value, reg_list[i].size) instead of buf_get_u32(regvals[]...) followed by xtensa_reg_set().\nAlso setting dirty bit in xtensa_reg_set() and resetting it in turn doesn\u0027t look as a good practice.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"a8d6b9067e33f78a101f4f6d56a41a9b7af951c9","unresolved":false,"context_lines":[{"line_number":1001,"context_line":"\t\t\t\t\tbuf_get_u32(regvals[xtensa_regs[i].reg_num], 0, 32);"},{"line_number":1002,"context_line":"\t\t\t} else"},{"line_number":1003,"context_line":"\t\t\t\tregval \u003d buf_get_u32(regvals[i], 0, 32);"},{"line_number":1004,"context_line":"\t\t\txtensa_reg_set(target, i, regval);"},{"line_number":1005,"context_line":"\t\t\treg_list[i].valid \u003d 1;"},{"line_number":1006,"context_line":"\t\t\treg_list[i].dirty \u003d 0;\t/* always do this _after_ xtensa_reg_set! */"},{"line_number":1007,"context_line":"\t\t} else"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"ee9e0a80_a0c44104","line":1004,"range":{"start_line":1004,"start_character":3,"end_line":1004,"end_character":17},"in_reply_to":"1ac05c29_6c58d064","updated":"2022-05-06 11:17:04.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":1035,"context_line":"\t\txtensa_queue_exec_ins(xtensa, XT_INS_WSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1036,"context_line":"\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, regvals[i]);"},{"line_number":1037,"context_line":"\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":1038,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR, dsrs[i]);"},{"line_number":1039,"context_line":"\t}"},{"line_number":1040,"context_line":"\t/* Ok, send the whole mess to the CPU. */"},{"line_number":1041,"context_line":"\tres \u003d jtag_execute_queue();"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"95a0bb02_6036ae55","line":1038,"updated":"2022-04-27 23:09:41.000000000","message":"Same recommendation as above re: reading DSR regardless of log level","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d8071e1774e088e24aea64b64a899c552df78865","unresolved":false,"context_lines":[{"line_number":1035,"context_line":"\t\txtensa_queue_exec_ins(xtensa, XT_INS_WSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1036,"context_line":"\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, regvals[i]);"},{"line_number":1037,"context_line":"\t\tif (LOG_LEVEL_IS(LOG_LVL_DEBUG))"},{"line_number":1038,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DSR, dsrs[i]);"},{"line_number":1039,"context_line":"\t}"},{"line_number":1040,"context_line":"\t/* Ok, send the whole mess to the CPU. */"},{"line_number":1041,"context_line":"\tres \u003d jtag_execute_queue();"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"c097b62e_eca31132","line":1038,"in_reply_to":"95a0bb02_6036ae55","updated":"2022-05-04 23:50:53.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":1087,"context_line":""},{"line_number":1088,"context_line":"\tLOG_DEBUG(\"reg_class\u003d%i, num_regs\u003d%d\", reg_class, *reg_list_size);"},{"line_number":1089,"context_line":""},{"line_number":1090,"context_line":"\t*reg_list \u003d malloc((*reg_list_size) * sizeof(struct reg *));"},{"line_number":1091,"context_line":"\tif (!*reg_list)"},{"line_number":1092,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1093,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"c4b22a4e_c1003170","line":1090,"updated":"2022-04-27 23:09:41.000000000","message":"Consider calloc() instead of malloc()?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":1087,"context_line":""},{"line_number":1088,"context_line":"\tLOG_DEBUG(\"reg_class\u003d%i, num_regs\u003d%d\", reg_class, *reg_list_size);"},{"line_number":1089,"context_line":""},{"line_number":1090,"context_line":"\t*reg_list \u003d malloc((*reg_list_size) * sizeof(struct reg *));"},{"line_number":1091,"context_line":"\tif (!*reg_list)"},{"line_number":1092,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1093,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"9b57bc5c_8df08327","line":1090,"in_reply_to":"c4b22a4e_c1003170","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":1251,"context_line":"\telse"},{"line_number":1252,"context_line":"\t\ttarget-\u003estate \u003d TARGET_DEBUG_RUNNING;"},{"line_number":1253,"context_line":""},{"line_number":1254,"context_line":"\ttarget_call_event_callbacks(target, TARGET_EVENT_RESUMED);"},{"line_number":1255,"context_line":"\treturn res;"},{"line_number":1256,"context_line":"}"},{"line_number":1257,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"1cfe8387_3ee233ab","line":1254,"updated":"2022-04-27 23:09:41.000000000","message":"Return code from target_call_event_callbacks() should be returned up the callstack","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":1251,"context_line":"\telse"},{"line_number":1252,"context_line":"\t\ttarget-\u003estate \u003d TARGET_DEBUG_RUNNING;"},{"line_number":1253,"context_line":""},{"line_number":1254,"context_line":"\ttarget_call_event_callbacks(target, TARGET_EVENT_RESUMED);"},{"line_number":1255,"context_line":"\treturn res;"},{"line_number":1256,"context_line":"}"},{"line_number":1257,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"ae293282_8d14b46c","line":1254,"in_reply_to":"1cfe8387_3ee233ab","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":1360,"context_line":"\t\t/* We stopped due to a watchpoint. We can\u0027t just resume executing the instruction again because"},{"line_number":1361,"context_line":"\t\t * that would trigger the watchpoint again. To fix this, we remove watchpoints,single-step and"},{"line_number":1362,"context_line":"\t\t * re-enable the watchpoint. */"},{"line_number":1363,"context_line":"\t\tLOG_DEBUG("},{"line_number":1364,"context_line":"\t\t\t\"%s: Single-stepping to get past instruction that triggered the watchpoint...\","},{"line_number":1365,"context_line":"\t\t\ttarget_name(target));"},{"line_number":1366,"context_line":"\t\txtensa_reg_set(target, XT_REG_IDX_DEBUGCAUSE, 0);\t/*so we don\u0027t recurse into"},{"line_number":1367,"context_line":"\t\t\t\t\t\t\t\t\t * the same routine */"},{"line_number":1368,"context_line":"\t\txtensa-\u003ecore_cache-\u003ereg_list[XT_REG_IDX_DEBUGCAUSE].dirty \u003d 0;"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"176c6069_c6f92ee2","line":1365,"range":{"start_line":1363,"start_character":2,"end_line":1365,"end_character":22},"updated":"2022-04-27 17:06:23.000000000","message":"Please use LOG_TARGET_xxxx everywhere instead of using target_name(target) as a parameter.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"635ef5f1f2010fb3090f01c8831fc7691f961797","unresolved":false,"context_lines":[{"line_number":1360,"context_line":"\t\t/* We stopped due to a watchpoint. We can\u0027t just resume executing the instruction again because"},{"line_number":1361,"context_line":"\t\t * that would trigger the watchpoint again. To fix this, we remove watchpoints,single-step and"},{"line_number":1362,"context_line":"\t\t * re-enable the watchpoint. */"},{"line_number":1363,"context_line":"\t\tLOG_DEBUG("},{"line_number":1364,"context_line":"\t\t\t\"%s: Single-stepping to get past instruction that triggered the watchpoint...\","},{"line_number":1365,"context_line":"\t\t\ttarget_name(target));"},{"line_number":1366,"context_line":"\t\txtensa_reg_set(target, XT_REG_IDX_DEBUGCAUSE, 0);\t/*so we don\u0027t recurse into"},{"line_number":1367,"context_line":"\t\t\t\t\t\t\t\t\t * the same routine */"},{"line_number":1368,"context_line":"\t\txtensa-\u003ecore_cache-\u003ereg_list[XT_REG_IDX_DEBUGCAUSE].dirty \u003d 0;"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"5f1343d2_2428ae1a","line":1365,"range":{"start_line":1363,"start_character":2,"end_line":1365,"end_character":22},"in_reply_to":"176c6069_c6f92ee2","updated":"2022-04-27 21:37:46.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"b1f9df11_d7b99849","line":1714,"updated":"2022-04-27 23:09:41.000000000","message":"Check \"res\" here for errors; will be overwritten on 1731.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":1696,"context_line":""},{"line_number":1697,"context_line":"\t/* If we\u0027re using a temp aligned buffer, we need to fill the head and/or tail bit of it. */"},{"line_number":1698,"context_line":"\tif (albuff !\u003d buffer) {"},{"line_number":1699,"context_line":"\t\t/* See if we need to read the first and/or last word. */"},{"line_number":1700,"context_line":"\t\tif (address \u0026 3) {"},{"line_number":1701,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrstart_al);"},{"line_number":1702,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1703,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1704,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, \u0026albuff[0]);"},{"line_number":1705,"context_line":"\t\t}"},{"line_number":1706,"context_line":"\t\tif ((address + (size*count)) \u0026 3) {"},{"line_number":1707,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrend_al-4);"},{"line_number":1708,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1709,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1710,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"43fd59ad_49eb3559","line":1714,"range":{"start_line":1699,"start_character":2,"end_line":1714,"end_character":29},"updated":"2022-04-27 17:06:23.000000000","message":"This de facto read-modify-write operation for handling unaligned write might take up to twice longer than an aligned write. Not sure how often unaligned write takes place. Wouldn\u0027t be better to load the first/last word to XT_REG_A4 and execute appropriate XT_INS_S16I()/XT_INS_S8I(XT_REG_A3, XT_REG_A4, 0)?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"12e47d0c_e5e5b2ca","line":1714,"in_reply_to":"210d988b_405573b3","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"9ef426220b2825bca82a7441f0f92b7d48876b05","unresolved":true,"context_lines":[{"line_number":1696,"context_line":""},{"line_number":1697,"context_line":"\t/* If we\u0027re using a temp aligned buffer, we need to fill the head and/or tail bit of it. */"},{"line_number":1698,"context_line":"\tif (albuff !\u003d buffer) {"},{"line_number":1699,"context_line":"\t\t/* See if we need to read the first and/or last word. */"},{"line_number":1700,"context_line":"\t\tif (address \u0026 3) {"},{"line_number":1701,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrstart_al);"},{"line_number":1702,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1703,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1704,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, \u0026albuff[0]);"},{"line_number":1705,"context_line":"\t\t}"},{"line_number":1706,"context_line":"\t\tif ((address + (size*count)) \u0026 3) {"},{"line_number":1707,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrend_al-4);"},{"line_number":1708,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1709,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1710,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"bce3528e_2fe64233","line":1714,"range":{"start_line":1699,"start_character":2,"end_line":1714,"end_character":29},"in_reply_to":"28b6df61_495af6f8","updated":"2022-05-07 11:49:03.000000000","message":"Ok with me","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":1696,"context_line":""},{"line_number":1697,"context_line":"\t/* If we\u0027re using a temp aligned buffer, we need to fill the head and/or tail bit of it. */"},{"line_number":1698,"context_line":"\tif (albuff !\u003d buffer) {"},{"line_number":1699,"context_line":"\t\t/* See if we need to read the first and/or last word. */"},{"line_number":1700,"context_line":"\t\tif (address \u0026 3) {"},{"line_number":1701,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrstart_al);"},{"line_number":1702,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1703,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1704,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, \u0026albuff[0]);"},{"line_number":1705,"context_line":"\t\t}"},{"line_number":1706,"context_line":"\t\tif ((address + (size*count)) \u0026 3) {"},{"line_number":1707,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrend_al-4);"},{"line_number":1708,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1709,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1710,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"de37c730_33072906","line":1714,"range":{"start_line":1699,"start_character":2,"end_line":1714,"end_character":29},"in_reply_to":"43fd59ad_49eb3559","updated":"2022-04-27 23:09:41.000000000","message":"depending on the destination memory type, byte enables may not be present (e.g. IRAM), in which case 32-bit writes would be required.  Since this is at most 8 bytes, the extra time taken is negligible for longer buffer sizes.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"bee60225fad22d298680f9648b4f9fa639481c38","unresolved":true,"context_lines":[{"line_number":1696,"context_line":""},{"line_number":1697,"context_line":"\t/* If we\u0027re using a temp aligned buffer, we need to fill the head and/or tail bit of it. */"},{"line_number":1698,"context_line":"\tif (albuff !\u003d buffer) {"},{"line_number":1699,"context_line":"\t\t/* See if we need to read the first and/or last word. */"},{"line_number":1700,"context_line":"\t\tif (address \u0026 3) {"},{"line_number":1701,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrstart_al);"},{"line_number":1702,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1703,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1704,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, \u0026albuff[0]);"},{"line_number":1705,"context_line":"\t\t}"},{"line_number":1706,"context_line":"\t\tif ((address + (size*count)) \u0026 3) {"},{"line_number":1707,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrend_al-4);"},{"line_number":1708,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1709,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1710,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"28b6df61_495af6f8","line":1714,"range":{"start_line":1699,"start_character":2,"end_line":1714,"end_character":29},"in_reply_to":"8759934b_d6d0ad8a","updated":"2022-05-06 18:30:58.000000000","message":"I\u0027m fine with keeping memory checking and leaving this as-is.  Agree that it is especially useful during early development.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"4f25a020402e9ac846b82ad0cc58c7c13dc94585","unresolved":true,"context_lines":[{"line_number":1696,"context_line":""},{"line_number":1697,"context_line":"\t/* If we\u0027re using a temp aligned buffer, we need to fill the head and/or tail bit of it. */"},{"line_number":1698,"context_line":"\tif (albuff !\u003d buffer) {"},{"line_number":1699,"context_line":"\t\t/* See if we need to read the first and/or last word. */"},{"line_number":1700,"context_line":"\t\tif (address \u0026 3) {"},{"line_number":1701,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrstart_al);"},{"line_number":1702,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1703,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1704,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, \u0026albuff[0]);"},{"line_number":1705,"context_line":"\t\t}"},{"line_number":1706,"context_line":"\t\tif ((address + (size*count)) \u0026 3) {"},{"line_number":1707,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrend_al-4);"},{"line_number":1708,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1709,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1710,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"965395df_fec0d87b","line":1714,"range":{"start_line":1699,"start_character":2,"end_line":1714,"end_character":29},"in_reply_to":"8b2a73ba_bc6fb7b7","updated":"2022-05-05 16:09:34.000000000","message":"\u003e Does the Xtensa architecture provide some reasonable feedback in the case of the debug memory access failure? \n\nThe exact behavior is implementation-dependent.  In many cases, an exception is generated and gracefully handled by the target/XDM layers, but certain types of invalid memory requests can hang an internal bus, possibly requiring a power-cycle depending on memory architecture/board design decisions.  @erhan could this be the motivation for permissive mode?  I\u0027m in favor of keeping permissive mode (it has been useful during my testing), but a possible compromise might be to have it disabled by default?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"334937c5b3afdf94403e5e43b11fd29563ce989c","unresolved":true,"context_lines":[{"line_number":1696,"context_line":""},{"line_number":1697,"context_line":"\t/* If we\u0027re using a temp aligned buffer, we need to fill the head and/or tail bit of it. */"},{"line_number":1698,"context_line":"\tif (albuff !\u003d buffer) {"},{"line_number":1699,"context_line":"\t\t/* See if we need to read the first and/or last word. */"},{"line_number":1700,"context_line":"\t\tif (address \u0026 3) {"},{"line_number":1701,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrstart_al);"},{"line_number":1702,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1703,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1704,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, \u0026albuff[0]);"},{"line_number":1705,"context_line":"\t\t}"},{"line_number":1706,"context_line":"\t\tif ((address + (size*count)) \u0026 3) {"},{"line_number":1707,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrend_al-4);"},{"line_number":1708,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1709,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1710,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"8759934b_d6d0ad8a","line":1714,"range":{"start_line":1699,"start_character":2,"end_line":1714,"end_character":29},"in_reply_to":"965395df_fec0d87b","updated":"2022-05-05 20:47:59.000000000","message":"By default our Xtensa implementation checks that memory accesses is valid or not. To do so, we use configured memory regions for chip and their permissions. This simplifies finding incorrect memory access made by OpenOCD code or user.\npermissive_mode is mostly in use at early development stage for the new chips. As long as we have the correct memory region, we do not need to enable it. \n\n@Ian, if you mean skipping memory check by default, I don\u0027t suggest it since this is for the sanity check to catch problems which could be hard to detect.\nFor example, memory check is useful for the semihosting I/O. User always can send a wrong parameter by mistake and checking the address before accessing the memory allow us to return with proper error code.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"3a23ebdeff4a1e27e5e582968b0f788bbdab70ca","unresolved":true,"context_lines":[{"line_number":1696,"context_line":""},{"line_number":1697,"context_line":"\t/* If we\u0027re using a temp aligned buffer, we need to fill the head and/or tail bit of it. */"},{"line_number":1698,"context_line":"\tif (albuff !\u003d buffer) {"},{"line_number":1699,"context_line":"\t\t/* See if we need to read the first and/or last word. */"},{"line_number":1700,"context_line":"\t\tif (address \u0026 3) {"},{"line_number":1701,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrstart_al);"},{"line_number":1702,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1703,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1704,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, \u0026albuff[0]);"},{"line_number":1705,"context_line":"\t\t}"},{"line_number":1706,"context_line":"\t\tif ((address + (size*count)) \u0026 3) {"},{"line_number":1707,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrend_al-4);"},{"line_number":1708,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1709,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1710,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"8b2a73ba_bc6fb7b7","line":1714,"range":{"start_line":1699,"start_character":2,"end_line":1714,"end_character":29},"in_reply_to":"98d75992_cfa1c499","updated":"2022-04-29 11:22:18.000000000","message":"Ian, thanks for mentioning it.\n\n\u003e but xtensa_memory_op_validate_range() checks for memory type and should filter out any peripheral / MMIO address ranges.\n\nI\u0027m not much familiar with Xtensa nor ESP, so I might be wrong.\nI checked the code and xtensa_memory_op_validate_range() is called only if permissive_mode is not set. The permissive_mode is another questionable feature.\nOpenOCD is a debugging tool and it should expose the target memory as is (as far as possible). The user should know what he is doing. Who needs non-permissive mode then? Does the Xtensa architecture provide some reasonable feedback in the case of the debug memory access failure? If so I would prefer the correct error message as a result of the failed access over preliminary checking memory regions and bailing the access before it starts. Also reading/writing MMIO by a debug tool is normally allowed for most of targets, so why should be filtered out for Xtensa? Fortunately the code looks like both DR REGS and SYS RAM are allowed, does all peripheral regs fit into these regions?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"3a23ebdeff4a1e27e5e582968b0f788bbdab70ca","unresolved":true,"context_lines":[{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"210d988b_405573b3","line":1714,"in_reply_to":"b1f9df11_d7b99849","updated":"2022-04-29 11:22:18.000000000","message":"Good catch, Ian. Clang static analyser emits a warning too.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":1696,"context_line":""},{"line_number":1697,"context_line":"\t/* If we\u0027re using a temp aligned buffer, we need to fill the head and/or tail bit of it. */"},{"line_number":1698,"context_line":"\tif (albuff !\u003d buffer) {"},{"line_number":1699,"context_line":"\t\t/* See if we need to read the first and/or last word. */"},{"line_number":1700,"context_line":"\t\tif (address \u0026 3) {"},{"line_number":1701,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrstart_al);"},{"line_number":1702,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1703,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1704,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, \u0026albuff[0]);"},{"line_number":1705,"context_line":"\t\t}"},{"line_number":1706,"context_line":"\t\tif ((address + (size*count)) \u0026 3) {"},{"line_number":1707,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrend_al-4);"},{"line_number":1708,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1709,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1710,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"13bb453c_fd713ba8","line":1714,"range":{"start_line":1699,"start_character":2,"end_line":1714,"end_character":29},"in_reply_to":"bce3528e_2fe64233","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"5eeadd88b2add91007022a4ae45e442fe66af570","unresolved":true,"context_lines":[{"line_number":1696,"context_line":""},{"line_number":1697,"context_line":"\t/* If we\u0027re using a temp aligned buffer, we need to fill the head and/or tail bit of it. */"},{"line_number":1698,"context_line":"\tif (albuff !\u003d buffer) {"},{"line_number":1699,"context_line":"\t\t/* See if we need to read the first and/or last word. */"},{"line_number":1700,"context_line":"\t\tif (address \u0026 3) {"},{"line_number":1701,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrstart_al);"},{"line_number":1702,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1703,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1704,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, \u0026albuff[0]);"},{"line_number":1705,"context_line":"\t\t}"},{"line_number":1706,"context_line":"\t\tif ((address + (size*count)) \u0026 3) {"},{"line_number":1707,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrend_al-4);"},{"line_number":1708,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1709,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1710,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"e2b996ff_a4a75aa0","line":1714,"range":{"start_line":1699,"start_character":2,"end_line":1714,"end_character":29},"in_reply_to":"de37c730_33072906","updated":"2022-04-28 05:43:33.000000000","message":"\u003e byte enables may not be present (e.g. IRAM)...\n\nIf this is the case, should we pretend that unaligned writes are supported at all? Writing more than really requested might make other problems (mem-mapped peripherals etc...)","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"19e6d4afdf3511c2efb61f453cc09b74fe14081e","unresolved":true,"context_lines":[{"line_number":1696,"context_line":""},{"line_number":1697,"context_line":"\t/* If we\u0027re using a temp aligned buffer, we need to fill the head and/or tail bit of it. */"},{"line_number":1698,"context_line":"\tif (albuff !\u003d buffer) {"},{"line_number":1699,"context_line":"\t\t/* See if we need to read the first and/or last word. */"},{"line_number":1700,"context_line":"\t\tif (address \u0026 3) {"},{"line_number":1701,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrstart_al);"},{"line_number":1702,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1703,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1704,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR, \u0026albuff[0]);"},{"line_number":1705,"context_line":"\t\t}"},{"line_number":1706,"context_line":"\t\tif ((address + (size*count)) \u0026 3) {"},{"line_number":1707,"context_line":"\t\t\txtensa_queue_dbg_reg_write(xtensa, NARADR_DDR, addrend_al-4);"},{"line_number":1708,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RSR(XT_SR_DDR, XT_REG_A3));"},{"line_number":1709,"context_line":"\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_LDDR32P(XT_REG_A3));"},{"line_number":1710,"context_line":"\t\t\txtensa_queue_dbg_reg_read(xtensa, NARADR_DDR,"},{"line_number":1711,"context_line":"\t\t\t\t\u0026albuff[addrend_al-addrstart_al - 4]);"},{"line_number":1712,"context_line":"\t\t}"},{"line_number":1713,"context_line":"\t\t/* Grab bytes */"},{"line_number":1714,"context_line":"\t\tres \u003d jtag_execute_queue();"},{"line_number":1715,"context_line":"\t\txtensa_core_status_check(target);"},{"line_number":1716,"context_line":"\t\t/* Copy data to be written into the aligned buffer */"},{"line_number":1717,"context_line":"\t\tmemcpy(\u0026albuff[address \u0026 3], buffer, size*count);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"98d75992_cfa1c499","line":1714,"range":{"start_line":1699,"start_character":2,"end_line":1714,"end_character":29},"in_reply_to":"e2b996ff_a4a75aa0","updated":"2022-04-28 13:07:06.000000000","message":"Good point... but I don\u0027t think that applies here.  Please correct me if I\u0027m wrong, but xtensa_memory_op_validate_range() checks for memory type and should filter out any peripheral / MMIO address ranges.  IIRC, I tested this on multiple memory types/alignments/sizes and didn\u0027t have any corruption problems.  \n\nWhile an optimization could conceivably issue 8/16 bit operations (for SRAM/DRAM) instead, it\u0027s likely to require more inserted instructions for some cases.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":1873,"context_line":"\tstruct breakpoint *breakpoint,"},{"line_number":1874,"context_line":"\tstruct xtensa_sw_breakpoint *sw_bp)"},{"line_number":1875,"context_line":"{"},{"line_number":1876,"context_line":"\tunion {"},{"line_number":1877,"context_line":"\t\tuint32_t d32;"},{"line_number":1878,"context_line":"\t\tuint8_t d8[4];"},{"line_number":1879,"context_line":"\t} break_insn;"},{"line_number":1880,"context_line":""},{"line_number":1881,"context_line":"\tint ret \u003d target_read_buffer(target, breakpoint-\u003eaddress, XT_ISNS_SZ_MAX, break_insn.d8);"},{"line_number":1882,"context_line":"\tif (ret !\u003d ERROR_OK) {"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"105da79a_21f489d6","line":1879,"range":{"start_line":1876,"start_character":1,"end_line":1879,"end_character":14},"updated":"2022-04-27 17:06:23.000000000","message":"Endianess mismatch!","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"9d2ca2adca301cdbd4d79de722af5337849c20fa","unresolved":false,"context_lines":[{"line_number":1873,"context_line":"\tstruct breakpoint *breakpoint,"},{"line_number":1874,"context_line":"\tstruct xtensa_sw_breakpoint *sw_bp)"},{"line_number":1875,"context_line":"{"},{"line_number":1876,"context_line":"\tunion {"},{"line_number":1877,"context_line":"\t\tuint32_t d32;"},{"line_number":1878,"context_line":"\t\tuint8_t d8[4];"},{"line_number":1879,"context_line":"\t} break_insn;"},{"line_number":1880,"context_line":""},{"line_number":1881,"context_line":"\tint ret \u003d target_read_buffer(target, breakpoint-\u003eaddress, XT_ISNS_SZ_MAX, break_insn.d8);"},{"line_number":1882,"context_line":"\tif (ret !\u003d ERROR_OK) {"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"01edded8_de4c9185","line":1879,"range":{"start_line":1876,"start_character":1,"end_line":1879,"end_character":14},"in_reply_to":"105da79a_21f489d6","updated":"2022-05-05 12:32:05.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":1944,"context_line":"\t\t\tbreak;"},{"line_number":1945,"context_line":"\t}"},{"line_number":1946,"context_line":"\tif (slot \u003d\u003d xtensa-\u003ecore_config-\u003edebug.ibreaks_num) {"},{"line_number":1947,"context_line":"\t\tLOG_DEBUG(\"%s: No free slots to add HW breakpoint!\", target_name(target));"},{"line_number":1948,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1949,"context_line":"\t}"},{"line_number":1950,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"42284d21_0a640247","line":1947,"updated":"2022-04-27 23:09:41.000000000","message":"Perhaps bump to LOG_WARNING()?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"7713d672cf3fc26ac93b872e1249511030602ccb","unresolved":true,"context_lines":[{"line_number":1944,"context_line":"\t\t\tbreak;"},{"line_number":1945,"context_line":"\t}"},{"line_number":1946,"context_line":"\tif (slot \u003d\u003d xtensa-\u003ecore_config-\u003edebug.ibreaks_num) {"},{"line_number":1947,"context_line":"\t\tLOG_DEBUG(\"%s: No free slots to add HW breakpoint!\", target_name(target));"},{"line_number":1948,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1949,"context_line":"\t}"},{"line_number":1950,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"bf3fd07d_ae21eacf","line":1947,"in_reply_to":"0166db92_2a27ca82","updated":"2022-05-05 11:10:01.000000000","message":"In this patch we do not support flash breakpoints yet. Normally this error code tells us, \"there is no hwbps slot, please switch to the flash breakpoints\" So in the end we are adding a breakpoint. \nBut for this patch, OK, I can print an error.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":true,"context_lines":[{"line_number":1944,"context_line":"\t\t\tbreak;"},{"line_number":1945,"context_line":"\t}"},{"line_number":1946,"context_line":"\tif (slot \u003d\u003d xtensa-\u003ecore_config-\u003edebug.ibreaks_num) {"},{"line_number":1947,"context_line":"\t\tLOG_DEBUG(\"%s: No free slots to add HW breakpoint!\", target_name(target));"},{"line_number":1948,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1949,"context_line":"\t}"},{"line_number":1950,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"4e864570_462a03d0","line":1947,"in_reply_to":"42284d21_0a640247","updated":"2022-05-04 21:18:43.000000000","message":"Considering limited hw breakpoint count, users most probably might have more than 2 bps so we didn\u0027t want to expose warning messages for each set/clear","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"5250ea08e8f09765059607e9171f836c5d90b63c","unresolved":true,"context_lines":[{"line_number":1944,"context_line":"\t\t\tbreak;"},{"line_number":1945,"context_line":"\t}"},{"line_number":1946,"context_line":"\tif (slot \u003d\u003d xtensa-\u003ecore_config-\u003edebug.ibreaks_num) {"},{"line_number":1947,"context_line":"\t\tLOG_DEBUG(\"%s: No free slots to add HW breakpoint!\", target_name(target));"},{"line_number":1948,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1949,"context_line":"\t}"},{"line_number":1950,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"0166db92_2a27ca82","line":1947,"in_reply_to":"4e864570_462a03d0","updated":"2022-05-05 06:46:04.000000000","message":"User likely wants to set more however he actually can set only 2 hw bps.\nOpenOCD refuses supernumerary bp setting with message\n can\u0027t add breakpoint: resource not available\n\nOther targets usually output an additional LOG_ERROR but IMO the base message is sufficient.\ngdb does not send vCont packet when bp setting return error","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"9d2ca2adca301cdbd4d79de722af5337849c20fa","unresolved":false,"context_lines":[{"line_number":1944,"context_line":"\t\t\tbreak;"},{"line_number":1945,"context_line":"\t}"},{"line_number":1946,"context_line":"\tif (slot \u003d\u003d xtensa-\u003ecore_config-\u003edebug.ibreaks_num) {"},{"line_number":1947,"context_line":"\t\tLOG_DEBUG(\"%s: No free slots to add HW breakpoint!\", target_name(target));"},{"line_number":1948,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1949,"context_line":"\t}"},{"line_number":1950,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"0216b7c6_d09fa0b4","line":1947,"in_reply_to":"bf3fd07d_ae21eacf","updated":"2022-05-05 12:32:05.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"9d2ca2adca301cdbd4d79de722af5337849c20fa","unresolved":false,"context_lines":[{"line_number":1944,"context_line":"\t\t\tbreak;"},{"line_number":1945,"context_line":"\t}"},{"line_number":1946,"context_line":"\tif (slot \u003d\u003d xtensa-\u003ecore_config-\u003edebug.ibreaks_num) {"},{"line_number":1947,"context_line":"\t\tLOG_DEBUG(\"%s: No free slots to add HW breakpoint!\", target_name(target));"},{"line_number":1948,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1949,"context_line":"\t}"},{"line_number":1950,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"22f8f6f9_0d28d7ab","line":1947,"in_reply_to":"bf3fd07d_ae21eacf","updated":"2022-05-05 12:32:05.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":1992,"context_line":"\t\t\tbreak;"},{"line_number":1993,"context_line":"\t}"},{"line_number":1994,"context_line":"\tif (slot \u003d\u003d xtensa-\u003ecore_config-\u003edebug.ibreaks_num) {"},{"line_number":1995,"context_line":"\t\tLOG_DEBUG(\"%s: HW breakpoint not found!\", target_name(target));"},{"line_number":1996,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1997,"context_line":"\t}"},{"line_number":1998,"context_line":"\txtensa-\u003ehw_brps[slot] \u003d NULL;"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"ea136a87_39538ba0","line":1995,"updated":"2022-04-27 23:09:41.000000000","message":"Perhaps bump to LOG_WARNING()?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"9d2ca2adca301cdbd4d79de722af5337849c20fa","unresolved":false,"context_lines":[{"line_number":1992,"context_line":"\t\t\tbreak;"},{"line_number":1993,"context_line":"\t}"},{"line_number":1994,"context_line":"\tif (slot \u003d\u003d xtensa-\u003ecore_config-\u003edebug.ibreaks_num) {"},{"line_number":1995,"context_line":"\t\tLOG_DEBUG(\"%s: HW breakpoint not found!\", target_name(target));"},{"line_number":1996,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1997,"context_line":"\t}"},{"line_number":1998,"context_line":"\txtensa-\u003ehw_brps[slot] \u003d NULL;"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"98e89448_e0f70ac0","line":1995,"in_reply_to":"6f09e4b2_362c02e0","updated":"2022-05-05 12:32:05.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":true,"context_lines":[{"line_number":1992,"context_line":"\t\t\tbreak;"},{"line_number":1993,"context_line":"\t}"},{"line_number":1994,"context_line":"\tif (slot \u003d\u003d xtensa-\u003ecore_config-\u003edebug.ibreaks_num) {"},{"line_number":1995,"context_line":"\t\tLOG_DEBUG(\"%s: HW breakpoint not found!\", target_name(target));"},{"line_number":1996,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1997,"context_line":"\t}"},{"line_number":1998,"context_line":"\txtensa-\u003ehw_brps[slot] \u003d NULL;"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"6f09e4b2_362c02e0","line":1995,"in_reply_to":"ea136a87_39538ba0","updated":"2022-05-04 21:18:43.000000000","message":"Same as above.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":2176,"context_line":"\t}"},{"line_number":2177,"context_line":""},{"line_number":2178,"context_line":"\txtensa-\u003ecore_cache \u003d reg_cache;"},{"line_number":2179,"context_line":"\t(*cache_p) \u003d reg_cache;"},{"line_number":2180,"context_line":"}"},{"line_number":2181,"context_line":""},{"line_number":2182,"context_line":"int xtensa_handle_target_event(struct target *target, enum target_event event,"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"18d143fd_33f7b010","line":2179,"updated":"2022-04-27 23:09:41.000000000","message":"consider null-pointer check?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d8071e1774e088e24aea64b64a899c552df78865","unresolved":false,"context_lines":[{"line_number":2176,"context_line":"\t}"},{"line_number":2177,"context_line":""},{"line_number":2178,"context_line":"\txtensa-\u003ecore_cache \u003d reg_cache;"},{"line_number":2179,"context_line":"\t(*cache_p) \u003d reg_cache;"},{"line_number":2180,"context_line":"}"},{"line_number":2181,"context_line":""},{"line_number":2182,"context_line":"int xtensa_handle_target_event(struct target *target, enum target_event event,"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"02289169_fabc8300","line":2179,"in_reply_to":"18d143fd_33f7b010","updated":"2022-05-04 23:50:53.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":2304,"context_line":"\tif (CMD_ARGC !\u003d 1)"},{"line_number":2305,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":2306,"context_line":""},{"line_number":2307,"context_line":"\tbool is_one \u003d strcmp(CMD_ARGV[0], \"1\") \u003d\u003d 0;"},{"line_number":2308,"context_line":"\tif (!is_one \u0026\u0026 strcmp(CMD_ARGV[0], \"0\") !\u003d 0)"},{"line_number":2309,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;\t/* 0 or 1 only */"},{"line_number":2310,"context_line":"\txtensa-\u003epermissive_mode \u003d is_one;"},{"line_number":2311,"context_line":"\treturn ERROR_OK;"},{"line_number":2312,"context_line":"}"},{"line_number":2313,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"52715dd3_25c724c8","line":2310,"range":{"start_line":2307,"start_character":1,"end_line":2310,"end_character":34},"updated":"2022-04-27 17:06:23.000000000","message":"Consider\n  COMMAND_PARSE_ENABLE(CMD_ARGV[0], \u0026xtensa-\u003epermissive_mode)\n\nor even better just\n\n  return CALL_COMMAND_HANDLER(handle_command_parse_bool, \u0026xtensa-\u003epermissive_mode, )","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":2304,"context_line":"\tif (CMD_ARGC !\u003d 1)"},{"line_number":2305,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":2306,"context_line":""},{"line_number":2307,"context_line":"\tbool is_one \u003d strcmp(CMD_ARGV[0], \"1\") \u003d\u003d 0;"},{"line_number":2308,"context_line":"\tif (!is_one \u0026\u0026 strcmp(CMD_ARGV[0], \"0\") !\u003d 0)"},{"line_number":2309,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;\t/* 0 or 1 only */"},{"line_number":2310,"context_line":"\txtensa-\u003epermissive_mode \u003d is_one;"},{"line_number":2311,"context_line":"\treturn ERROR_OK;"},{"line_number":2312,"context_line":"}"},{"line_number":2313,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"c785004d_b726d386","line":2310,"range":{"start_line":2307,"start_character":1,"end_line":2310,"end_character":34},"in_reply_to":"52715dd3_25c724c8","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":2313,"context_line":""},{"line_number":2314,"context_line":"COMMAND_HANDLER(xtensa_cmd_permissive_mode)"},{"line_number":2315,"context_line":"{"},{"line_number":2316,"context_line":"\treturn CALL_COMMAND_HANDLER(xtensa_cmd_permissive_mode_do,"},{"line_number":2317,"context_line":"\t\ttarget_to_xtensa(get_current_target(CMD_CTX)));"},{"line_number":2318,"context_line":"}"},{"line_number":2319,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"0a225e13_d55a83c9","line":2316,"updated":"2022-04-27 17:06:23.000000000","message":"Is any reason why every COMMAND_HANDLER is implemented as a wrapper of a COMMAND_HELPER?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":true,"context_lines":[{"line_number":2313,"context_line":""},{"line_number":2314,"context_line":"COMMAND_HANDLER(xtensa_cmd_permissive_mode)"},{"line_number":2315,"context_line":"{"},{"line_number":2316,"context_line":"\treturn CALL_COMMAND_HANDLER(xtensa_cmd_permissive_mode_do,"},{"line_number":2317,"context_line":"\t\ttarget_to_xtensa(get_current_target(CMD_CTX)));"},{"line_number":2318,"context_line":"}"},{"line_number":2319,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"df1f23ac_3a8d43b2","line":2316,"in_reply_to":"0a225e13_d55a83c9","updated":"2022-05-04 21:18:43.000000000","message":"This is in use when we want to set permissive mode for both xtensa smp targets. https://github.com/espressif/openocd-esp32/blob/master/src/target/esp_xtensa_smp.c#L677","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"5250ea08e8f09765059607e9171f836c5d90b63c","unresolved":false,"context_lines":[{"line_number":2313,"context_line":""},{"line_number":2314,"context_line":"COMMAND_HANDLER(xtensa_cmd_permissive_mode)"},{"line_number":2315,"context_line":"{"},{"line_number":2316,"context_line":"\treturn CALL_COMMAND_HANDLER(xtensa_cmd_permissive_mode_do,"},{"line_number":2317,"context_line":"\t\ttarget_to_xtensa(get_current_target(CMD_CTX)));"},{"line_number":2318,"context_line":"}"},{"line_number":2319,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"f3dacce6_f5255841","line":2316,"in_reply_to":"df1f23ac_3a8d43b2","updated":"2022-05-05 06:46:04.000000000","message":"Ok then","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"3a23ebdeff4a1e27e5e582968b0f788bbdab70ca","unresolved":true,"context_lines":[{"line_number":2046,"context_line":""},{"line_number":2047,"context_line":"\tstruct reg_cache *reg_cache \u003d calloc(1, sizeof(struct reg_cache));"},{"line_number":2048,"context_line":"\tif (!reg_cache) {"},{"line_number":2049,"context_line":"\t\tassert(0 \u0026\u0026 \"Failed to alloc reg cache!\");"},{"line_number":2050,"context_line":"\t\treturn;"},{"line_number":2051,"context_line":"\t}"},{"line_number":2052,"context_line":"\treg_cache-\u003ename \u003d \"Xtensa registers\";"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"37abc1da_2c9e9323","line":2049,"range":{"start_line":2049,"start_character":2,"end_line":2049,"end_character":44},"updated":"2022-04-29 11:22:18.000000000","message":"Don\u0027t assert on allocation error. Use non-void return code to inform caller.\n\nbuild_reg_cache() usually returns struct reg_cache ptr or NULL on alloc err.\nAlso returning standard ERROR_xxx is a good option.","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d8071e1774e088e24aea64b64a899c552df78865","unresolved":false,"context_lines":[{"line_number":2046,"context_line":""},{"line_number":2047,"context_line":"\tstruct reg_cache *reg_cache \u003d calloc(1, sizeof(struct reg_cache));"},{"line_number":2048,"context_line":"\tif (!reg_cache) {"},{"line_number":2049,"context_line":"\t\tassert(0 \u0026\u0026 \"Failed to alloc reg cache!\");"},{"line_number":2050,"context_line":"\t\treturn;"},{"line_number":2051,"context_line":"\t}"},{"line_number":2052,"context_line":"\treg_cache-\u003ename \u003d \"Xtensa registers\";"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"43272e1a_21771bc7","line":2049,"range":{"start_line":2049,"start_character":2,"end_line":2049,"end_character":44},"in_reply_to":"37abc1da_2c9e9323","updated":"2022-05-04 23:50:53.000000000","message":"Done","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"5250ea08e8f09765059607e9171f836c5d90b63c","unresolved":false,"context_lines":[{"line_number":2108,"context_line":"\t\treg_list[XT_USR_REG_START + i].arch_info \u003d xtensa;"},{"line_number":2109,"context_line":"\t\txtensa-\u003eregs_num++;"},{"line_number":2110,"context_line":"\t}"},{"line_number":2111,"context_line":"\tassert("},{"line_number":2112,"context_line":"\t\txtensa-\u003ecore_config-\u003egdb_general_regs_num \u003c xtensa-\u003eregs_num \u0026\u0026"},{"line_number":2113,"context_line":"\t\t\"Regs number less then GDB general regs number!\");"},{"line_number":2114,"context_line":"\t/* assign GDB reg numbers to registers */"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"b38b0204_5ce9bdcf","line":2111,"range":{"start_line":2111,"start_character":1,"end_line":2111,"end_character":8},"updated":"2022-05-05 06:46:04.000000000","message":"Erhan, I\u0027m not against using assert() to verify programmer\u0027s assumption like here. I just didn\u0027t like the assert on failed memory allocation.\n\nOf course using LOG_ERROR() is correct too.\nThanks!","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"7713d672cf3fc26ac93b872e1249511030602ccb","unresolved":false,"context_lines":[{"line_number":2108,"context_line":"\t\treg_list[XT_USR_REG_START + i].arch_info \u003d xtensa;"},{"line_number":2109,"context_line":"\t\txtensa-\u003eregs_num++;"},{"line_number":2110,"context_line":"\t}"},{"line_number":2111,"context_line":"\tassert("},{"line_number":2112,"context_line":"\t\txtensa-\u003ecore_config-\u003egdb_general_regs_num \u003c xtensa-\u003eregs_num \u0026\u0026"},{"line_number":2113,"context_line":"\t\t\"Regs number less then GDB general regs number!\");"},{"line_number":2114,"context_line":"\t/* assign GDB reg numbers to registers */"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"5b0d1fea_58402a9d","line":2111,"range":{"start_line":2111,"start_character":1,"end_line":2111,"end_character":8},"in_reply_to":"b38b0204_5ce9bdcf","updated":"2022-05-05 11:10:01.000000000","message":"Ok. Good to know you are not against assertion.","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"3a23ebdeff4a1e27e5e582968b0f788bbdab70ca","unresolved":true,"context_lines":[{"line_number":2233,"context_line":""},{"line_number":2234,"context_line":"\tLOG_DEBUG(\"start\");"},{"line_number":2235,"context_line":"\tif (!xtensa-\u003ecore_cache)"},{"line_number":2236,"context_line":"\t\treturn;"},{"line_number":2237,"context_line":"\tint ret \u003d xtensa_queue_dbg_reg_write(xtensa, NARADR_DCRCLR, OCDDCR_ENABLEOCD);"},{"line_number":2238,"context_line":"\tif (ret !\u003d ERROR_OK) {"},{"line_number":2239,"context_line":"\t\tLOG_ERROR(\"Failed to queue OCDDCR_ENABLEOCD clear operation!\");"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"28db7d65_3c6d07c3","line":2236,"range":{"start_line":2236,"start_character":2,"end_line":2236,"end_character":9},"updated":"2022-04-29 11:22:18.000000000","message":"Potential memory leak of hw_brps... if build_reg_cache() changed to return error.","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"9d2ca2adca301cdbd4d79de722af5337849c20fa","unresolved":true,"context_lines":[{"line_number":2233,"context_line":""},{"line_number":2234,"context_line":"\tLOG_DEBUG(\"start\");"},{"line_number":2235,"context_line":"\tif (!xtensa-\u003ecore_cache)"},{"line_number":2236,"context_line":"\t\treturn;"},{"line_number":2237,"context_line":"\tint ret \u003d xtensa_queue_dbg_reg_write(xtensa, NARADR_DCRCLR, OCDDCR_ENABLEOCD);"},{"line_number":2238,"context_line":"\tif (ret !\u003d ERROR_OK) {"},{"line_number":2239,"context_line":"\t\tLOG_ERROR(\"Failed to queue OCDDCR_ENABLEOCD clear operation!\");"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"c36a69a2_54173841","line":2236,"range":{"start_line":2236,"start_character":2,"end_line":2236,"end_character":9},"in_reply_to":"28db7d65_3c6d07c3","updated":"2022-05-05 12:32:05.000000000","message":"I am not sure. hw_brbps will be freed in the xtensa_target_deinit. Am I missing something?","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":2233,"context_line":""},{"line_number":2234,"context_line":"\tLOG_DEBUG(\"start\");"},{"line_number":2235,"context_line":"\tif (!xtensa-\u003ecore_cache)"},{"line_number":2236,"context_line":"\t\treturn;"},{"line_number":2237,"context_line":"\tint ret \u003d xtensa_queue_dbg_reg_write(xtensa, NARADR_DCRCLR, OCDDCR_ENABLEOCD);"},{"line_number":2238,"context_line":"\tif (ret !\u003d ERROR_OK) {"},{"line_number":2239,"context_line":"\t\tLOG_ERROR(\"Failed to queue OCDDCR_ENABLEOCD clear operation!\");"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"1d6a373f_ea06e943","line":2236,"range":{"start_line":2236,"start_character":2,"end_line":2236,"end_character":9},"in_reply_to":"7b164283_af297251","updated":"2022-05-09 13:20:40.000000000","message":"Looks OK. Good catch. thanks.","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"9ef426220b2825bca82a7441f0f92b7d48876b05","unresolved":true,"context_lines":[{"line_number":2233,"context_line":""},{"line_number":2234,"context_line":"\tLOG_DEBUG(\"start\");"},{"line_number":2235,"context_line":"\tif (!xtensa-\u003ecore_cache)"},{"line_number":2236,"context_line":"\t\treturn;"},{"line_number":2237,"context_line":"\tint ret \u003d xtensa_queue_dbg_reg_write(xtensa, NARADR_DCRCLR, OCDDCR_ENABLEOCD);"},{"line_number":2238,"context_line":"\tif (ret !\u003d ERROR_OK) {"},{"line_number":2239,"context_line":"\t\tLOG_ERROR(\"Failed to queue OCDDCR_ENABLEOCD clear operation!\");"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"7b164283_af297251","line":2236,"range":{"start_line":2236,"start_character":2,"end_line":2236,"end_character":9},"in_reply_to":"c36a69a2_54173841","updated":"2022-05-07 11:49:03.000000000","message":"Just a corner case. xtensa_target_init() allocates hw_brps, hw_wps, sw_brps and then calls xtensa_build_reg_cache(). If xtensa_build_reg_cache() fails, core_cache is NULL and hw_brps, hw_wps, sw_brps leaks.\nRemove the conditional return and check if the following code can run w/o core_cache.","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"3a23ebdeff4a1e27e5e582968b0f788bbdab70ca","unresolved":true,"context_lines":[{"line_number":2234,"context_line":"\tLOG_DEBUG(\"start\");"},{"line_number":2235,"context_line":"\tif (!xtensa-\u003ecore_cache)"},{"line_number":2236,"context_line":"\t\treturn;"},{"line_number":2237,"context_line":"\tint ret \u003d xtensa_queue_dbg_reg_write(xtensa, NARADR_DCRCLR, OCDDCR_ENABLEOCD);"},{"line_number":2238,"context_line":"\tif (ret !\u003d ERROR_OK) {"},{"line_number":2239,"context_line":"\t\tLOG_ERROR(\"Failed to queue OCDDCR_ENABLEOCD clear operation!\");"},{"line_number":2240,"context_line":"\t\treturn;"},{"line_number":2241,"context_line":"\t}"},{"line_number":2242,"context_line":"\txtensa_dm_queue_tdi_idle(\u0026xtensa-\u003edbg_mod);"},{"line_number":2243,"context_line":"\tret \u003d jtag_execute_queue();"},{"line_number":2244,"context_line":"\tif (ret !\u003d ERROR_OK) {"},{"line_number":2245,"context_line":"\t\tLOG_ERROR(\"Failed to clear OCDDCR_ENABLEOCD!\");"},{"line_number":2246,"context_line":"\t\treturn;"},{"line_number":2247,"context_line":"\t}"},{"line_number":2248,"context_line":"\txtensa_free_reg_cache(target);"},{"line_number":2249,"context_line":"\tfree(xtensa-\u003ehw_brps);"},{"line_number":2250,"context_line":"\tfree(xtensa-\u003ehw_wps);"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"876b033a_238cb247","line":2247,"range":{"start_line":2237,"start_character":1,"end_line":2247,"end_character":2},"updated":"2022-04-29 11:22:18.000000000","message":"In the case of a problem in JTAG initialization (I didn\u0027t configure \u0027adapter speed\u0027) this causes assert:\n\n  openocd: ../src/jtag/core.c:338: jtag_checks: Assertion `jtag_trst \u003d\u003d 0\u0027 failed.\n  Aborted (core dumped)\n\nSee 6953: target: document possibly unreachable target in deinit_target() | https://review.openocd.org/c/openocd/+/6953","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":2234,"context_line":"\tLOG_DEBUG(\"start\");"},{"line_number":2235,"context_line":"\tif (!xtensa-\u003ecore_cache)"},{"line_number":2236,"context_line":"\t\treturn;"},{"line_number":2237,"context_line":"\tint ret \u003d xtensa_queue_dbg_reg_write(xtensa, NARADR_DCRCLR, OCDDCR_ENABLEOCD);"},{"line_number":2238,"context_line":"\tif (ret !\u003d ERROR_OK) {"},{"line_number":2239,"context_line":"\t\tLOG_ERROR(\"Failed to queue OCDDCR_ENABLEOCD clear operation!\");"},{"line_number":2240,"context_line":"\t\treturn;"},{"line_number":2241,"context_line":"\t}"},{"line_number":2242,"context_line":"\txtensa_dm_queue_tdi_idle(\u0026xtensa-\u003edbg_mod);"},{"line_number":2243,"context_line":"\tret \u003d jtag_execute_queue();"},{"line_number":2244,"context_line":"\tif (ret !\u003d ERROR_OK) {"},{"line_number":2245,"context_line":"\t\tLOG_ERROR(\"Failed to clear OCDDCR_ENABLEOCD!\");"},{"line_number":2246,"context_line":"\t\treturn;"},{"line_number":2247,"context_line":"\t}"},{"line_number":2248,"context_line":"\txtensa_free_reg_cache(target);"},{"line_number":2249,"context_line":"\tfree(xtensa-\u003ehw_brps);"},{"line_number":2250,"context_line":"\tfree(xtensa-\u003ehw_wps);"}],"source_content_type":"text/x-csrc","patch_set":16,"id":"66b0e3dc_465b4291","line":2247,"range":{"start_line":2237,"start_character":1,"end_line":2247,"end_character":2},"in_reply_to":"876b033a_238cb247","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"d749222800c68fbce760858b9ac66823aa4213fe"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":280,"context_line":"\tXTENSA_MEM_REG_URAM,"},{"line_number":281,"context_line":"\tXTENSA_MEM_REG_XLMI,"},{"line_number":282,"context_line":"\tXTENSA_MEM_REGS_NUM"},{"line_number":283,"context_line":"} xtensa_mem_region_type_t;"},{"line_number":284,"context_line":""},{"line_number":285,"context_line":"/**"},{"line_number":286,"context_line":" * Gets a config for the specific mem type"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"bdb999e4_16830c9b","line":283,"updated":"2022-05-06 22:41:29.000000000","message":"Please do not define new types.\nUse \"enum xtensa_mem_region_type\"","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":280,"context_line":"\tXTENSA_MEM_REG_URAM,"},{"line_number":281,"context_line":"\tXTENSA_MEM_REG_XLMI,"},{"line_number":282,"context_line":"\tXTENSA_MEM_REGS_NUM"},{"line_number":283,"context_line":"} xtensa_mem_region_type_t;"},{"line_number":284,"context_line":""},{"line_number":285,"context_line":"/**"},{"line_number":286,"context_line":" * Gets a config for the specific mem type"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"69e7244e_87cd25e4","line":283,"in_reply_to":"bdb999e4_16830c9b","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":334,"context_line":"\ttarget_addr_t address)"},{"line_number":335,"context_line":"{"},{"line_number":336,"context_line":"\tconst struct xtensa_local_mem_region_config *result \u003d NULL;"},{"line_number":337,"context_line":"\tconst struct xtensa_local_mem_config *mcgf \u003d NULL;"},{"line_number":338,"context_line":"\tfor (size_t mtype \u003d 0; mtype \u003c XTENSA_MEM_REGS_NUM; mtype++) {"},{"line_number":339,"context_line":"\t\tmcgf \u003d xtensa_get_mem_config(xtensa, mtype);"},{"line_number":340,"context_line":"\t\tresult \u003d xtensa_memory_region_find(mcgf, address);"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"6fa1fba1_111e2598","line":337,"updated":"2022-05-06 22:41:29.000000000","message":"no need to init these two to NULL","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":334,"context_line":"\ttarget_addr_t address)"},{"line_number":335,"context_line":"{"},{"line_number":336,"context_line":"\tconst struct xtensa_local_mem_region_config *result \u003d NULL;"},{"line_number":337,"context_line":"\tconst struct xtensa_local_mem_config *mcgf \u003d NULL;"},{"line_number":338,"context_line":"\tfor (size_t mtype \u003d 0; mtype \u003c XTENSA_MEM_REGS_NUM; mtype++) {"},{"line_number":339,"context_line":"\t\tmcgf \u003d xtensa_get_mem_config(xtensa, mtype);"},{"line_number":340,"context_line":"\t\tresult \u003d xtensa_memory_region_find(mcgf, address);"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"ef91c200_75f16f4a","line":337,"in_reply_to":"6fa1fba1_111e2598","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"9ef426220b2825bca82a7441f0f92b7d48876b05","unresolved":true,"context_lines":[{"line_number":386,"context_line":"\t.set \u003d xtensa_core_reg_set,"},{"line_number":387,"context_line":"};"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"static inline uint8_t xtensa_insn_size_get(uint32_t insn)"},{"line_number":390,"context_line":"{"},{"line_number":391,"context_line":"\treturn insn \u0026 0x8 ? 2 : XT_ISNS_SZ_MAX;"},{"line_number":392,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"04938d9b_c067844c","line":389,"range":{"start_line":389,"start_character":14,"end_line":389,"end_character":21},"updated":"2022-05-07 11:49:03.000000000","message":"unsingned int","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":386,"context_line":"\t.set \u003d xtensa_core_reg_set,"},{"line_number":387,"context_line":"};"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"static inline uint8_t xtensa_insn_size_get(uint32_t insn)"},{"line_number":390,"context_line":"{"},{"line_number":391,"context_line":"\treturn insn \u0026 0x8 ? 2 : XT_ISNS_SZ_MAX;"},{"line_number":392,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"104883d3_ec846f3b","line":389,"range":{"start_line":389,"start_character":14,"end_line":389,"end_character":21},"in_reply_to":"04938d9b_c067844c","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":1450,"context_line":"\tif (retval !\u003d ERROR_OK)"},{"line_number":1451,"context_line":"\t\treturn retval;"},{"line_number":1452,"context_line":"\ttarget_call_event_callbacks(target, TARGET_EVENT_HALTED);"},{"line_number":1453,"context_line":"\treturn retval;"},{"line_number":1454,"context_line":"}"},{"line_number":1455,"context_line":""},{"line_number":1456,"context_line":"/**"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"727d1971_d006c1f4","line":1453,"updated":"2022-05-06 22:41:29.000000000","message":"return ERROR_OK;","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":1450,"context_line":"\tif (retval !\u003d ERROR_OK)"},{"line_number":1451,"context_line":"\t\treturn retval;"},{"line_number":1452,"context_line":"\ttarget_call_event_callbacks(target, TARGET_EVENT_HALTED);"},{"line_number":1453,"context_line":"\treturn retval;"},{"line_number":1454,"context_line":"}"},{"line_number":1455,"context_line":""},{"line_number":1456,"context_line":"/**"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"6e3e90fa_decc7437","line":1453,"in_reply_to":"727d1971_d006c1f4","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":1837,"context_line":"\t\tLOG_TARGET_ERROR(target, \"Failed to read original instruction (%d)!\", ret);"},{"line_number":1838,"context_line":"\t\treturn ret;"},{"line_number":1839,"context_line":"\t}"},{"line_number":1840,"context_line":"\tsw_bp-\u003einsn_sz \u003d xtensa_insn_size_get(data);"},{"line_number":1841,"context_line":"\tmemcpy(sw_bp-\u003einsn, (uint8_t *)\u0026data, sw_bp-\u003einsn_sz);"},{"line_number":1842,"context_line":"\tsw_bp-\u003eoocd_bp \u003d breakpoint;"},{"line_number":1843,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":22,"id":"031d5e4e_3e7dacc4","line":1840,"updated":"2022-05-06 22:41:29.000000000","message":"endianness issue!\nHere you assume that host PC and xtensa target share the same endianness.\nCan data be read through target_read_u32() that handles endianness?\nI have seen other code that looks endianness broken and I took note to check better, but here it looks out of doubts.\nCheck also https://review.openocd.org/6968/","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"9ef426220b2825bca82a7441f0f92b7d48876b05","unresolved":true,"context_lines":[{"line_number":1837,"context_line":"\t\tLOG_TARGET_ERROR(target, \"Failed to read original instruction (%d)!\", ret);"},{"line_number":1838,"context_line":"\t\treturn ret;"},{"line_number":1839,"context_line":"\t}"},{"line_number":1840,"context_line":"\tsw_bp-\u003einsn_sz \u003d xtensa_insn_size_get(data);"},{"line_number":1841,"context_line":"\tmemcpy(sw_bp-\u003einsn, (uint8_t *)\u0026data, sw_bp-\u003einsn_sz);"},{"line_number":1842,"context_line":"\tsw_bp-\u003eoocd_bp \u003d breakpoint;"},{"line_number":1843,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":22,"id":"376b65c7_5a7f25d5","line":1840,"in_reply_to":"031d5e4e_3e7dacc4","updated":"2022-05-07 11:49:03.000000000","message":"Yes, xtensa_insn_size_get() will not work on big endian host.\nuint32_t is misused as a byte buffer and paradoxically  xtensa_sw_breakpoint_remove() writes back the original insn correctly.\n\nAs xtensa has instructions of variable size, I would prefer working with the target order byte buffer at least here. struct breakpoint has the member uint8_t *orig_instr which can be used instead of struct xtensa_sw_breakpoint with an additional code to keep both structs in sync.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"ad063defdd7143a4d3668116d81cdb38f56e3d6b","unresolved":false,"context_lines":[{"line_number":1837,"context_line":"\t\tLOG_TARGET_ERROR(target, \"Failed to read original instruction (%d)!\", ret);"},{"line_number":1838,"context_line":"\t\treturn ret;"},{"line_number":1839,"context_line":"\t}"},{"line_number":1840,"context_line":"\tsw_bp-\u003einsn_sz \u003d xtensa_insn_size_get(data);"},{"line_number":1841,"context_line":"\tmemcpy(sw_bp-\u003einsn, (uint8_t *)\u0026data, sw_bp-\u003einsn_sz);"},{"line_number":1842,"context_line":"\tsw_bp-\u003eoocd_bp \u003d breakpoint;"},{"line_number":1843,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":22,"id":"71f37ea6_c0bfac9c","line":1840,"in_reply_to":"03e40934_f4d32f83","updated":"2022-05-09 22:01:45.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"8396bacf3967b68f810326f8c31df91cd873c00f","unresolved":true,"context_lines":[{"line_number":1837,"context_line":"\t\tLOG_TARGET_ERROR(target, \"Failed to read original instruction (%d)!\", ret);"},{"line_number":1838,"context_line":"\t\treturn ret;"},{"line_number":1839,"context_line":"\t}"},{"line_number":1840,"context_line":"\tsw_bp-\u003einsn_sz \u003d xtensa_insn_size_get(data);"},{"line_number":1841,"context_line":"\tmemcpy(sw_bp-\u003einsn, (uint8_t *)\u0026data, sw_bp-\u003einsn_sz);"},{"line_number":1842,"context_line":"\tsw_bp-\u003eoocd_bp \u003d breakpoint;"},{"line_number":1843,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":22,"id":"df85cd3e_ff0a9e34","line":1840,"in_reply_to":"268423f8_0a4657eb","updated":"2022-05-09 18:13:24.000000000","message":"Hmm, the endianess is correct. But orig_insn with undefined orig_insn[3] converted to u32 could emit a warning in a static analyzer. Why don\u0027t you use\n target_read_buffer(target, breakpoint-\u003eaddress, XT_ISNS_SZ_MAX, sw_bp-\u003einsn);\n sw_bp-\u003einsn_sz \u003d xtensa_insn_size_get(buf_get_u32(sw_bp-\u003einsn, 0, 24));\n\nsimilarly as in xtensa_pc_in_winexc()","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":true,"context_lines":[{"line_number":1837,"context_line":"\t\tLOG_TARGET_ERROR(target, \"Failed to read original instruction (%d)!\", ret);"},{"line_number":1838,"context_line":"\t\treturn ret;"},{"line_number":1839,"context_line":"\t}"},{"line_number":1840,"context_line":"\tsw_bp-\u003einsn_sz \u003d xtensa_insn_size_get(data);"},{"line_number":1841,"context_line":"\tmemcpy(sw_bp-\u003einsn, (uint8_t *)\u0026data, sw_bp-\u003einsn_sz);"},{"line_number":1842,"context_line":"\tsw_bp-\u003eoocd_bp \u003d breakpoint;"},{"line_number":1843,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":22,"id":"b034724b_8ba03e46","line":1840,"in_reply_to":"376b65c7_5a7f25d5","updated":"2022-05-09 13:20:40.000000000","message":"I agree about using generic struct breakpoint. Let me check the history why didn\u0027t we simply use the existing struct.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f933d6b1bb0c693fad1b07b78c1065551e5c80c3","unresolved":true,"context_lines":[{"line_number":1837,"context_line":"\t\tLOG_TARGET_ERROR(target, \"Failed to read original instruction (%d)!\", ret);"},{"line_number":1838,"context_line":"\t\treturn ret;"},{"line_number":1839,"context_line":"\t}"},{"line_number":1840,"context_line":"\tsw_bp-\u003einsn_sz \u003d xtensa_insn_size_get(data);"},{"line_number":1841,"context_line":"\tmemcpy(sw_bp-\u003einsn, (uint8_t *)\u0026data, sw_bp-\u003einsn_sz);"},{"line_number":1842,"context_line":"\tsw_bp-\u003eoocd_bp \u003d breakpoint;"},{"line_number":1843,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":22,"id":"268423f8_0a4657eb","line":1840,"in_reply_to":"755b4501_6a8c362c","updated":"2022-05-09 15:17:04.000000000","message":"I kept this as is. Please check again.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"37434b98efa7d58524a9900b7be28e9557c20f4f","unresolved":true,"context_lines":[{"line_number":1837,"context_line":"\t\tLOG_TARGET_ERROR(target, \"Failed to read original instruction (%d)!\", ret);"},{"line_number":1838,"context_line":"\t\treturn ret;"},{"line_number":1839,"context_line":"\t}"},{"line_number":1840,"context_line":"\tsw_bp-\u003einsn_sz \u003d xtensa_insn_size_get(data);"},{"line_number":1841,"context_line":"\tmemcpy(sw_bp-\u003einsn, (uint8_t *)\u0026data, sw_bp-\u003einsn_sz);"},{"line_number":1842,"context_line":"\tsw_bp-\u003eoocd_bp \u003d breakpoint;"},{"line_number":1843,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":22,"id":"755b4501_6a8c362c","line":1840,"in_reply_to":"b034724b_8ba03e46","updated":"2022-05-09 13:55:49.000000000","message":"struct xtensa_sw_breakpoint stores insn_sz for original code restore. The size can be trivially re-get from the stored insn.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"8afbf828d4325ff7beae6518a34c1d7f17c531fc","unresolved":true,"context_lines":[{"line_number":1837,"context_line":"\t\tLOG_TARGET_ERROR(target, \"Failed to read original instruction (%d)!\", ret);"},{"line_number":1838,"context_line":"\t\treturn ret;"},{"line_number":1839,"context_line":"\t}"},{"line_number":1840,"context_line":"\tsw_bp-\u003einsn_sz \u003d xtensa_insn_size_get(data);"},{"line_number":1841,"context_line":"\tmemcpy(sw_bp-\u003einsn, (uint8_t *)\u0026data, sw_bp-\u003einsn_sz);"},{"line_number":1842,"context_line":"\tsw_bp-\u003eoocd_bp \u003d breakpoint;"},{"line_number":1843,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":22,"id":"03e40934_f4d32f83","line":1840,"in_reply_to":"df85cd3e_ff0a9e34","updated":"2022-05-09 19:01:45.000000000","message":"Thanks for the tips Tomas. Definitely looks better now :)","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":1843,"context_line":""},{"line_number":1844,"context_line":"\tuint32_t break_insn \u003d sw_bp-\u003einsn_sz \u003d\u003d XT_ISNS_SZ_MAX ? XT_INS_BREAK(0, 0) : XT_INS_BREAKN(0);"},{"line_number":1845,"context_line":""},{"line_number":1846,"context_line":"\tret \u003d target_write_buffer(target, breakpoint-\u003eaddress, sw_bp-\u003einsn_sz, (uint8_t *)\u0026break_insn);"},{"line_number":1847,"context_line":"\tif (ret !\u003d ERROR_OK) {"},{"line_number":1848,"context_line":"\t\tLOG_TARGET_ERROR(target, \"Failed to write breakpoint instruction (%d)!\", ret);"},{"line_number":1849,"context_line":"\t\treturn ret;"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"da049880_a9966659","line":1846,"updated":"2022-05-06 22:41:29.000000000","message":"same here, endianness issue","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"ad063defdd7143a4d3668116d81cdb38f56e3d6b","unresolved":false,"context_lines":[{"line_number":1843,"context_line":""},{"line_number":1844,"context_line":"\tuint32_t break_insn \u003d sw_bp-\u003einsn_sz \u003d\u003d XT_ISNS_SZ_MAX ? XT_INS_BREAK(0, 0) : XT_INS_BREAKN(0);"},{"line_number":1845,"context_line":""},{"line_number":1846,"context_line":"\tret \u003d target_write_buffer(target, breakpoint-\u003eaddress, sw_bp-\u003einsn_sz, (uint8_t *)\u0026break_insn);"},{"line_number":1847,"context_line":"\tif (ret !\u003d ERROR_OK) {"},{"line_number":1848,"context_line":"\t\tLOG_TARGET_ERROR(target, \"Failed to write breakpoint instruction (%d)!\", ret);"},{"line_number":1849,"context_line":"\t\treturn ret;"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"ccc7acf1_48904462","line":1846,"in_reply_to":"da049880_a9966659","updated":"2022-05-09 22:01:45.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":1992,"context_line":"\tif (watchpoint-\u003erw \u003d\u003d WPT_WRITE)"},{"line_number":1993,"context_line":"\t\tdbreakcval |\u003d BIT(31);"},{"line_number":1994,"context_line":"\tif (watchpoint-\u003erw \u003d\u003d WPT_ACCESS)"},{"line_number":1995,"context_line":"\t\tdbreakcval |\u003d BIT(30) + BIT(31);"},{"line_number":1996,"context_line":""},{"line_number":1997,"context_line":"\t/* Write DBREAKA[slot] and DBCREAKC[slot] */"},{"line_number":1998,"context_line":"\txtensa_reg_set(target, XT_REG_IDX_DBREAKA0 + slot, watchpoint-\u003eaddress);"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"c863067f_e5ed05a5","line":1995,"updated":"2022-05-06 22:41:29.000000000","message":"use \"|\" instead of \"+\" during bit logic operations","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":1992,"context_line":"\tif (watchpoint-\u003erw \u003d\u003d WPT_WRITE)"},{"line_number":1993,"context_line":"\t\tdbreakcval |\u003d BIT(31);"},{"line_number":1994,"context_line":"\tif (watchpoint-\u003erw \u003d\u003d WPT_ACCESS)"},{"line_number":1995,"context_line":"\t\tdbreakcval |\u003d BIT(30) + BIT(31);"},{"line_number":1996,"context_line":""},{"line_number":1997,"context_line":"\t/* Write DBREAKA[slot] and DBCREAKC[slot] */"},{"line_number":1998,"context_line":"\txtensa_reg_set(target, XT_REG_IDX_DBREAKA0 + slot, watchpoint-\u003eaddress);"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"dfbbfec2_9900daa4","line":1995,"in_reply_to":"c863067f_e5ed05a5","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":2301,"context_line":"\t\t.tracelevel \u003d -1\t/* use DEBUGLEVEL by default */"},{"line_number":2302,"context_line":"\t};"},{"line_number":2303,"context_line":""},{"line_number":2304,"context_line":"\tif (CMD_ARGC \u003c 2)"},{"line_number":2305,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":2306,"context_line":""},{"line_number":2307,"context_line":"\tunsigned int counter_id \u003d strtoul(CMD_ARGV[0], NULL, 0);"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"22e84cd5_e2b31d2f","line":2304,"updated":"2022-05-06 22:41:29.000000000","message":"Maybe:\nif (CMD_ARGC \u003c 2 || CMD_ARGC \u003e 6) ?","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":2301,"context_line":"\t\t.tracelevel \u003d -1\t/* use DEBUGLEVEL by default */"},{"line_number":2302,"context_line":"\t};"},{"line_number":2303,"context_line":""},{"line_number":2304,"context_line":"\tif (CMD_ARGC \u003c 2)"},{"line_number":2305,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":2306,"context_line":""},{"line_number":2307,"context_line":"\tunsigned int counter_id \u003d strtoul(CMD_ARGV[0], NULL, 0);"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"44012e97_2fa14e2e","line":2304,"in_reply_to":"22e84cd5_e2b31d2f","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":2307,"context_line":"\tunsigned int counter_id \u003d strtoul(CMD_ARGV[0], NULL, 0);"},{"line_number":2308,"context_line":"\tif (counter_id \u003e\u003d XTENSA_MAX_PERF_COUNTERS) {"},{"line_number":2309,"context_line":"\t\tcommand_print(CMD, \"counter_id should be \u003c %d\", XTENSA_MAX_PERF_COUNTERS);"},{"line_number":2310,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":2311,"context_line":"\t}"},{"line_number":2312,"context_line":""},{"line_number":2313,"context_line":"\tconfig.select \u003d strtoul(CMD_ARGV[1], NULL, 0);"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"b8dd9968_2dd33ba4","line":2310,"updated":"2022-05-06 22:41:29.000000000","message":"If I remember correctly, in case of \"return ERROR_COMMAND_SYNTAX_ERROR;\" all previous command_print() get erased! Please verify, I\u0027m not sure.\nSince this is not a syntax error but an invalid value passed to the command, it should return ERROR_COMMAND_ARGUMENT_INVALID","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":2307,"context_line":"\tunsigned int counter_id \u003d strtoul(CMD_ARGV[0], NULL, 0);"},{"line_number":2308,"context_line":"\tif (counter_id \u003e\u003d XTENSA_MAX_PERF_COUNTERS) {"},{"line_number":2309,"context_line":"\t\tcommand_print(CMD, \"counter_id should be \u003c %d\", XTENSA_MAX_PERF_COUNTERS);"},{"line_number":2310,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":2311,"context_line":"\t}"},{"line_number":2312,"context_line":""},{"line_number":2313,"context_line":"\tconfig.select \u003d strtoul(CMD_ARGV[1], NULL, 0);"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"770159c2_8921522d","line":2310,"in_reply_to":"3d13436c_656ce8c9","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":2307,"context_line":"\tunsigned int counter_id \u003d strtoul(CMD_ARGV[0], NULL, 0);"},{"line_number":2308,"context_line":"\tif (counter_id \u003e\u003d XTENSA_MAX_PERF_COUNTERS) {"},{"line_number":2309,"context_line":"\t\tcommand_print(CMD, \"counter_id should be \u003c %d\", XTENSA_MAX_PERF_COUNTERS);"},{"line_number":2310,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":2311,"context_line":"\t}"},{"line_number":2312,"context_line":""},{"line_number":2313,"context_line":"\tconfig.select \u003d strtoul(CMD_ARGV[1], NULL, 0);"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"2731c373_519c15de","line":2310,"in_reply_to":"3d13436c_656ce8c9","updated":"2022-05-09 13:20:40.000000000","message":"Done by changing the return codes with ERROR_COMMAND_ARGUMENT_INVALID.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"9ef426220b2825bca82a7441f0f92b7d48876b05","unresolved":true,"context_lines":[{"line_number":2307,"context_line":"\tunsigned int counter_id \u003d strtoul(CMD_ARGV[0], NULL, 0);"},{"line_number":2308,"context_line":"\tif (counter_id \u003e\u003d XTENSA_MAX_PERF_COUNTERS) {"},{"line_number":2309,"context_line":"\t\tcommand_print(CMD, \"counter_id should be \u003c %d\", XTENSA_MAX_PERF_COUNTERS);"},{"line_number":2310,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":2311,"context_line":"\t}"},{"line_number":2312,"context_line":""},{"line_number":2313,"context_line":"\tconfig.select \u003d strtoul(CMD_ARGV[1], NULL, 0);"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"3d13436c_656ce8c9","line":2310,"in_reply_to":"b8dd9968_2dd33ba4","updated":"2022-05-07 11:49:03.000000000","message":"\u003e If I remember correctly, in case of \"return ERROR_COMMAND_SYNTAX_ERROR;\" all previous command_print() get erased! Please verify, I\u0027m not sure.\n\nYes, it does. I didn\u0027t remember too so I checked the code - cmd.output is discarded and \u0027usage cmd\u0027 is run instead.","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":2614,"context_line":"\t\t}"},{"line_number":2615,"context_line":"\t}"},{"line_number":2616,"context_line":""},{"line_number":2617,"context_line":"\tuint8_t *tracemem \u003d malloc(memsz*4);"},{"line_number":2618,"context_line":"\tif (!tracemem) {"},{"line_number":2619,"context_line":"\t\tcommand_print(CMD, \"Failed to alloc memory for trace data!\");"},{"line_number":2620,"context_line":"\t\treturn ERROR_FAIL;"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"499a33b8_b1f524fb","line":2617,"updated":"2022-05-06 22:41:29.000000000","message":"add space around \"*\"","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":2614,"context_line":"\t\t}"},{"line_number":2615,"context_line":"\t}"},{"line_number":2616,"context_line":""},{"line_number":2617,"context_line":"\tuint8_t *tracemem \u003d malloc(memsz*4);"},{"line_number":2618,"context_line":"\tif (!tracemem) {"},{"line_number":2619,"context_line":"\t\tcommand_print(CMD, \"Failed to alloc memory for trace data!\");"},{"line_number":2620,"context_line":"\t\treturn ERROR_FAIL;"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"97e5a339_dcdd3fb1","line":2617,"in_reply_to":"499a33b8_b1f524fb","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":2634,"context_line":"\tif (write(f, tracemem, memsz * 4) !\u003d (int)memsz * 4)"},{"line_number":2635,"context_line":"\t\tcommand_print(CMD, \"Unable to write to file %s\", fname);"},{"line_number":2636,"context_line":"\telse"},{"line_number":2637,"context_line":"\t\tcommand_print(CMD, \"Written %d bytes of trace data to %s\", memsz*4, fname);"},{"line_number":2638,"context_line":"\tclose(f);"},{"line_number":2639,"context_line":""},{"line_number":2640,"context_line":"\tbool is_all_zeroes \u003d true;"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"b82da357_cea7f7cc","line":2637,"updated":"2022-05-06 22:41:29.000000000","message":"space around \"*\"","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":2634,"context_line":"\tif (write(f, tracemem, memsz * 4) !\u003d (int)memsz * 4)"},{"line_number":2635,"context_line":"\t\tcommand_print(CMD, \"Unable to write to file %s\", fname);"},{"line_number":2636,"context_line":"\telse"},{"line_number":2637,"context_line":"\t\tcommand_print(CMD, \"Written %d bytes of trace data to %s\", memsz*4, fname);"},{"line_number":2638,"context_line":"\tclose(f);"},{"line_number":2639,"context_line":""},{"line_number":2640,"context_line":"\tbool is_all_zeroes \u003d true;"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"b02f7e8e_709f575e","line":2637,"in_reply_to":"b82da357_cea7f7cc","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":2638,"context_line":"\tclose(f);"},{"line_number":2639,"context_line":""},{"line_number":2640,"context_line":"\tbool is_all_zeroes \u003d true;"},{"line_number":2641,"context_line":"\tfor (uint32_t i \u003d 0; i \u003c memsz*4; i++) {"},{"line_number":2642,"context_line":"\t\tif (tracemem[i] !\u003d 0) {"},{"line_number":2643,"context_line":"\t\t\tis_all_zeroes \u003d false;"},{"line_number":2644,"context_line":"\t\t\tbreak;"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"7feaa7e9_6e22ae0c","line":2641,"updated":"2022-05-06 22:41:29.000000000","message":"same, add space","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":2638,"context_line":"\tclose(f);"},{"line_number":2639,"context_line":""},{"line_number":2640,"context_line":"\tbool is_all_zeroes \u003d true;"},{"line_number":2641,"context_line":"\tfor (uint32_t i \u003d 0; i \u003c memsz*4; i++) {"},{"line_number":2642,"context_line":"\t\tif (tracemem[i] !\u003d 0) {"},{"line_number":2643,"context_line":"\t\t\tis_all_zeroes \u003d false;"},{"line_number":2644,"context_line":"\t\t\tbreak;"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"97d5f055_89b03fa6","line":2641,"in_reply_to":"7feaa7e9_6e22ae0c","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"8396bacf3967b68f810326f8c31df91cd873c00f","unresolved":true,"context_lines":[{"line_number":1232,"context_line":""},{"line_number":1233,"context_line":"static bool xtensa_pc_in_winexc(struct target *target, target_addr_t pc)"},{"line_number":1234,"context_line":"{"},{"line_number":1235,"context_line":"\tuint8_t insn_buf[sizeof(xtensa_insn_t)];"},{"line_number":1236,"context_line":"\txtensa_insn_t insn;"},{"line_number":1237,"context_line":""},{"line_number":1238,"context_line":"\tint err \u003d xtensa_read_buffer(target, pc, sizeof(insn_buf), insn_buf);"}],"source_content_type":"text/x-csrc","patch_set":24,"id":"d9c57eb3_e624db44","line":1235,"range":{"start_line":1235,"start_character":18,"end_line":1235,"end_character":39},"updated":"2022-05-09 18:13:24.000000000","message":"XT_ISNS_SZ_MAX ?","commit_id":"ef165ae78b7580cd02de649dbc01e695288c1e0f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"8afbf828d4325ff7beae6518a34c1d7f17c531fc","unresolved":false,"context_lines":[{"line_number":1232,"context_line":""},{"line_number":1233,"context_line":"static bool xtensa_pc_in_winexc(struct target *target, target_addr_t pc)"},{"line_number":1234,"context_line":"{"},{"line_number":1235,"context_line":"\tuint8_t insn_buf[sizeof(xtensa_insn_t)];"},{"line_number":1236,"context_line":"\txtensa_insn_t insn;"},{"line_number":1237,"context_line":""},{"line_number":1238,"context_line":"\tint err \u003d xtensa_read_buffer(target, pc, sizeof(insn_buf), insn_buf);"}],"source_content_type":"text/x-csrc","patch_set":24,"id":"1c942a94_5807703a","line":1235,"range":{"start_line":1235,"start_character":18,"end_line":1235,"end_character":39},"in_reply_to":"d9c57eb3_e624db44","updated":"2022-05-09 19:01:45.000000000","message":"Done","commit_id":"ef165ae78b7580cd02de649dbc01e695288c1e0f"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"c1b3a8f7a0a96b1c3c3c0432a743107678f6e37a","unresolved":true,"context_lines":[{"line_number":2156,"context_line":""},{"line_number":2157,"context_line":"fail:"},{"line_number":2158,"context_line":"\tif (reg_list) {"},{"line_number":2159,"context_line":"\t\tfor (int i \u003d 0; i \u003c XT_NUM_REGS; i++)"},{"line_number":2160,"context_line":"\t\t\tfree(reg_list[i].value);"},{"line_number":2161,"context_line":"\t\tfor (int i \u003d 0; i \u003c xtensa-\u003ecore_config-\u003euser_regs_num; i++)"},{"line_number":2162,"context_line":"\t\t\tfree(reg_list[XT_USR_REG_START + i].value);"},{"line_number":2163,"context_line":"\t\tfree(reg_list);"},{"line_number":2164,"context_line":"\t}"},{"line_number":2165,"context_line":"\tif (xtensa-\u003ealgo_context_backup) {"}],"source_content_type":"text/x-csrc","patch_set":27,"id":"14ed7049_a0779063","line":2162,"range":{"start_line":2159,"start_character":3,"end_line":2162,"end_character":46},"updated":"2022-05-10 09:05:25.000000000","message":"Could be simplified to one for cycle 0 .. reg_cache-\u003enum_resg as used below","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"68d6b6a3e93ae7de666133517d73834e9ff4aed7","unresolved":false,"context_lines":[{"line_number":2156,"context_line":""},{"line_number":2157,"context_line":"fail:"},{"line_number":2158,"context_line":"\tif (reg_list) {"},{"line_number":2159,"context_line":"\t\tfor (int i \u003d 0; i \u003c XT_NUM_REGS; i++)"},{"line_number":2160,"context_line":"\t\t\tfree(reg_list[i].value);"},{"line_number":2161,"context_line":"\t\tfor (int i \u003d 0; i \u003c xtensa-\u003ecore_config-\u003euser_regs_num; i++)"},{"line_number":2162,"context_line":"\t\t\tfree(reg_list[XT_USR_REG_START + i].value);"},{"line_number":2163,"context_line":"\t\tfree(reg_list);"},{"line_number":2164,"context_line":"\t}"},{"line_number":2165,"context_line":"\tif (xtensa-\u003ealgo_context_backup) {"}],"source_content_type":"text/x-csrc","patch_set":27,"id":"9235b8c0_69727934","line":2162,"range":{"start_line":2159,"start_character":3,"end_line":2162,"end_character":46},"in_reply_to":"14ed7049_a0779063","updated":"2022-05-10 15:03:04.000000000","message":"Done","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"c1b3a8f7a0a96b1c3c3c0432a743107678f6e37a","unresolved":true,"context_lines":[{"line_number":2250,"context_line":""},{"line_number":2251,"context_line":"\tif (cache) {"},{"line_number":2252,"context_line":"\t\tregister_unlink_cache(\u0026target-\u003ereg_cache, cache);"},{"line_number":2253,"context_line":"\t\tfor (uint32_t i \u003d 0; i \u003c xtensa-\u003eregs_num; i++) {"},{"line_number":2254,"context_line":"\t\t\tfree(xtensa-\u003ealgo_context_backup[i]);"},{"line_number":2255,"context_line":"\t\t\tfree(cache-\u003ereg_list[i].value);"},{"line_number":2256,"context_line":"\t\t}"}],"source_content_type":"text/x-csrc","patch_set":27,"id":"0823a8b3_2499da06","line":2253,"range":{"start_line":2253,"start_character":27,"end_line":2253,"end_character":43},"updated":"2022-05-10 09:05:25.000000000","message":"cache-\u003enum_regs!\nIf used the number of existing regs, a lot of allocated values leaks.","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"68d6b6a3e93ae7de666133517d73834e9ff4aed7","unresolved":false,"context_lines":[{"line_number":2250,"context_line":""},{"line_number":2251,"context_line":"\tif (cache) {"},{"line_number":2252,"context_line":"\t\tregister_unlink_cache(\u0026target-\u003ereg_cache, cache);"},{"line_number":2253,"context_line":"\t\tfor (uint32_t i \u003d 0; i \u003c xtensa-\u003eregs_num; i++) {"},{"line_number":2254,"context_line":"\t\t\tfree(xtensa-\u003ealgo_context_backup[i]);"},{"line_number":2255,"context_line":"\t\t\tfree(cache-\u003ereg_list[i].value);"},{"line_number":2256,"context_line":"\t\t}"}],"source_content_type":"text/x-csrc","patch_set":27,"id":"02e736f9_9631fed1","line":2253,"range":{"start_line":2253,"start_character":27,"end_line":2253,"end_character":43},"in_reply_to":"0823a8b3_2499da06","updated":"2022-05-10 15:03:04.000000000","message":"Done","commit_id":"27e069355d601e269049ec0d59fc19485ac54776"}],"src/target/xtensa.h":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":20,"context_line":"#ifndef OPENOCD_TARGET_XTENSA_H"},{"line_number":21,"context_line":"#define OPENOCD_TARGET_XTENSA_H"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"#ifdef HAVE_CONFIG_H"},{"line_number":24,"context_line":"#include \"config.h\""},{"line_number":25,"context_line":"#endif"},{"line_number":26,"context_line":"#include \"target.h\""},{"line_number":27,"context_line":"#include \"assert.h\""},{"line_number":28,"context_line":"#include \"breakpoints.h\""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"e709d096_5003418b","line":25,"range":{"start_line":23,"start_character":0,"end_line":25,"end_character":6},"updated":"2022-04-21 22:57:20.000000000","message":"These 3 lines should be in every file .c, not in the .h","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":20,"context_line":"#ifndef OPENOCD_TARGET_XTENSA_H"},{"line_number":21,"context_line":"#define OPENOCD_TARGET_XTENSA_H"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"#ifdef HAVE_CONFIG_H"},{"line_number":24,"context_line":"#include \"config.h\""},{"line_number":25,"context_line":"#endif"},{"line_number":26,"context_line":"#include \"target.h\""},{"line_number":27,"context_line":"#include \"assert.h\""},{"line_number":28,"context_line":"#include \"breakpoints.h\""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"e81e3cd3_655a9faa","line":25,"range":{"start_line":23,"start_character":0,"end_line":25,"end_character":6},"in_reply_to":"e709d096_5003418b","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":245,"context_line":"\tconst int *gdb_regs_mapping;"},{"line_number":246,"context_line":"};"},{"line_number":247,"context_line":""},{"line_number":248,"context_line":"typedef uint32_t xtensa_insn_t;"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"enum xtensa_stepping_isr_mode {"},{"line_number":251,"context_line":"\tXT_STEPPING_ISR_OFF,\t/* interrupts are disabled during stepping */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"85788c0a_4272dfd4","line":248,"updated":"2022-04-21 22:57:20.000000000","message":"no new typedefs! This is reported in the coding style","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":245,"context_line":"\tconst int *gdb_regs_mapping;"},{"line_number":246,"context_line":"};"},{"line_number":247,"context_line":""},{"line_number":248,"context_line":"typedef uint32_t xtensa_insn_t;"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"enum xtensa_stepping_isr_mode {"},{"line_number":251,"context_line":"\tXT_STEPPING_ISR_OFF,\t/* interrupts are disabled during stepping */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"892fe10e_455e2ba5","line":248,"in_reply_to":"85788c0a_4272dfd4","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":95,"context_line":"/* Read User Register */"},{"line_number":96,"context_line":"#define XT_INS_RUR(UR, T) _XT_INS_FORMAT_RRR(0xE30000, UR, T)"},{"line_number":97,"context_line":"/* Write User Register */"},{"line_number":98,"context_line":"#define XT_INS_WUR(UR, T) _XT_INS_FORMAT_RRR(0xF30000, UR, T)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"/* Read Floating-Point Register */"},{"line_number":101,"context_line":"#define XT_INS_RFR(FR, T) _XT_INS_FORMAT_RRR(0xFA0000, ((FR \u003c\u003c 4) | 0x4), T)"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"ea9336f6_0358adaf","line":98,"updated":"2022-04-27 23:09:41.000000000","message":"Write User Register uses _XT_INS_FORMAT_RSR() instead of RRR.  Read User Register is correct.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":95,"context_line":"/* Read User Register */"},{"line_number":96,"context_line":"#define XT_INS_RUR(UR, T) _XT_INS_FORMAT_RRR(0xE30000, UR, T)"},{"line_number":97,"context_line":"/* Write User Register */"},{"line_number":98,"context_line":"#define XT_INS_WUR(UR, T) _XT_INS_FORMAT_RRR(0xF30000, UR, T)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"/* Read Floating-Point Register */"},{"line_number":101,"context_line":"#define XT_INS_RFR(FR, T) _XT_INS_FORMAT_RRR(0xFA0000, ((FR \u003c\u003c 4) | 0x4), T)"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"5ad9c80b_9f28d2cd","line":98,"in_reply_to":"ea9336f6_0358adaf","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"}],"src/target/xtensa/Makefile.am":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"0b1439aca49bc5f06e3bb76490a1c41400324506","unresolved":true,"context_lines":[{"line_number":4,"context_line":"       %D%/xtensa.h \\"},{"line_number":5,"context_line":"       %D%/xtensa_debug_module.c \\"},{"line_number":6,"context_line":"       %D%/xtensa_debug_module.h \\"},{"line_number":7,"context_line":"       %D%/xtensa_regs.h"}],"source_content_type":"application/octet-stream","patch_set":32,"id":"8e525646_a5c8401e","line":7,"updated":"2022-05-15 22:20:20.000000000","message":"add newline at the end of last line of the file. Not add an empty line, just a newline after %D%/xtensa_regs.h","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":4,"context_line":"       %D%/xtensa.h \\"},{"line_number":5,"context_line":"       %D%/xtensa_debug_module.c \\"},{"line_number":6,"context_line":"       %D%/xtensa_debug_module.h \\"},{"line_number":7,"context_line":"       %D%/xtensa_regs.h"}],"source_content_type":"application/octet-stream","patch_set":32,"id":"ce6a71e2_451536bf","line":7,"in_reply_to":"8e525646_a5c8401e","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"}],"src/target/xtensa/xtensa.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":21,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":22,"context_line":" ***************************************************************************/"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"#include \u003cstdlib.h\u003e"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"#ifdef HAVE_CONFIG_H"},{"line_number":27,"context_line":"#include \"config.h\""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"3da666ec_d0585575","line":24,"updated":"2022-05-15 22:07:29.000000000","message":"move this line after the blosck #ifdef HAVE_CONFIG_H/#endif","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":21,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":22,"context_line":" ***************************************************************************/"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"#include \u003cstdlib.h\u003e"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"#ifdef HAVE_CONFIG_H"},{"line_number":27,"context_line":"#include \"config.h\""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"7b964f11_08a2fc9b","line":24,"in_reply_to":"3da666ec_d0585575","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"0b1439aca49bc5f06e3bb76490a1c41400324506","unresolved":true,"context_lines":[{"line_number":520,"context_line":"\t\t\t\t\t\t\t/* reg number of PC for debug interrupt"},{"line_number":521,"context_line":"\t\t\t\t\t\t\t * depends on NDEBUGLEVEL */"},{"line_number":522,"context_line":"\t\t\t\t\t\t\treg_num +\u003d"},{"line_number":523,"context_line":"\t\t\t\t\t\t\t\txtensa-\u003ecore_config-\u003edebug."},{"line_number":524,"context_line":"\t\t\t\t\t\t\t\tirq_level;"},{"line_number":525,"context_line":"\t\t\t\t\t\t}"},{"line_number":526,"context_line":"\t\t\t\t\t\txtensa_queue_exec_ins(xtensa,"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"a0c85108_6f5f65ff","line":523,"updated":"2022-05-15 22:20:20.000000000","message":"don\u0027t break the line in this way; keep together\nreg_num +\u003d xtensa-\u003ecore_config-\u003edebug.irq_level;\nwe accept 120 char/line for exceptional long lines","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":520,"context_line":"\t\t\t\t\t\t\t/* reg number of PC for debug interrupt"},{"line_number":521,"context_line":"\t\t\t\t\t\t\t * depends on NDEBUGLEVEL */"},{"line_number":522,"context_line":"\t\t\t\t\t\t\treg_num +\u003d"},{"line_number":523,"context_line":"\t\t\t\t\t\t\t\txtensa-\u003ecore_config-\u003edebug."},{"line_number":524,"context_line":"\t\t\t\t\t\t\t\tirq_level;"},{"line_number":525,"context_line":"\t\t\t\t\t\t}"},{"line_number":526,"context_line":"\t\t\t\t\t\txtensa_queue_exec_ins(xtensa,"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"88be3e9f_ee3dd2ff","line":523,"in_reply_to":"a0c85108_6f5f65ff","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"0b1439aca49bc5f06e3bb76490a1c41400324506","unresolved":true,"context_lines":[{"line_number":1551,"context_line":"\tif (!xtensa-\u003epermissive_mode) {"},{"line_number":1552,"context_line":"\t\tif (!xtensa_memory_op_validate_range(xtensa, address, (size * count),"},{"line_number":1553,"context_line":"\t\t\t\tXT_MEM_ACCESS_READ)) {"},{"line_number":1554,"context_line":"\t\t\tLOG_DEBUG(\"address \"TARGET_ADDR_FMT \" not readable\", address);"},{"line_number":1555,"context_line":"\t\t\treturn ERROR_FAIL;"},{"line_number":1556,"context_line":"\t\t}"},{"line_number":1557,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"9514bcac_e09f261f","line":1554,"updated":"2022-05-15 22:20:20.000000000","message":"add space before TARGET_ADDR_FMT","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":1551,"context_line":"\tif (!xtensa-\u003epermissive_mode) {"},{"line_number":1552,"context_line":"\t\tif (!xtensa_memory_op_validate_range(xtensa, address, (size * count),"},{"line_number":1553,"context_line":"\t\t\t\tXT_MEM_ACCESS_READ)) {"},{"line_number":1554,"context_line":"\t\t\tLOG_DEBUG(\"address \"TARGET_ADDR_FMT \" not readable\", address);"},{"line_number":1555,"context_line":"\t\t\treturn ERROR_FAIL;"},{"line_number":1556,"context_line":"\t\t}"},{"line_number":1557,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"8890724c_8a3f141e","line":1554,"in_reply_to":"9514bcac_e09f261f","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"0b1439aca49bc5f06e3bb76490a1c41400324506","unresolved":true,"context_lines":[{"line_number":1696,"context_line":"\tif (res \u003d\u003d ERROR_OK)"},{"line_number":1697,"context_line":"\t\tres \u003d xtensa_core_status_check(target);"},{"line_number":1698,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":1699,"context_line":"\t\tLOG_TARGET_WARNING(target, \"Failed writing %d bytes at address \"TARGET_ADDR_FMT,"},{"line_number":1700,"context_line":"\t\t\tcount * size, address);"},{"line_number":1701,"context_line":"\tif (albuff !\u003d buffer)"},{"line_number":1702,"context_line":"\t\tfree(albuff);"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"6e82f7e9_5f66757c","line":1699,"updated":"2022-05-15 22:20:20.000000000","message":"add space before TARGET_ADDR_FMT","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":1696,"context_line":"\tif (res \u003d\u003d ERROR_OK)"},{"line_number":1697,"context_line":"\t\tres \u003d xtensa_core_status_check(target);"},{"line_number":1698,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":1699,"context_line":"\t\tLOG_TARGET_WARNING(target, \"Failed writing %d bytes at address \"TARGET_ADDR_FMT,"},{"line_number":1700,"context_line":"\t\t\tcount * size, address);"},{"line_number":1701,"context_line":"\tif (albuff !\u003d buffer)"},{"line_number":1702,"context_line":"\t\tfree(albuff);"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"2439f21d_fbc86b63","line":1699,"in_reply_to":"6e82f7e9_5f66757c","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"53669f8dab732f295e60f504f8b1361f8b4e9a03","unresolved":true,"context_lines":[{"line_number":400,"context_line":"\tconst struct xtensa_local_mem_config *mem,"},{"line_number":401,"context_line":"\ttarget_addr_t address)"},{"line_number":402,"context_line":"{"},{"line_number":403,"context_line":"\tfor (int i \u003d 0; i \u003c mem-\u003ecount; i++) {"},{"line_number":404,"context_line":"\t\tconst struct xtensa_local_mem_region_config *region \u003d \u0026mem-\u003eregions[i];"},{"line_number":405,"context_line":"\t\tif (address \u003e\u003d region-\u003ebase \u0026\u0026 address \u003c (region-\u003ebase + region-\u003esize))"},{"line_number":406,"context_line":"\t\t\treturn region;"}],"source_content_type":"text/x-csrc","patch_set":34,"id":"b45586e4_25a66dbb","line":403,"range":{"start_line":403,"start_character":6,"end_line":403,"end_character":9},"updated":"2022-05-18 09:14:00.000000000","message":"Lot of signed ints","commit_id":"1e912ed350f20fed289e64e6c2ee7c3b202517cf"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"a8f2ed1937b7f8252d9f72cae817f36548c4d5ec","unresolved":false,"context_lines":[{"line_number":400,"context_line":"\tconst struct xtensa_local_mem_config *mem,"},{"line_number":401,"context_line":"\ttarget_addr_t address)"},{"line_number":402,"context_line":"{"},{"line_number":403,"context_line":"\tfor (int i \u003d 0; i \u003c mem-\u003ecount; i++) {"},{"line_number":404,"context_line":"\t\tconst struct xtensa_local_mem_region_config *region \u003d \u0026mem-\u003eregions[i];"},{"line_number":405,"context_line":"\t\tif (address \u003e\u003d region-\u003ebase \u0026\u0026 address \u003c (region-\u003ebase + region-\u003esize))"},{"line_number":406,"context_line":"\t\t\treturn region;"}],"source_content_type":"text/x-csrc","patch_set":34,"id":"64d82989_6703df92","line":403,"range":{"start_line":403,"start_character":6,"end_line":403,"end_character":9},"in_reply_to":"b45586e4_25a66dbb","updated":"2022-05-18 13:23:55.000000000","message":"Done","commit_id":"1e912ed350f20fed289e64e6c2ee7c3b202517cf"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"53669f8dab732f295e60f504f8b1361f8b4e9a03","unresolved":true,"context_lines":[{"line_number":1192,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1193,"context_line":""},{"line_number":1194,"context_line":"\tfor (int k \u003d 0; k \u003c *reg_list_size; k++) {"},{"line_number":1195,"context_line":"\t\tuint32_t reg_id \u003d xtensa-\u003ecore_config-\u003egdb_regs_mapping[k];"},{"line_number":1196,"context_line":"\t\t(*reg_list)[k] \u003d \u0026xtensa-\u003ecore_cache-\u003ereg_list[reg_id];"},{"line_number":1197,"context_line":"\t}"},{"line_number":1198,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":34,"id":"5f1a1d6e_fecf0380","line":1195,"range":{"start_line":1195,"start_character":2,"end_line":1195,"end_character":10},"updated":"2022-05-18 09:14:00.000000000","message":"Register indices (also in xtensa.h)","commit_id":"1e912ed350f20fed289e64e6c2ee7c3b202517cf"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"a8f2ed1937b7f8252d9f72cae817f36548c4d5ec","unresolved":false,"context_lines":[{"line_number":1192,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1193,"context_line":""},{"line_number":1194,"context_line":"\tfor (int k \u003d 0; k \u003c *reg_list_size; k++) {"},{"line_number":1195,"context_line":"\t\tuint32_t reg_id \u003d xtensa-\u003ecore_config-\u003egdb_regs_mapping[k];"},{"line_number":1196,"context_line":"\t\t(*reg_list)[k] \u003d \u0026xtensa-\u003ecore_cache-\u003ereg_list[reg_id];"},{"line_number":1197,"context_line":"\t}"},{"line_number":1198,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":34,"id":"e7bd9266_ae927fda","line":1195,"range":{"start_line":1195,"start_character":2,"end_line":1195,"end_character":10},"in_reply_to":"5f1a1d6e_fecf0380","updated":"2022-05-18 13:23:55.000000000","message":"Done","commit_id":"1e912ed350f20fed289e64e6c2ee7c3b202517cf"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"53669f8dab732f295e60f504f8b1361f8b4e9a03","unresolved":true,"context_lines":[{"line_number":1987,"context_line":"int xtensa_breakpoint_add(struct target *target, struct breakpoint *breakpoint)"},{"line_number":1988,"context_line":"{"},{"line_number":1989,"context_line":"\tstruct xtensa *xtensa \u003d target_to_xtensa(target);"},{"line_number":1990,"context_line":"\tuint32_t slot;"},{"line_number":1991,"context_line":""},{"line_number":1992,"context_line":"\tif (breakpoint-\u003etype \u003d\u003d BKPT_SOFT) {"},{"line_number":1993,"context_line":"\t\tfor (slot \u003d 0; slot \u003c XT_SW_BREAKPOINTS_MAX_NUM; slot++) {"}],"source_content_type":"text/x-csrc","patch_set":34,"id":"fe5b1714_cdae8c0b","line":1990,"range":{"start_line":1990,"start_character":1,"end_line":1990,"end_character":9},"updated":"2022-05-18 09:14:00.000000000","message":"All slots...","commit_id":"1e912ed350f20fed289e64e6c2ee7c3b202517cf"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"a8f2ed1937b7f8252d9f72cae817f36548c4d5ec","unresolved":false,"context_lines":[{"line_number":1987,"context_line":"int xtensa_breakpoint_add(struct target *target, struct breakpoint *breakpoint)"},{"line_number":1988,"context_line":"{"},{"line_number":1989,"context_line":"\tstruct xtensa *xtensa \u003d target_to_xtensa(target);"},{"line_number":1990,"context_line":"\tuint32_t slot;"},{"line_number":1991,"context_line":""},{"line_number":1992,"context_line":"\tif (breakpoint-\u003etype \u003d\u003d BKPT_SOFT) {"},{"line_number":1993,"context_line":"\t\tfor (slot \u003d 0; slot \u003c XT_SW_BREAKPOINTS_MAX_NUM; slot++) {"}],"source_content_type":"text/x-csrc","patch_set":34,"id":"9da2b426_b4ec9f6a","line":1990,"range":{"start_line":1990,"start_character":1,"end_line":1990,"end_character":9},"in_reply_to":"fe5b1714_cdae8c0b","updated":"2022-05-18 13:23:55.000000000","message":"Done","commit_id":"1e912ed350f20fed289e64e6c2ee7c3b202517cf"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"27c6b5c960f815bed5950ab65501abd4ec04e3ac","unresolved":true,"context_lines":[{"line_number":521,"context_line":"\treturn dm-\u003edbg_ops-\u003equeue_reg_write(dm, reg, data);"},{"line_number":522,"context_line":"}"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"static void xtensa_queue_exec_ins(struct xtensa *xtensa, int32_t ins)"},{"line_number":525,"context_line":"{"},{"line_number":526,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DIR0EXEC, ins);"},{"line_number":527,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"ae413a9d_faef6ebe","line":524,"range":{"start_line":524,"start_character":57,"end_line":524,"end_character":64},"updated":"2022-05-18 16:48:34.000000000","message":"uint32_t ?","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"680b43af3e0661cafcd12d42fd9eaafdd733f099","unresolved":false,"context_lines":[{"line_number":521,"context_line":"\treturn dm-\u003edbg_ops-\u003equeue_reg_write(dm, reg, data);"},{"line_number":522,"context_line":"}"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"static void xtensa_queue_exec_ins(struct xtensa *xtensa, int32_t ins)"},{"line_number":525,"context_line":"{"},{"line_number":526,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DIR0EXEC, ins);"},{"line_number":527,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"2105aa52_b94e19c9","line":524,"range":{"start_line":524,"start_character":57,"end_line":524,"end_character":64},"in_reply_to":"ae413a9d_faef6ebe","updated":"2022-05-18 20:02:09.000000000","message":"Done","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"27c6b5c960f815bed5950ab65501abd4ec04e3ac","unresolved":true,"context_lines":[{"line_number":526,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DIR0EXEC, ins);"},{"line_number":527,"context_line":"}"},{"line_number":528,"context_line":""},{"line_number":529,"context_line":"static bool xtensa_reg_is_readable(int flags, int cpenable)"},{"line_number":530,"context_line":"{"},{"line_number":531,"context_line":"\tif (flags \u0026 XT_REGF_NOREAD)"},{"line_number":532,"context_line":"\t\treturn false;"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"8293e997_05d4c863","line":529,"range":{"start_line":529,"start_character":46,"end_line":529,"end_character":49},"updated":"2022-05-18 16:48:34.000000000","message":"All cpenable uses: uint32_t or what is the original register size and remove type-casts","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"27c6b5c960f815bed5950ab65501abd4ec04e3ac","unresolved":true,"context_lines":[{"line_number":526,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DIR0EXEC, ins);"},{"line_number":527,"context_line":"}"},{"line_number":528,"context_line":""},{"line_number":529,"context_line":"static bool xtensa_reg_is_readable(int flags, int cpenable)"},{"line_number":530,"context_line":"{"},{"line_number":531,"context_line":"\tif (flags \u0026 XT_REGF_NOREAD)"},{"line_number":532,"context_line":"\t\treturn false;"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"23529ed2_efa836c7","line":529,"range":{"start_line":529,"start_character":35,"end_line":529,"end_character":38},"updated":"2022-05-18 16:48:34.000000000","message":"enum xtensa_reg_flags ?","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"680b43af3e0661cafcd12d42fd9eaafdd733f099","unresolved":false,"context_lines":[{"line_number":526,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DIR0EXEC, ins);"},{"line_number":527,"context_line":"}"},{"line_number":528,"context_line":""},{"line_number":529,"context_line":"static bool xtensa_reg_is_readable(int flags, int cpenable)"},{"line_number":530,"context_line":"{"},{"line_number":531,"context_line":"\tif (flags \u0026 XT_REGF_NOREAD)"},{"line_number":532,"context_line":"\t\treturn false;"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"ac40628b_e556478d","line":529,"range":{"start_line":529,"start_character":35,"end_line":529,"end_character":38},"in_reply_to":"23529ed2_efa836c7","updated":"2022-05-18 20:02:09.000000000","message":"Done","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"680b43af3e0661cafcd12d42fd9eaafdd733f099","unresolved":false,"context_lines":[{"line_number":526,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DIR0EXEC, ins);"},{"line_number":527,"context_line":"}"},{"line_number":528,"context_line":""},{"line_number":529,"context_line":"static bool xtensa_reg_is_readable(int flags, int cpenable)"},{"line_number":530,"context_line":"{"},{"line_number":531,"context_line":"\tif (flags \u0026 XT_REGF_NOREAD)"},{"line_number":532,"context_line":"\t\treturn false;"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"27da208a_40f42e45","line":529,"range":{"start_line":529,"start_character":46,"end_line":529,"end_character":49},"in_reply_to":"8293e997_05d4c863","updated":"2022-05-18 20:02:09.000000000","message":"Done","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"27c6b5c960f815bed5950ab65501abd4ec04e3ac","unresolved":true,"context_lines":[{"line_number":530,"context_line":"{"},{"line_number":531,"context_line":"\tif (flags \u0026 XT_REGF_NOREAD)"},{"line_number":532,"context_line":"\t\treturn false;"},{"line_number":533,"context_line":"\tif ((flags \u0026 XT_REGF_COPROC0) \u0026\u0026 (cpenable \u0026 (1 \u003c\u003c 0)) \u003d\u003d 0)"},{"line_number":534,"context_line":"\t\treturn false;"},{"line_number":535,"context_line":"\treturn true;"},{"line_number":536,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"e73a97dc_43fbdfab","line":533,"range":{"start_line":533,"start_character":46,"end_line":533,"end_character":54},"updated":"2022-05-18 16:48:34.000000000","message":"BIT(0)","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"680b43af3e0661cafcd12d42fd9eaafdd733f099","unresolved":false,"context_lines":[{"line_number":530,"context_line":"{"},{"line_number":531,"context_line":"\tif (flags \u0026 XT_REGF_NOREAD)"},{"line_number":532,"context_line":"\t\treturn false;"},{"line_number":533,"context_line":"\tif ((flags \u0026 XT_REGF_COPROC0) \u0026\u0026 (cpenable \u0026 (1 \u003c\u003c 0)) \u003d\u003d 0)"},{"line_number":534,"context_line":"\t\treturn false;"},{"line_number":535,"context_line":"\treturn true;"},{"line_number":536,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"50a46861_8c04c37e","line":533,"range":{"start_line":533,"start_character":46,"end_line":533,"end_character":54},"in_reply_to":"e73a97dc_43fbdfab","updated":"2022-05-18 20:02:09.000000000","message":"Done","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"27c6b5c960f815bed5950ab65501abd4ec04e3ac","unresolved":true,"context_lines":[{"line_number":541,"context_line":"\treturn dm-\u003epwr_ops-\u003equeue_reg_write(dm, reg, data);"},{"line_number":542,"context_line":"}"},{"line_number":543,"context_line":""},{"line_number":544,"context_line":"static bool xtensa_special_reg_exists(struct xtensa *xtensa, int reg_idx)"},{"line_number":545,"context_line":"{"},{"line_number":546,"context_line":"\t/* TODO: array of size XT_NUM_REGS can be used here to map special register ID to"},{"line_number":547,"context_line":"\t * corresponding config option \u0027enabled\u0027 flag */"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"2888d747_bacd907e","line":544,"range":{"start_line":544,"start_character":61,"end_line":544,"end_character":64},"updated":"2022-05-18 16:48:34.000000000","message":"Not sure if it\u0027s not signed because of comparison to enum values.\nSeems me all reg_idx could be unsigned int...","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"680b43af3e0661cafcd12d42fd9eaafdd733f099","unresolved":true,"context_lines":[{"line_number":541,"context_line":"\treturn dm-\u003epwr_ops-\u003equeue_reg_write(dm, reg, data);"},{"line_number":542,"context_line":"}"},{"line_number":543,"context_line":""},{"line_number":544,"context_line":"static bool xtensa_special_reg_exists(struct xtensa *xtensa, int reg_idx)"},{"line_number":545,"context_line":"{"},{"line_number":546,"context_line":"\t/* TODO: array of size XT_NUM_REGS can be used here to map special register ID to"},{"line_number":547,"context_line":"\t * corresponding config option \u0027enabled\u0027 flag */"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"e9d13d8d_f1e0ad64","line":544,"range":{"start_line":544,"start_character":61,"end_line":544,"end_character":64},"in_reply_to":"2888d747_bacd907e","updated":"2022-05-18 20:02:09.000000000","message":"what about enum xtensa_reg_id?","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"eb73ba339e658604344cea9590bb7faac799533b","unresolved":false,"context_lines":[{"line_number":541,"context_line":"\treturn dm-\u003epwr_ops-\u003equeue_reg_write(dm, reg, data);"},{"line_number":542,"context_line":"}"},{"line_number":543,"context_line":""},{"line_number":544,"context_line":"static bool xtensa_special_reg_exists(struct xtensa *xtensa, int reg_idx)"},{"line_number":545,"context_line":"{"},{"line_number":546,"context_line":"\t/* TODO: array of size XT_NUM_REGS can be used here to map special register ID to"},{"line_number":547,"context_line":"\t * corresponding config option \u0027enabled\u0027 flag */"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"5f6a4b5c_74562cb1","line":544,"range":{"start_line":544,"start_character":61,"end_line":544,"end_character":64},"in_reply_to":"97b0d1b3_68f6372d","updated":"2022-05-18 21:41:00.000000000","message":"Agreed.Also removed previous ones.","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"8653265ab9e719b1bcefa2df8db58a12dbb16219","unresolved":true,"context_lines":[{"line_number":541,"context_line":"\treturn dm-\u003epwr_ops-\u003equeue_reg_write(dm, reg, data);"},{"line_number":542,"context_line":"}"},{"line_number":543,"context_line":""},{"line_number":544,"context_line":"static bool xtensa_special_reg_exists(struct xtensa *xtensa, int reg_idx)"},{"line_number":545,"context_line":"{"},{"line_number":546,"context_line":"\t/* TODO: array of size XT_NUM_REGS can be used here to map special register ID to"},{"line_number":547,"context_line":"\t * corresponding config option \u0027enabled\u0027 flag */"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"97b0d1b3_68f6372d","line":544,"range":{"start_line":544,"start_character":61,"end_line":544,"end_character":64},"in_reply_to":"e9d13d8d_f1e0ad64","updated":"2022-05-18 21:27:56.000000000","message":"Yup, it\u0027s better.\nBut why const? There was int before, no const int. To be homogenous you may put const to almost all value called params. Do we need to ensure the parameter wouldn\u0027t be changed inside the function? I hope we don\u0027t, so const seems me useless. Check all occurrences of const enum","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"27c6b5c960f815bed5950ab65501abd4ec04e3ac","unresolved":true,"context_lines":[{"line_number":636,"context_line":"\t\t\t\t\t\t\t\tXT_REG_A3));"},{"line_number":637,"context_line":"\t\t\t\t} else {/*SFR */"},{"line_number":638,"context_line":"\t\t\t\t\tif (reg_list[i].exist) {"},{"line_number":639,"context_line":"\t\t\t\t\t\tint reg_num \u003d xtensa_regs[i].reg_num;"},{"line_number":640,"context_line":"\t\t\t\t\t\tif (reg_num \u003d\u003d XT_PC_REG_NUM_BASE)"},{"line_number":641,"context_line":"\t\t\t\t\t\t\t/* reg number of PC for debug interrupt"},{"line_number":642,"context_line":"\t\t\t\t\t\t\t * depends on NDEBUGLEVEL */"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"aaaf0828_e9c4923f","line":639,"range":{"start_line":639,"start_character":6,"end_line":639,"end_character":9},"updated":"2022-05-18 16:48:34.000000000","message":"unsigned int ?","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"680b43af3e0661cafcd12d42fd9eaafdd733f099","unresolved":false,"context_lines":[{"line_number":636,"context_line":"\t\t\t\t\t\t\t\tXT_REG_A3));"},{"line_number":637,"context_line":"\t\t\t\t} else {/*SFR */"},{"line_number":638,"context_line":"\t\t\t\t\tif (reg_list[i].exist) {"},{"line_number":639,"context_line":"\t\t\t\t\t\tint reg_num \u003d xtensa_regs[i].reg_num;"},{"line_number":640,"context_line":"\t\t\t\t\t\tif (reg_num \u003d\u003d XT_PC_REG_NUM_BASE)"},{"line_number":641,"context_line":"\t\t\t\t\t\t\t/* reg number of PC for debug interrupt"},{"line_number":642,"context_line":"\t\t\t\t\t\t\t * depends on NDEBUGLEVEL */"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"e9315cf5_cbbbec12","line":639,"range":{"start_line":639,"start_character":6,"end_line":639,"end_character":9},"in_reply_to":"aaaf0828_e9c4923f","updated":"2022-05-18 20:02:09.000000000","message":"Done","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"27c6b5c960f815bed5950ab65501abd4ec04e3ac","unresolved":true,"context_lines":[{"line_number":1017,"context_line":"\t\t\t} else if (xtensa_regs[i].type \u003d\u003d XT_REG_FR) {"},{"line_number":1018,"context_line":"\t\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RFR(xtensa_regs[i].reg_num, XT_REG_A3));"},{"line_number":1019,"context_line":"\t\t\t} else {\t/*SFR */"},{"line_number":1020,"context_line":"\t\t\t\tint reg_num \u003d xtensa_regs[i].reg_num;"},{"line_number":1021,"context_line":"\t\t\t\tif (reg_num \u003d\u003d XT_PC_REG_NUM_BASE) {"},{"line_number":1022,"context_line":"\t\t\t\t\t/* reg number of PC for debug interrupt depends on NDEBUGLEVEL */"},{"line_number":1023,"context_line":"\t\t\t\t\treg_num +\u003d xtensa-\u003ecore_config-\u003edebug.irq_level;"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"f4d7dead_ec1ea648","line":1020,"range":{"start_line":1020,"start_character":4,"end_line":1020,"end_character":7},"updated":"2022-05-18 16:48:34.000000000","message":"unsigned int ?","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"680b43af3e0661cafcd12d42fd9eaafdd733f099","unresolved":false,"context_lines":[{"line_number":1017,"context_line":"\t\t\t} else if (xtensa_regs[i].type \u003d\u003d XT_REG_FR) {"},{"line_number":1018,"context_line":"\t\t\t\txtensa_queue_exec_ins(xtensa, XT_INS_RFR(xtensa_regs[i].reg_num, XT_REG_A3));"},{"line_number":1019,"context_line":"\t\t\t} else {\t/*SFR */"},{"line_number":1020,"context_line":"\t\t\t\tint reg_num \u003d xtensa_regs[i].reg_num;"},{"line_number":1021,"context_line":"\t\t\t\tif (reg_num \u003d\u003d XT_PC_REG_NUM_BASE) {"},{"line_number":1022,"context_line":"\t\t\t\t\t/* reg number of PC for debug interrupt depends on NDEBUGLEVEL */"},{"line_number":1023,"context_line":"\t\t\t\t\treg_num +\u003d xtensa-\u003ecore_config-\u003edebug.irq_level;"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"0475a4c6_df820ec1","line":1020,"range":{"start_line":1020,"start_character":4,"end_line":1020,"end_character":7},"in_reply_to":"f4d7dead_ec1ea648","updated":"2022-05-18 20:02:09.000000000","message":"Done","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"db886b6e7a529b73a9d715271437e1814d293170","unresolved":true,"context_lines":[{"line_number":770,"context_line":"\tstruct xtensa *xtensa \u003d target_to_xtensa(target);"},{"line_number":771,"context_line":"\tunsigned int cmd \u003d PWRCTL_DEBUGWAKEUP | PWRCTL_MEMWAKEUP | PWRCTL_COREWAKEUP;"},{"line_number":772,"context_line":""},{"line_number":773,"context_line":"\tLOG_DEBUG(\"%s coreid \u003d %d\", __func__, target-\u003ecoreid);"},{"line_number":774,"context_line":"\txtensa_queue_pwr_reg_write(xtensa, DMREG_PWRCTL, cmd);"},{"line_number":775,"context_line":"\txtensa_queue_pwr_reg_write(xtensa, DMREG_PWRCTL, cmd | PWRCTL_JTAGDEBUGUSE);"},{"line_number":776,"context_line":"\txtensa_dm_queue_enable(\u0026xtensa-\u003edbg_mod);"}],"source_content_type":"text/x-csrc","patch_set":41,"id":"c99201f4_374187b4","line":773,"range":{"start_line":773,"start_character":29,"end_line":773,"end_character":37},"updated":"2022-05-26 05:25:17.000000000","message":"The log infrastructure prepends the message by the name of function if debug_level \u003e\u003d LOG_DEBUG. Please do not duplicate it.\nMore occurrences below.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"af898da98c0c43d64a2fcad3c3f52d63d5a44921","unresolved":false,"context_lines":[{"line_number":770,"context_line":"\tstruct xtensa *xtensa \u003d target_to_xtensa(target);"},{"line_number":771,"context_line":"\tunsigned int cmd \u003d PWRCTL_DEBUGWAKEUP | PWRCTL_MEMWAKEUP | PWRCTL_COREWAKEUP;"},{"line_number":772,"context_line":""},{"line_number":773,"context_line":"\tLOG_DEBUG(\"%s coreid \u003d %d\", __func__, target-\u003ecoreid);"},{"line_number":774,"context_line":"\txtensa_queue_pwr_reg_write(xtensa, DMREG_PWRCTL, cmd);"},{"line_number":775,"context_line":"\txtensa_queue_pwr_reg_write(xtensa, DMREG_PWRCTL, cmd | PWRCTL_JTAGDEBUGUSE);"},{"line_number":776,"context_line":"\txtensa_dm_queue_enable(\u0026xtensa-\u003edbg_mod);"}],"source_content_type":"text/x-csrc","patch_set":41,"id":"34a3d532_cd70cb12","line":773,"range":{"start_line":773,"start_character":29,"end_line":773,"end_character":37},"in_reply_to":"c99201f4_374187b4","updated":"2022-05-26 10:22:54.000000000","message":"Done","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"db886b6e7a529b73a9d715271437e1814d293170","unresolved":true,"context_lines":[{"line_number":1599,"context_line":"\ttarget_addr_t adr \u003d addrstart_al;"},{"line_number":1600,"context_line":"\tuint8_t *albuff;"},{"line_number":1601,"context_line":""},{"line_number":1602,"context_line":"\t/* LOG_INFO(\"%s: %s: reading %d bytes from addr %08X\", target_name(target), __func__, size*count, address);"},{"line_number":1603,"context_line":"\t * LOG_INFO(\"Converted to aligned addresses: read from %08X to %08X\", addrstart_al, addrend_al); */"},{"line_number":1604,"context_line":"\tif (target-\u003estate !\u003d TARGET_HALTED) {"},{"line_number":1605,"context_line":"\t\tLOG_TARGET_WARNING(target, \"target not halted\");"},{"line_number":1606,"context_line":"\t\treturn ERROR_TARGET_NOT_HALTED;"}],"source_content_type":"text/x-csrc","patch_set":41,"id":"0db52320_d0034e84","line":1603,"range":{"start_line":1602,"start_character":1,"end_line":1603,"end_character":100},"updated":"2022-05-26 05:25:17.000000000","message":"Remove or convert to LOG_DEBUG() and fix format specifiers","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"af898da98c0c43d64a2fcad3c3f52d63d5a44921","unresolved":false,"context_lines":[{"line_number":1599,"context_line":"\ttarget_addr_t adr \u003d addrstart_al;"},{"line_number":1600,"context_line":"\tuint8_t *albuff;"},{"line_number":1601,"context_line":""},{"line_number":1602,"context_line":"\t/* LOG_INFO(\"%s: %s: reading %d bytes from addr %08X\", target_name(target), __func__, size*count, address);"},{"line_number":1603,"context_line":"\t * LOG_INFO(\"Converted to aligned addresses: read from %08X to %08X\", addrstart_al, addrend_al); */"},{"line_number":1604,"context_line":"\tif (target-\u003estate !\u003d TARGET_HALTED) {"},{"line_number":1605,"context_line":"\t\tLOG_TARGET_WARNING(target, \"target not halted\");"},{"line_number":1606,"context_line":"\t\treturn ERROR_TARGET_NOT_HALTED;"}],"source_content_type":"text/x-csrc","patch_set":41,"id":"959e8b9e_ca99e9d6","line":1603,"range":{"start_line":1602,"start_character":1,"end_line":1603,"end_character":100},"in_reply_to":"0db52320_d0034e84","updated":"2022-05-26 10:22:54.000000000","message":"Removed","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"db886b6e7a529b73a9d715271437e1814d293170","unresolved":true,"context_lines":[{"line_number":1686,"context_line":"\t\t}"},{"line_number":1687,"context_line":"\t}"},{"line_number":1688,"context_line":""},{"line_number":1689,"context_line":"\t/* LOG_INFO(\"%s: %s: writing %d bytes to addr %08X\", target_name(target), __func__, size*count, address);"},{"line_number":1690,"context_line":"\t * LOG_INFO(\"al start %x al end %x\", addrstart_al, addrend_al); */"},{"line_number":1691,"context_line":"\tif (size \u003d\u003d 0 || count \u003d\u003d 0 || !buffer)"},{"line_number":1692,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":1693,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":41,"id":"6d015d94_95d87409","line":1690,"range":{"start_line":1689,"start_character":1,"end_line":1690,"end_character":67},"updated":"2022-05-26 05:25:17.000000000","message":"Remove or convert to LOG_DEBUG() and fix format specifiers","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"af898da98c0c43d64a2fcad3c3f52d63d5a44921","unresolved":false,"context_lines":[{"line_number":1686,"context_line":"\t\t}"},{"line_number":1687,"context_line":"\t}"},{"line_number":1688,"context_line":""},{"line_number":1689,"context_line":"\t/* LOG_INFO(\"%s: %s: writing %d bytes to addr %08X\", target_name(target), __func__, size*count, address);"},{"line_number":1690,"context_line":"\t * LOG_INFO(\"al start %x al end %x\", addrstart_al, addrend_al); */"},{"line_number":1691,"context_line":"\tif (size \u003d\u003d 0 || count \u003d\u003d 0 || !buffer)"},{"line_number":1692,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":1693,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":41,"id":"44e32d93_652edca1","line":1690,"range":{"start_line":1689,"start_character":1,"end_line":1690,"end_character":67},"in_reply_to":"6d015d94_95d87409","updated":"2022-05-26 10:22:54.000000000","message":"Done","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"}],"src/target/xtensa/xtensa.h":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"0b1439aca49bc5f06e3bb76490a1c41400324506","unresolved":true,"context_lines":[{"line_number":64,"context_line":"#define XT_INS_RFDD      0xf1e010"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"/* Load to DDR register, increase addr register */"},{"line_number":67,"context_line":"#define XT_INS_LDDR32P(S) (0x0070E0 | (S \u003c\u003c 8))"},{"line_number":68,"context_line":"/* Store from DDR register, increase addr register */"},{"line_number":69,"context_line":"#define XT_INS_SDDR32P(S) (0x0070F0 | (S \u003c\u003c 8))"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"9a491c0e_2c9ddd1e","line":67,"updated":"2022-05-15 22:20:20.000000000","message":"add parenthesis around the expanded argument:\n... ((S) \u003c\u003c 8))\nalso in lines below","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":64,"context_line":"#define XT_INS_RFDD      0xf1e010"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"/* Load to DDR register, increase addr register */"},{"line_number":67,"context_line":"#define XT_INS_LDDR32P(S) (0x0070E0 | (S \u003c\u003c 8))"},{"line_number":68,"context_line":"/* Store from DDR register, increase addr register */"},{"line_number":69,"context_line":"#define XT_INS_SDDR32P(S) (0x0070F0 | (S \u003c\u003c 8))"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"07d4b1b2_0af9c6e3","line":67,"in_reply_to":"9a491c0e_2c9ddd1e","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":121,"context_line":"#define XT_INS_RFWO 0x3400"},{"line_number":122,"context_line":"#define XT_INS_RFWU 0x3500"},{"line_number":123,"context_line":"#define XT_INS_RFWO_RFWU_MASK   0xFFFFFF"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"#define XT_ISNS_SZ_MAX                  3"},{"line_number":126,"context_line":"#define XT_LOCAL_MEM_REGIONS_NUM_MAX    8"},{"line_number":127,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"c9a62644_9af49331","line":124,"updated":"2022-05-15 22:07:29.000000000","message":"all the macros so far _XT_INS_* and XT_INS_* are used only in src/target/xtensa/xtensa.c\nCan be moved in that C file?","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":121,"context_line":"#define XT_INS_RFWO 0x3400"},{"line_number":122,"context_line":"#define XT_INS_RFWU 0x3500"},{"line_number":123,"context_line":"#define XT_INS_RFWO_RFWU_MASK   0xFFFFFF"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"#define XT_ISNS_SZ_MAX                  3"},{"line_number":126,"context_line":"#define XT_LOCAL_MEM_REGIONS_NUM_MAX    8"},{"line_number":127,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"462a7c80_f0d897ef","line":124,"in_reply_to":"c9a62644_9af49331","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":299,"context_line":"\treturn target-\u003earch_info;"},{"line_number":300,"context_line":"}"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"static inline int xtensa_queue_dbg_reg_read(struct xtensa *xtensa, unsigned reg, uint8_t *data)"},{"line_number":303,"context_line":"{"},{"line_number":304,"context_line":"\tstruct xtensa_debug_module *dm \u003d \u0026xtensa-\u003edbg_mod;"},{"line_number":305,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"73c7234a_6e8eb821","line":302,"updated":"2022-05-15 22:07:29.000000000","message":"this can be moved in xtensa.c; it\u0027s only used there","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":299,"context_line":"\treturn target-\u003earch_info;"},{"line_number":300,"context_line":"}"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"static inline int xtensa_queue_dbg_reg_read(struct xtensa *xtensa, unsigned reg, uint8_t *data)"},{"line_number":303,"context_line":"{"},{"line_number":304,"context_line":"\tstruct xtensa_debug_module *dm \u003d \u0026xtensa-\u003edbg_mod;"},{"line_number":305,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"808b3fb6_5c4230e1","line":302,"in_reply_to":"5e8507c3_5710f721","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"0b1439aca49bc5f06e3bb76490a1c41400324506","unresolved":true,"context_lines":[{"line_number":299,"context_line":"\treturn target-\u003earch_info;"},{"line_number":300,"context_line":"}"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"static inline int xtensa_queue_dbg_reg_read(struct xtensa *xtensa, unsigned reg, uint8_t *data)"},{"line_number":303,"context_line":"{"},{"line_number":304,"context_line":"\tstruct xtensa_debug_module *dm \u003d \u0026xtensa-\u003edbg_mod;"},{"line_number":305,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"5e8507c3_5710f721","line":302,"in_reply_to":"73c7234a_6e8eb821","updated":"2022-05-15 22:20:20.000000000","message":"also, use \"unsigned int\". Also below.","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":311,"context_line":"\treturn dm-\u003edbg_ops-\u003equeue_reg_read(dm, reg, data);"},{"line_number":312,"context_line":"}"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"static inline int xtensa_queue_dbg_reg_write(struct xtensa *xtensa, unsigned reg, uint32_t data)"},{"line_number":315,"context_line":"{"},{"line_number":316,"context_line":"\tstruct xtensa_debug_module *dm \u003d \u0026xtensa-\u003edbg_mod;"},{"line_number":317,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"4da304a9_f73043c8","line":314,"updated":"2022-05-15 22:07:29.000000000","message":"same for this","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":311,"context_line":"\treturn dm-\u003edbg_ops-\u003equeue_reg_read(dm, reg, data);"},{"line_number":312,"context_line":"}"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"static inline int xtensa_queue_dbg_reg_write(struct xtensa *xtensa, unsigned reg, uint32_t data)"},{"line_number":315,"context_line":"{"},{"line_number":316,"context_line":"\tstruct xtensa_debug_module *dm \u003d \u0026xtensa-\u003edbg_mod;"},{"line_number":317,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":32,"id":"3ba17206_0cefb406","line":314,"in_reply_to":"4da304a9_f73043c8","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":323,"context_line":"\treturn dm-\u003edbg_ops-\u003equeue_reg_write(dm, reg, data);"},{"line_number":324,"context_line":"}"},{"line_number":325,"context_line":""},{"line_number":326,"context_line":"static inline int xtensa_queue_pwr_reg_read(struct xtensa *xtensa,"},{"line_number":327,"context_line":"\tunsigned reg,"},{"line_number":328,"context_line":"\tuint8_t *data,"},{"line_number":329,"context_line":"\tuint32_t clear)"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"130c191a_cec35157","line":326,"range":{"start_line":326,"start_character":18,"end_line":326,"end_character":43},"updated":"2022-05-15 22:07:29.000000000","message":"never used. what to do with it?","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":323,"context_line":"\treturn dm-\u003edbg_ops-\u003equeue_reg_write(dm, reg, data);"},{"line_number":324,"context_line":"}"},{"line_number":325,"context_line":""},{"line_number":326,"context_line":"static inline int xtensa_queue_pwr_reg_read(struct xtensa *xtensa,"},{"line_number":327,"context_line":"\tunsigned reg,"},{"line_number":328,"context_line":"\tuint8_t *data,"},{"line_number":329,"context_line":"\tuint32_t clear)"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"19d90c15_3a523adc","line":326,"range":{"start_line":326,"start_character":18,"end_line":326,"end_character":43},"in_reply_to":"130c191a_cec35157","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":332,"context_line":"\treturn dm-\u003epwr_ops-\u003equeue_reg_read(dm, reg, data, clear);"},{"line_number":333,"context_line":"}"},{"line_number":334,"context_line":""},{"line_number":335,"context_line":"static inline int xtensa_queue_pwr_reg_write(struct xtensa *xtensa, unsigned reg, uint32_t data)"},{"line_number":336,"context_line":"{"},{"line_number":337,"context_line":"\tstruct xtensa_debug_module *dm \u003d \u0026xtensa-\u003edbg_mod;"},{"line_number":338,"context_line":"\treturn dm-\u003epwr_ops-\u003equeue_reg_write(dm, reg, data);"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"66f12827_33e5974e","line":335,"updated":"2022-05-15 22:07:29.000000000","message":"this can be moved in xtensa.c; it\u0027s only used there","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":332,"context_line":"\treturn dm-\u003epwr_ops-\u003equeue_reg_read(dm, reg, data, clear);"},{"line_number":333,"context_line":"}"},{"line_number":334,"context_line":""},{"line_number":335,"context_line":"static inline int xtensa_queue_pwr_reg_write(struct xtensa *xtensa, unsigned reg, uint32_t data)"},{"line_number":336,"context_line":"{"},{"line_number":337,"context_line":"\tstruct xtensa_debug_module *dm \u003d \u0026xtensa-\u003edbg_mod;"},{"line_number":338,"context_line":"\treturn dm-\u003epwr_ops-\u003equeue_reg_write(dm, reg, data);"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"cea2a57c_3369c076","line":335,"in_reply_to":"66f12827_33e5974e","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":338,"context_line":"\treturn dm-\u003epwr_ops-\u003equeue_reg_write(dm, reg, data);"},{"line_number":339,"context_line":"}"},{"line_number":340,"context_line":""},{"line_number":341,"context_line":"static inline void xtensa_queue_exec_ins(struct xtensa *xtensa, int32_t ins)"},{"line_number":342,"context_line":"{"},{"line_number":343,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DIR0EXEC, ins);"},{"line_number":344,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"0586aab8_1950c5c8","line":341,"updated":"2022-05-15 22:07:29.000000000","message":"same","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":338,"context_line":"\treturn dm-\u003epwr_ops-\u003equeue_reg_write(dm, reg, data);"},{"line_number":339,"context_line":"}"},{"line_number":340,"context_line":""},{"line_number":341,"context_line":"static inline void xtensa_queue_exec_ins(struct xtensa *xtensa, int32_t ins)"},{"line_number":342,"context_line":"{"},{"line_number":343,"context_line":"\txtensa_queue_dbg_reg_write(xtensa, NARADR_DIR0EXEC, ins);"},{"line_number":344,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"0df9ee4d_b40e4017","line":341,"in_reply_to":"0586aab8_1950c5c8","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":350,"context_line":"int xtensa_target_init(struct command_context *cmd_ctx, struct target *target);"},{"line_number":351,"context_line":"void xtensa_target_deinit(struct target *target);"},{"line_number":352,"context_line":""},{"line_number":353,"context_line":"static inline void xtensa_stepping_isr_mode_set(struct target *target,"},{"line_number":354,"context_line":"\tenum xtensa_stepping_isr_mode mode)"},{"line_number":355,"context_line":"{"},{"line_number":356,"context_line":"\tstruct xtensa *xtensa \u003d target_to_xtensa(target);"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"11e40d65_0b426bde","line":353,"updated":"2022-05-15 22:07:29.000000000","message":"never used\nI stop here","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":350,"context_line":"int xtensa_target_init(struct command_context *cmd_ctx, struct target *target);"},{"line_number":351,"context_line":"void xtensa_target_deinit(struct target *target);"},{"line_number":352,"context_line":""},{"line_number":353,"context_line":"static inline void xtensa_stepping_isr_mode_set(struct target *target,"},{"line_number":354,"context_line":"\tenum xtensa_stepping_isr_mode mode)"},{"line_number":355,"context_line":"{"},{"line_number":356,"context_line":"\tstruct xtensa *xtensa \u003d target_to_xtensa(target);"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"6211da47_f4c5b40f","line":353,"in_reply_to":"11e40d65_0b426bde","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":484,"context_line":"COMMAND_HELPER(xtensa_cmd_tracestart_do, struct xtensa *xtensa);"},{"line_number":485,"context_line":"COMMAND_HELPER(xtensa_cmd_tracestop_do, struct xtensa *xtensa);"},{"line_number":486,"context_line":"COMMAND_HELPER(xtensa_cmd_tracedump_do, struct xtensa *xtensa, const char *fname);"},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"extern const struct command_registration xtensa_command_handlers[];"},{"line_number":489,"context_line":""},{"line_number":490,"context_line":"#endif"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"60a392d3_ddb255d3","line":487,"updated":"2022-05-15 22:07:29.000000000","message":"none of the COMMAND_HELPER above needs to be declared in a .H file because are only defined and used in src/target/xtensa/xtensa.c\nAny other function/struct/enum that has no reason to be exposed in a .H and can go in its own .C and eventually be statically declared?","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":484,"context_line":"COMMAND_HELPER(xtensa_cmd_tracestart_do, struct xtensa *xtensa);"},{"line_number":485,"context_line":"COMMAND_HELPER(xtensa_cmd_tracestop_do, struct xtensa *xtensa);"},{"line_number":486,"context_line":"COMMAND_HELPER(xtensa_cmd_tracedump_do, struct xtensa *xtensa, const char *fname);"},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"extern const struct command_registration xtensa_command_handlers[];"},{"line_number":489,"context_line":""},{"line_number":490,"context_line":"#endif"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"623801be_df737af9","line":487,"in_reply_to":"60a392d3_ddb255d3","updated":"2022-05-16 11:59:40.000000000","message":"Actually we will be using them in one of the next patches. \nhttps://github.com/espressif/openocd-esp32/blob/master/src/target/esp_xtensa_smp.c#L838\n\nBut removed for now.","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":487,"context_line":""},{"line_number":488,"context_line":"extern const struct command_registration xtensa_command_handlers[];"},{"line_number":489,"context_line":""},{"line_number":490,"context_line":"#endif"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"12369445_1751739d","line":490,"updated":"2022-05-15 22:07:29.000000000","message":"#endif /* OPENOCD_TARGET_XTENSA_H */","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":487,"context_line":""},{"line_number":488,"context_line":"extern const struct command_registration xtensa_command_handlers[];"},{"line_number":489,"context_line":""},{"line_number":490,"context_line":"#endif"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"b6909c3e_8ea2046e","line":490,"in_reply_to":"12369445_1751739d","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"acc50a45ca848dccdb0e5781b126581e9a334e4c","unresolved":true,"context_lines":[{"line_number":184,"context_line":" * Represents a generic Xtensa core."},{"line_number":185,"context_line":" */"},{"line_number":186,"context_line":"struct xtensa {"},{"line_number":187,"context_line":"\tconst struct xtensa_config *core_config;"},{"line_number":188,"context_line":"\tstruct xtensa_debug_module dbg_mod;"},{"line_number":189,"context_line":"\tstruct reg_cache *core_cache;"},{"line_number":190,"context_line":"\tuint32_t regs_num;"}],"source_content_type":"text/x-csrc","patch_set":38,"id":"1fc846f6_10c24591","line":187,"updated":"2022-05-19 22:04:01.000000000","message":"this struct xtensa is assigned to target-\u003earch_info\n\nTo detect what type of target it is, we use to put a magic number as very first element of the struct (you can check the use of CORTEX_M_COMMON_MAGIC).\nActually I cannot guarantee this to be valid for every target, but almost!\n\nPlease add as very first field\nuint32_t common_magic;\n(we have 17 \"int\" and 11 \"uint32_t\", what a mess. Should all be \"unsigned int\").\n\ndefine on top of this file a random value that doesn\u0027t clash with others, e.g.\n#define XTENSA_COMMON_MAGIC 0x54e4e53a\n\nSomewhere in the code assign\nxxx-\u003ecommon_magic \u003d XTENSA_COMMON_MAGIC;\nI think either in esp32s2_target_create() or in xtensa_init_arch_info()\n\nThen, even if I don\u0027t like the assert(), in target_to_xtensa() you can check that it\u0027s really a struct xtensa before returning it.","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"6cd6850a0160f86505a919c57c37e886c382c9d2","unresolved":false,"context_lines":[{"line_number":184,"context_line":" * Represents a generic Xtensa core."},{"line_number":185,"context_line":" */"},{"line_number":186,"context_line":"struct xtensa {"},{"line_number":187,"context_line":"\tconst struct xtensa_config *core_config;"},{"line_number":188,"context_line":"\tstruct xtensa_debug_module dbg_mod;"},{"line_number":189,"context_line":"\tstruct reg_cache *core_cache;"},{"line_number":190,"context_line":"\tuint32_t regs_num;"}],"source_content_type":"text/x-csrc","patch_set":38,"id":"1f945eb5_46b71644","line":187,"in_reply_to":"1fc846f6_10c24591","updated":"2022-05-21 15:07:49.000000000","message":"Done","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"}],"src/target/xtensa/xtensa_debug_module.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"e37a1fa3849f0ada200829e2f0edb00814df18d0","unresolved":true,"context_lines":[{"line_number":15,"context_line":" *   You should have received a copy of the GNU General Public License     *"},{"line_number":16,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":17,"context_line":" ***************************************************************************/"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"#include \"xtensa_debug_module.h\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"#define TAPINS_PWRCTL           0x08"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"4b95d753_4552a3b5","line":18,"updated":"2022-05-15 22:07:29.000000000","message":"add:\n#ifdef HAVE_CONFIG_H\n#include \"config.h\"\n#endif","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":15,"context_line":" *   You should have received a copy of the GNU General Public License     *"},{"line_number":16,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":17,"context_line":" ***************************************************************************/"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"#include \"xtensa_debug_module.h\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"#define TAPINS_PWRCTL           0x08"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"0f663f2a_56f2affe","line":18,"in_reply_to":"4b95d753_4552a3b5","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"0b1439aca49bc5f06e3bb76490a1c41400324506","unresolved":true,"context_lines":[{"line_number":37,"context_line":"\tstruct scan_field field;"},{"line_number":38,"context_line":"\tuint8_t t[4] \u003d { 0 };"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"\tmemset(\u0026field, 0, sizeof field);"},{"line_number":41,"context_line":"\tfield.num_bits \u003d dm-\u003etap-\u003eir_length;"},{"line_number":42,"context_line":"\tfield.out_value \u003d t;"},{"line_number":43,"context_line":"\tbuf_set_u32(t, 0, field.num_bits, value);"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"4810e11a_04c6603b","line":40,"updated":"2022-05-15 22:20:20.000000000","message":"sizeof(field)\nalso below","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f124c58af3c8af9e7dc8d79cf282710138338933","unresolved":false,"context_lines":[{"line_number":37,"context_line":"\tstruct scan_field field;"},{"line_number":38,"context_line":"\tuint8_t t[4] \u003d { 0 };"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"\tmemset(\u0026field, 0, sizeof field);"},{"line_number":41,"context_line":"\tfield.num_bits \u003d dm-\u003etap-\u003eir_length;"},{"line_number":42,"context_line":"\tfield.out_value \u003d t;"},{"line_number":43,"context_line":"\tbuf_set_u32(t, 0, field.num_bits, value);"}],"source_content_type":"text/x-csrc","patch_set":32,"id":"ebd372bd_d4796e94","line":40,"in_reply_to":"4810e11a_04c6603b","updated":"2022-05-16 11:59:40.000000000","message":"Done","commit_id":"76cec62afbe001c4ca87b4f00f59c16655a45495"}],"src/target/xtensa/xtensa_debug_module.h":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"acc50a45ca848dccdb0e5781b126581e9a334e4c","unresolved":true,"context_lines":[{"line_number":263,"context_line":"\tuint32_t stoppc;"},{"line_number":264,"context_line":"\tbool after_is_words;"},{"line_number":265,"context_line":"\tuint32_t after;"},{"line_number":266,"context_line":"\tuint32_t stopmask;\t/* -1: disable PC match option */"},{"line_number":267,"context_line":"};"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"struct xtensa_perfmon_config {"}],"source_content_type":"text/x-csrc","patch_set":38,"id":"38549432_02871ff3","line":266,"updated":"2022-05-19 22:04:01.000000000","message":"value -1 for a uint32_t ????\ndefine a macro\n#define STOPMASK_DISABLED UINT32_MAX\nand use it in place of \"-1\" and \"(uint32_t)-1\" in\nsrc/target/xtensa/xtensa_debug_module.c:215\nsrc/target/xtensa/xtensa_debug_module.c:226\nsrc/target/xtensa/xtensa.c:2502","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"6cd6850a0160f86505a919c57c37e886c382c9d2","unresolved":false,"context_lines":[{"line_number":263,"context_line":"\tuint32_t stoppc;"},{"line_number":264,"context_line":"\tbool after_is_words;"},{"line_number":265,"context_line":"\tuint32_t after;"},{"line_number":266,"context_line":"\tuint32_t stopmask;\t/* -1: disable PC match option */"},{"line_number":267,"context_line":"};"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"struct xtensa_perfmon_config {"}],"source_content_type":"text/x-csrc","patch_set":38,"id":"43f16c2e_367b14ff","line":266,"in_reply_to":"38549432_02871ff3","updated":"2022-05-21 15:07:49.000000000","message":"Done","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"}],"src/target/xtensa/xtensa_regs.h":[{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"27c6b5c960f815bed5950ab65501abd4ec04e3ac","unresolved":true,"context_lines":[{"line_number":258,"context_line":""},{"line_number":259,"context_line":"struct xtensa_reg_desc {"},{"line_number":260,"context_line":"\tconst char *name;"},{"line_number":261,"context_line":"\tint reg_num;\t\t\t/* ISA register num (meaning depends on register type) */"},{"line_number":262,"context_line":"\tenum xtensa_reg_type type;"},{"line_number":263,"context_line":"\tenum xtensa_reg_flags flags;"},{"line_number":264,"context_line":"};"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"f4c6b987_60b516f9","line":261,"range":{"start_line":261,"start_character":1,"end_line":261,"end_character":4},"updated":"2022-05-18 16:48:34.000000000","message":"unsigned int ?","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"680b43af3e0661cafcd12d42fd9eaafdd733f099","unresolved":false,"context_lines":[{"line_number":258,"context_line":""},{"line_number":259,"context_line":"struct xtensa_reg_desc {"},{"line_number":260,"context_line":"\tconst char *name;"},{"line_number":261,"context_line":"\tint reg_num;\t\t\t/* ISA register num (meaning depends on register type) */"},{"line_number":262,"context_line":"\tenum xtensa_reg_type type;"},{"line_number":263,"context_line":"\tenum xtensa_reg_flags flags;"},{"line_number":264,"context_line":"};"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"e91998aa_88e82a32","line":261,"range":{"start_line":261,"start_character":1,"end_line":261,"end_character":4},"in_reply_to":"f4c6b987_60b516f9","updated":"2022-05-18 20:02:09.000000000","message":"Done","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"27c6b5c960f815bed5950ab65501abd4ec04e3ac","unresolved":true,"context_lines":[{"line_number":266,"context_line":"struct xtensa_user_reg_desc {"},{"line_number":267,"context_line":"\tconst char *name;"},{"line_number":268,"context_line":"\t/* ISA register num (meaning depends on register type) */"},{"line_number":269,"context_line":"\tint reg_num;"},{"line_number":270,"context_line":"\tenum xtensa_reg_flags flags;"},{"line_number":271,"context_line":"\tuint32_t size;"},{"line_number":272,"context_line":"\tconst struct reg_arch_type *type;"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"a742784b_8c924e08","line":269,"range":{"start_line":269,"start_character":1,"end_line":269,"end_character":4},"updated":"2022-05-18 16:48:34.000000000","message":"unsigned int ?","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"680b43af3e0661cafcd12d42fd9eaafdd733f099","unresolved":false,"context_lines":[{"line_number":266,"context_line":"struct xtensa_user_reg_desc {"},{"line_number":267,"context_line":"\tconst char *name;"},{"line_number":268,"context_line":"\t/* ISA register num (meaning depends on register type) */"},{"line_number":269,"context_line":"\tint reg_num;"},{"line_number":270,"context_line":"\tenum xtensa_reg_flags flags;"},{"line_number":271,"context_line":"\tuint32_t size;"},{"line_number":272,"context_line":"\tconst struct reg_arch_type *type;"}],"source_content_type":"text/x-csrc","patch_set":36,"id":"4215645a_04fa35cc","line":269,"range":{"start_line":269,"start_character":1,"end_line":269,"end_character":4},"in_reply_to":"a742784b_8c924e08","updated":"2022-05-18 20:02:09.000000000","message":"Done","commit_id":"b3eec7524e865ae735a85b56ade83b7b66debd47"}],"src/target/xtensa_debug_module.c":[{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":275,"context_line":"\tint res \u003d jtag_execute_queue();"},{"line_number":276,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":277,"context_line":"\t\treturn res;"},{"line_number":278,"context_line":"\tstatus-\u003estat \u003d buf_get_u32(traxstat_buf, 0, 32);"},{"line_number":279,"context_line":"\treturn ERROR_OK;"},{"line_number":280,"context_line":"}"},{"line_number":281,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"a6176b15_2b32d4ca","line":278,"updated":"2022-04-27 23:09:41.000000000","message":"Since this is an exported function, should status be checked to be non-null prior to writing?  I know it is a structure address so not strictly necessary, but could be safer.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":275,"context_line":"\tint res \u003d jtag_execute_queue();"},{"line_number":276,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":277,"context_line":"\t\treturn res;"},{"line_number":278,"context_line":"\tstatus-\u003estat \u003d buf_get_u32(traxstat_buf, 0, 32);"},{"line_number":279,"context_line":"\treturn ERROR_OK;"},{"line_number":280,"context_line":"}"},{"line_number":281,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":15,"id":"4abc7623_47bba34b","line":278,"in_reply_to":"a6176b15_2b32d4ca","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":294,"context_line":"\tint res \u003d jtag_execute_queue();"},{"line_number":295,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":296,"context_line":"\t\treturn res;"},{"line_number":297,"context_line":"\tconfig-\u003ectrl \u003d buf_get_u32(traxctl_buf, 0, 32);"},{"line_number":298,"context_line":"\tconfig-\u003ememaddr_start \u003d buf_get_u32(memadrstart_buf, 0, 32);"},{"line_number":299,"context_line":"\tconfig-\u003ememaddr_end \u003d buf_get_u32(memadrend_buf, 0, 32);"},{"line_number":300,"context_line":"\tconfig-\u003eaddr \u003d buf_get_u32(adr_buf, 0, 32);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"c3f12a74_b99ed4ce","line":297,"updated":"2022-04-27 23:09:41.000000000","message":"Since this is an exported function, should config be checked to be non-null prior to writing?  I know it is a structure address so not strictly necessary, but could be safer.","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":294,"context_line":"\tint res \u003d jtag_execute_queue();"},{"line_number":295,"context_line":"\tif (res !\u003d ERROR_OK)"},{"line_number":296,"context_line":"\t\treturn res;"},{"line_number":297,"context_line":"\tconfig-\u003ectrl \u003d buf_get_u32(traxctl_buf, 0, 32);"},{"line_number":298,"context_line":"\tconfig-\u003ememaddr_start \u003d buf_get_u32(memadrstart_buf, 0, 32);"},{"line_number":299,"context_line":"\tconfig-\u003ememaddr_end \u003d buf_get_u32(memadrend_buf, 0, 32);"},{"line_number":300,"context_line":"\tconfig-\u003eaddr \u003d buf_get_u32(adr_buf, 0, 32);"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"88bc2af0_b72c62d9","line":297,"in_reply_to":"c3f12a74_b99ed4ce","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":304,"context_line":"int xtensa_dm_trace_data_read(struct xtensa_debug_module *dm, uint8_t *dest, uint32_t size)"},{"line_number":305,"context_line":"{"},{"line_number":306,"context_line":"\tfor (uint32_t i \u003d 0; i \u003c size / 4; i++)"},{"line_number":307,"context_line":"\t\tdm-\u003edbg_ops-\u003equeue_reg_read(dm, NARADR_TRAXDATA, \u0026dest[i * 4]);"},{"line_number":308,"context_line":"\txtensa_dm_queue_tdi_idle(dm);"},{"line_number":309,"context_line":"\tint res \u003d jtag_execute_queue();"},{"line_number":310,"context_line":"\tif (res !\u003d ERROR_OK)"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"1ca301d4_14f58d29","line":307,"updated":"2022-04-27 23:09:41.000000000","message":"Since this is an exported function, should dest be checked to be non-null prior to dereferencing?","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":304,"context_line":"int xtensa_dm_trace_data_read(struct xtensa_debug_module *dm, uint8_t *dest, uint32_t size)"},{"line_number":305,"context_line":"{"},{"line_number":306,"context_line":"\tfor (uint32_t i \u003d 0; i \u003c size / 4; i++)"},{"line_number":307,"context_line":"\t\tdm-\u003edbg_ops-\u003equeue_reg_read(dm, NARADR_TRAXDATA, \u0026dest[i * 4]);"},{"line_number":308,"context_line":"\txtensa_dm_queue_tdi_idle(dm);"},{"line_number":309,"context_line":"\tint res \u003d jtag_execute_queue();"},{"line_number":310,"context_line":"\tif (res !\u003d ERROR_OK)"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"0313aae7_91f3322f","line":307,"in_reply_to":"1ca301d4_14f58d29","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"cd25457a6c158c53c4e274c40de371803b35301c","unresolved":true,"context_lines":[{"line_number":316,"context_line":"int xtensa_dm_perfmon_enable(struct xtensa_debug_module *dm, int counter_id,"},{"line_number":317,"context_line":"\tconst struct xtensa_perfmon_config *config)"},{"line_number":318,"context_line":"{"},{"line_number":319,"context_line":"\tuint8_t pmstat_u8[4];"},{"line_number":320,"context_line":"\tuint32_t pmctrl \u003d ((config-\u003etracelevel) \u003c\u003c 4) +"},{"line_number":321,"context_line":"\t\t(config-\u003eselect \u003c\u003c 8) +"},{"line_number":322,"context_line":"\t\t(config-\u003emask \u003c\u003c 16) +"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"183732a7_eb6b40d2","line":319,"range":{"start_line":319,"start_character":16,"end_line":319,"end_character":18},"updated":"2022-04-27 17:06:23.000000000","message":"pmstat_buf would be better","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"635ef5f1f2010fb3090f01c8831fc7691f961797","unresolved":false,"context_lines":[{"line_number":316,"context_line":"int xtensa_dm_perfmon_enable(struct xtensa_debug_module *dm, int counter_id,"},{"line_number":317,"context_line":"\tconst struct xtensa_perfmon_config *config)"},{"line_number":318,"context_line":"{"},{"line_number":319,"context_line":"\tuint8_t pmstat_u8[4];"},{"line_number":320,"context_line":"\tuint32_t pmctrl \u003d ((config-\u003etracelevel) \u003c\u003c 4) +"},{"line_number":321,"context_line":"\t\t(config-\u003eselect \u003c\u003c 8) +"},{"line_number":322,"context_line":"\t\t(config-\u003emask \u003c\u003c 16) +"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"59deb838_2a7d44b6","line":319,"range":{"start_line":319,"start_character":16,"end_line":319,"end_character":18},"in_reply_to":"183732a7_eb6b40d2","updated":"2022-04-27 21:37:46.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"}],"src/target/xtensa_debug_module.h":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":42,"context_line":" Module to happen correctly. When it is set, any write to this bit clears it."},{"line_number":43,"context_line":" Either don\u0027t access it, or re-write it to 1 so JTAG accesses continue."},{"line_number":44,"context_line":"*/"},{"line_number":45,"context_line":"#define PWRCTL_JTAGDEBUGUSE (1\u003c\u003c7)"},{"line_number":46,"context_line":"#define PWRCTL_DEBUGRESET   (1\u003c\u003c6)"},{"line_number":47,"context_line":"#define PWRCTL_CORERESET    (1\u003c\u003c4)"},{"line_number":48,"context_line":"#define PWRCTL_DEBUGWAKEUP  (1\u003c\u003c2)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"2d00bf51_ec5b0a33","line":45,"updated":"2022-04-21 22:57:20.000000000","message":"BIT(7)","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":42,"context_line":" Module to happen correctly. When it is set, any write to this bit clears it."},{"line_number":43,"context_line":" Either don\u0027t access it, or re-write it to 1 so JTAG accesses continue."},{"line_number":44,"context_line":"*/"},{"line_number":45,"context_line":"#define PWRCTL_JTAGDEBUGUSE (1\u003c\u003c7)"},{"line_number":46,"context_line":"#define PWRCTL_DEBUGRESET   (1\u003c\u003c6)"},{"line_number":47,"context_line":"#define PWRCTL_CORERESET    (1\u003c\u003c4)"},{"line_number":48,"context_line":"#define PWRCTL_DEBUGWAKEUP  (1\u003c\u003c2)"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"000f48d3_2b278580","line":45,"in_reply_to":"2d00bf51_ec5b0a33","updated":"2022-04-22 14:02:08.000000000","message":"Done","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6c3c9603fa52988600f07ec2fa5fabbef1162321","unresolved":true,"context_lines":[{"line_number":238,"context_line":"\tint (*queue_reg_write)(struct xtensa_debug_module *dm, unsigned reg, uint8_t data);"},{"line_number":239,"context_line":"};"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"typedef uint8_t xtensa_pwrstat_t;"},{"line_number":242,"context_line":"typedef uint32_t xtensa_ocdid_t;"},{"line_number":243,"context_line":"typedef uint32_t xtensa_dsr_t;"},{"line_number":244,"context_line":"typedef uint32_t xtensa_traxstat_t;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"3b1a2b98_d906939e","line":241,"updated":"2022-04-21 22:57:20.000000000","message":"no new typedefs","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"ec910f82bfbe67625e122f6e379a59e8cf8b617b","unresolved":false,"context_lines":[{"line_number":238,"context_line":"\tint (*queue_reg_write)(struct xtensa_debug_module *dm, unsigned reg, uint8_t data);"},{"line_number":239,"context_line":"};"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"typedef uint8_t xtensa_pwrstat_t;"},{"line_number":242,"context_line":"typedef uint32_t xtensa_ocdid_t;"},{"line_number":243,"context_line":"typedef uint32_t xtensa_dsr_t;"},{"line_number":244,"context_line":"typedef uint32_t xtensa_traxstat_t;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"7e171569_ae60260b","line":241,"in_reply_to":"3945ea4f_12f76df9","updated":"2022-05-12 13:55:33.000000000","message":"Agreed with Antonio, Exception for xtensa. These new typedefs are in use only in  the xtensa folder. No new typedefs will be added in the next patches.","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"914b98edfffc255366e2e59ca777712cc5d639e9","unresolved":false,"context_lines":[{"line_number":238,"context_line":"\tint (*queue_reg_write)(struct xtensa_debug_module *dm, unsigned reg, uint8_t data);"},{"line_number":239,"context_line":"};"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"typedef uint8_t xtensa_pwrstat_t;"},{"line_number":242,"context_line":"typedef uint32_t xtensa_ocdid_t;"},{"line_number":243,"context_line":"typedef uint32_t xtensa_dsr_t;"},{"line_number":244,"context_line":"typedef uint32_t xtensa_traxstat_t;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"9b2717b5_6c5a649b","line":241,"in_reply_to":"3b1a2b98_d906939e","updated":"2022-04-22 14:02:08.000000000","message":"There is already several new typedefs. \ntypedef uint64_t target_addr_t;\ntypedef int64_t threadid_t\ntypedef int64_t symbol_address_t; \n\nI suggest to keep ours too, but anyway I removed.","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"89c6301a9af1b72f4996e72bd5eb935154c1592b","unresolved":true,"context_lines":[{"line_number":238,"context_line":"\tint (*queue_reg_write)(struct xtensa_debug_module *dm, unsigned reg, uint8_t data);"},{"line_number":239,"context_line":"};"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"typedef uint8_t xtensa_pwrstat_t;"},{"line_number":242,"context_line":"typedef uint32_t xtensa_ocdid_t;"},{"line_number":243,"context_line":"typedef uint32_t xtensa_dsr_t;"},{"line_number":244,"context_line":"typedef uint32_t xtensa_traxstat_t;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"beb6ddc1_05d65011","line":241,"in_reply_to":"9b2717b5_6c5a649b","updated":"2022-05-06 15:21:00.000000000","message":"@Antonio, can we keep these typedefs as is? They increase the readability of the code like target_addr_t. We can make a struct with only one object but this will like unnecessary constraint.","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"02a30207aeba054ad3aca8bd5e18c4fe50cc4d9c","unresolved":true,"context_lines":[{"line_number":238,"context_line":"\tint (*queue_reg_write)(struct xtensa_debug_module *dm, unsigned reg, uint8_t data);"},{"line_number":239,"context_line":"};"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"typedef uint8_t xtensa_pwrstat_t;"},{"line_number":242,"context_line":"typedef uint32_t xtensa_ocdid_t;"},{"line_number":243,"context_line":"typedef uint32_t xtensa_dsr_t;"},{"line_number":244,"context_line":"typedef uint32_t xtensa_traxstat_t;"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"3945ea4f_12f76df9","line":241,"in_reply_to":"beb6ddc1_05d65011","updated":"2022-05-09 17:30:34.000000000","message":"Agree with @Erhan that they increase readability.  Since these are constrained to the XDM module and don\u0027t impact the larger target layer, is there much of a downside?","commit_id":"408c3a1401c5873943afa9cc9478c7abd8a07cb3"},{"author":{"_account_id":1001982,"name":"Ian Thompson","email":"ianst@cadence.com","username":"ianstcdns"},"change_message_id":"92ecd5c779e38a0e9a7c6937d39b14194cbb329c","unresolved":true,"context_lines":[{"line_number":96,"context_line":"#define NARADR_DIR7         0x4F"},{"line_number":97,"context_line":"/*Misc registers */"},{"line_number":98,"context_line":"#define NARADR_PWRCTL       0x58"},{"line_number":99,"context_line":"#define NARADR_PWRSTAT      0x69"},{"line_number":100,"context_line":"#define NARADR_ERISTAT      0x5A"},{"line_number":101,"context_line":"/*CoreSight registers */"},{"line_number":102,"context_line":"#define NARADR_ITCTRL       0x60"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"840f865f_3d65c2d3","line":99,"range":{"start_line":99,"start_character":8,"end_line":99,"end_character":28},"updated":"2022-04-27 23:09:41.000000000","message":"Typo -- NARADR_PWRSTAT should be at 0x59","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"f22f2e99c2af14f3d350e10ea277990d1da231a1","unresolved":false,"context_lines":[{"line_number":96,"context_line":"#define NARADR_DIR7         0x4F"},{"line_number":97,"context_line":"/*Misc registers */"},{"line_number":98,"context_line":"#define NARADR_PWRCTL       0x58"},{"line_number":99,"context_line":"#define NARADR_PWRSTAT      0x69"},{"line_number":100,"context_line":"#define NARADR_ERISTAT      0x5A"},{"line_number":101,"context_line":"/*CoreSight registers */"},{"line_number":102,"context_line":"#define NARADR_ITCTRL       0x60"}],"source_content_type":"text/x-csrc","patch_set":15,"id":"81341c57_8dd9067e","line":99,"range":{"start_line":99,"start_character":8,"end_line":99,"end_character":28},"in_reply_to":"840f865f_3d65c2d3","updated":"2022-05-04 21:18:43.000000000","message":"Done","commit_id":"98c485de052b1f1c5e96aafffe9c8afae00806a5"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":215,"context_line":"\t/** enable operation */"},{"line_number":216,"context_line":"\tint (*queue_enable)(struct xtensa_debug_module *dm);"},{"line_number":217,"context_line":"\t/** register read. */"},{"line_number":218,"context_line":"\tint (*queue_reg_read)(struct xtensa_debug_module *dm, unsigned reg, uint8_t *data);"},{"line_number":219,"context_line":"\t/** register write. */"},{"line_number":220,"context_line":"\tint (*queue_reg_write)(struct xtensa_debug_module *dm, unsigned reg, uint32_t data);"},{"line_number":221,"context_line":"};"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"aff31b2d_caffa5bd","line":218,"updated":"2022-05-06 22:41:29.000000000","message":"use \"unsigned int\", not \"unsigned\"","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":215,"context_line":"\t/** enable operation */"},{"line_number":216,"context_line":"\tint (*queue_enable)(struct xtensa_debug_module *dm);"},{"line_number":217,"context_line":"\t/** register read. */"},{"line_number":218,"context_line":"\tint (*queue_reg_read)(struct xtensa_debug_module *dm, unsigned reg, uint8_t *data);"},{"line_number":219,"context_line":"\t/** register write. */"},{"line_number":220,"context_line":"\tint (*queue_reg_write)(struct xtensa_debug_module *dm, unsigned reg, uint32_t data);"},{"line_number":221,"context_line":"};"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"2cc3c5eb_cb0ca9ba","line":218,"in_reply_to":"aff31b2d_caffa5bd","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"}],"src/target/xtensa_regs.h":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":18,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":19,"context_line":" ***************************************************************************/"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"#include \u003ctarget/register.h\u003e"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"enum xtensa_reg_id {"},{"line_number":24,"context_line":"\tXT_REG_IDX_PC \u003d 0,"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"a65946c3_6e06efcd","line":21,"updated":"2022-05-06 22:41:29.000000000","message":"not really used, as far as I can see\nYou should only need the statement:\n struct reg_arch_type;","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":18,"context_line":" *   along with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e. *"},{"line_number":19,"context_line":" ***************************************************************************/"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"#include \u003ctarget/register.h\u003e"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"enum xtensa_reg_id {"},{"line_number":24,"context_line":"\tXT_REG_IDX_PC \u003d 0,"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"ee9816fc_6b5ee339","line":21,"in_reply_to":"a65946c3_6e06efcd","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":240,"context_line":""},{"line_number":241,"context_line":"#define XT_REG_LEN\t(sizeof(uint32_t))"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"enum xtensa_reg_type_t {"},{"line_number":244,"context_line":"\tXT_REG_GENERAL \u003d 0,\t\t/* General-purpose register; part of the windowed register set */"},{"line_number":245,"context_line":"\tXT_REG_USER \u003d 1,\t\t/* User register, needs RUR to read */"},{"line_number":246,"context_line":"\tXT_REG_SPECIAL \u003d 2,\t\t/* Special register, needs RSR to read */"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"b0b4feef_448f2a43","line":243,"updated":"2022-05-06 22:41:29.000000000","message":"without suffix \"_t\"","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":240,"context_line":""},{"line_number":241,"context_line":"#define XT_REG_LEN\t(sizeof(uint32_t))"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"enum xtensa_reg_type_t {"},{"line_number":244,"context_line":"\tXT_REG_GENERAL \u003d 0,\t\t/* General-purpose register; part of the windowed register set */"},{"line_number":245,"context_line":"\tXT_REG_USER \u003d 1,\t\t/* User register, needs RUR to read */"},{"line_number":246,"context_line":"\tXT_REG_SPECIAL \u003d 2,\t\t/* Special register, needs RSR to read */"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"4d6b596a_7859ff4f","line":243,"in_reply_to":"b0b4feef_448f2a43","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":249,"context_line":"\tXT_REG_FR \u003d 5,\t\t\t/* Floating-point register */"},{"line_number":250,"context_line":"};"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"enum xtensa_reg_flags_t {"},{"line_number":253,"context_line":"\tXT_REGF_NOREAD \u003d 0x01,\t/* Register is write-only */"},{"line_number":254,"context_line":"\tXT_REGF_COPROC0 \u003d 0x02\t/* Can\u0027t be read if coproc0 isn\u0027t enabled */"},{"line_number":255,"context_line":"};"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"ec5058de_3359248e","line":252,"updated":"2022-05-06 22:41:29.000000000","message":"also here","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":249,"context_line":"\tXT_REG_FR \u003d 5,\t\t\t/* Floating-point register */"},{"line_number":250,"context_line":"};"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"enum xtensa_reg_flags_t {"},{"line_number":253,"context_line":"\tXT_REGF_NOREAD \u003d 0x01,\t/* Register is write-only */"},{"line_number":254,"context_line":"\tXT_REGF_COPROC0 \u003d 0x02\t/* Can\u0027t be read if coproc0 isn\u0027t enabled */"},{"line_number":255,"context_line":"};"}],"source_content_type":"text/x-csrc","patch_set":22,"id":"8c2247a8_da9c1e93","line":252,"in_reply_to":"ec5058de_3359248e","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"}],"tcl/board/esp32s2-kaluga-1.cfg":[{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"a7c8928976a384861880930f2895edc2f879f0eb","unresolved":true,"context_lines":[{"line_number":10,"context_line":"source [find interface/ftdi/esp32s2_kaluga_v1.cfg]"},{"line_number":11,"context_line":"source [find target/esp32s2.cfg]"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"# The speed of the JTAG interface, in KHz. If you get DSR/DIR errors (and they"},{"line_number":14,"context_line":"# do not relate to OpenOCD trying to read from a memory range without physical"},{"line_number":15,"context_line":"# memory being present there), you can try lowering this."},{"line_number":16,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"}],"source_content_type":"text/x-ttcn-cfg","patch_set":43,"id":"00b27ce1_d3d61ea4","line":13,"range":{"start_line":13,"start_character":38,"end_line":13,"end_character":39},"updated":"2022-05-29 13:52:06.000000000","message":"Lower-case k please","commit_id":"42f3e638f836221f58e3b7705c1e321c1f11ad6e"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"31d32e2ffd3cf5f23fe86ede663be9460a0b833c","unresolved":false,"context_lines":[{"line_number":10,"context_line":"source [find interface/ftdi/esp32s2_kaluga_v1.cfg]"},{"line_number":11,"context_line":"source [find target/esp32s2.cfg]"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"# The speed of the JTAG interface, in KHz. If you get DSR/DIR errors (and they"},{"line_number":14,"context_line":"# do not relate to OpenOCD trying to read from a memory range without physical"},{"line_number":15,"context_line":"# memory being present there), you can try lowering this."},{"line_number":16,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"}],"source_content_type":"text/x-ttcn-cfg","patch_set":43,"id":"e681a552_74764926","line":13,"range":{"start_line":13,"start_character":38,"end_line":13,"end_character":39},"in_reply_to":"00b27ce1_d3d61ea4","updated":"2022-05-29 17:19:45.000000000","message":"Done","commit_id":"42f3e638f836221f58e3b7705c1e321c1f11ad6e"}],"tcl/interface/ftdi/esp32s2_kaluga_v1.cfg":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":35,"context_line":"#"},{"line_number":36,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":37,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":38,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":22,"id":"4b22fafa_86aca202","line":38,"updated":"2022-05-06 22:41:29.000000000","message":"move adapter speed in the tcl/target/ file","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":35,"context_line":"#"},{"line_number":36,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":37,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":38,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":22,"id":"9f03632b_06863f7b","line":38,"in_reply_to":"4b22fafa_86aca202","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"acc50a45ca848dccdb0e5781b126581e9a334e4c","unresolved":true,"context_lines":[{"line_number":32,"context_line":"# The speed of the JTAG interface, in KHz. If you get DSR/DIR errors (and they"},{"line_number":33,"context_line":"# do not relate to OpenOCD trying to read from a memory range without physical"},{"line_number":34,"context_line":"# memory being present there), you can try lowering this."},{"line_number":35,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":38,"id":"3a1dc03c_91975281","line":35,"updated":"2022-05-19 22:04:01.000000000","message":"remove the empty line at the end of the file","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"6cd6850a0160f86505a919c57c37e886c382c9d2","unresolved":false,"context_lines":[{"line_number":32,"context_line":"# The speed of the JTAG interface, in KHz. If you get DSR/DIR errors (and they"},{"line_number":33,"context_line":"# do not relate to OpenOCD trying to read from a memory range without physical"},{"line_number":34,"context_line":"# memory being present there), you can try lowering this."},{"line_number":35,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":38,"id":"9bf8d84d_32dcdee1","line":35,"in_reply_to":"3a1dc03c_91975281","updated":"2022-05-21 15:07:49.000000000","message":"Done","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"a7c8928976a384861880930f2895edc2f879f0eb","unresolved":true,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"# ESP32* series chips do not have a TRST input, and the SRST line is connected"},{"line_number":25,"context_line":"# to the EN pin."},{"line_number":26,"context_line":"# The target code doesn\u0027t handle SRST reset properly yet, so this is"},{"line_number":27,"context_line":"# commented out:"},{"line_number":28,"context_line":"# ftdi layout_signal nSRST -oe 0x0020"},{"line_number":29,"context_line":"reset_config none"}],"source_content_type":"text/x-ttcn-cfg","patch_set":43,"id":"23419910_aa6e0e5e","line":27,"range":{"start_line":26,"start_character":0,"end_line":27,"end_character":16},"updated":"2022-05-29 13:52:06.000000000","message":"IMO SRST works properly, just needs a delay after the reset pulse.\nAdd\n adapter srst delay 10\n\nto esp32s2.cfg (10 msec worked for me, you may need set more) and re-test with\n reset_config srst_only","commit_id":"42f3e638f836221f58e3b7705c1e321c1f11ad6e"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"31d32e2ffd3cf5f23fe86ede663be9460a0b833c","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"# ESP32* series chips do not have a TRST input, and the SRST line is connected"},{"line_number":25,"context_line":"# to the EN pin."},{"line_number":26,"context_line":"# The target code doesn\u0027t handle SRST reset properly yet, so this is"},{"line_number":27,"context_line":"# commented out:"},{"line_number":28,"context_line":"# ftdi layout_signal nSRST -oe 0x0020"},{"line_number":29,"context_line":"reset_config none"}],"source_content_type":"text/x-ttcn-cfg","patch_set":43,"id":"113d4897_59e2f8b8","line":27,"range":{"start_line":26,"start_character":0,"end_line":27,"end_character":16},"in_reply_to":"23419910_aa6e0e5e","updated":"2022-05-29 17:19:45.000000000","message":"Thank you Tomas for digging this out. We have an internal task to fix sRST pin reset and reset/poll implementation. Until then, I would like to keep this as is.","commit_id":"42f3e638f836221f58e3b7705c1e321c1f11ad6e"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"a7c8928976a384861880930f2895edc2f879f0eb","unresolved":true,"context_lines":[{"line_number":26,"context_line":"# The target code doesn\u0027t handle SRST reset properly yet, so this is"},{"line_number":27,"context_line":"# commented out:"},{"line_number":28,"context_line":"# ftdi layout_signal nSRST -oe 0x0020"},{"line_number":29,"context_line":"reset_config none"}],"source_content_type":"text/x-ttcn-cfg","patch_set":43,"id":"0c2c4aef_17dd3c59","line":29,"range":{"start_line":29,"start_character":0,"end_line":29,"end_character":17},"updated":"2022-05-29 13:52:06.000000000","message":"If \u0027adapter srst delay\u0027 solves the problem above, remove this. By the way, \u0027reset_config none\u0027 is the default, no need to set it explicitly.","commit_id":"42f3e638f836221f58e3b7705c1e321c1f11ad6e"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"31d32e2ffd3cf5f23fe86ede663be9460a0b833c","unresolved":false,"context_lines":[{"line_number":26,"context_line":"# The target code doesn\u0027t handle SRST reset properly yet, so this is"},{"line_number":27,"context_line":"# commented out:"},{"line_number":28,"context_line":"# ftdi layout_signal nSRST -oe 0x0020"},{"line_number":29,"context_line":"reset_config none"}],"source_content_type":"text/x-ttcn-cfg","patch_set":43,"id":"ab4f525d_7d829110","line":29,"range":{"start_line":29,"start_character":0,"end_line":29,"end_character":17},"in_reply_to":"0c2c4aef_17dd3c59","updated":"2022-05-29 17:19:45.000000000","message":"Done","commit_id":"42f3e638f836221f58e3b7705c1e321c1f11ad6e"}],"tcl/target/esp32s2.cfg":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6e4834a109320fddf51746f55f07c260ef617b07","unresolved":true,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"target create $_TARGETNAME esp32s2 -endian little -chain-position $_TAPNAME"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"$_TARGETNAME configure -event gdb-attach {"},{"line_number":27,"context_line":"    # \u0027halt\u0027 is necessary to auto-probe flash bank when GDB is connected and generate proper memory map"},{"line_number":28,"context_line":"\thalt"},{"line_number":29,"context_line":"}"}],"source_content_type":"text/x-ttcn-cfg","patch_set":22,"id":"8581c4e2_5d43bfdb","line":26,"updated":"2022-05-06 22:41:29.000000000","message":"This is already the default gdb-attach event for OpenOCD. No need to add it again","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"b992311e0a280d39859efba1a75b3bf4d2742044","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"target create $_TARGETNAME esp32s2 -endian little -chain-position $_TAPNAME"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"$_TARGETNAME configure -event gdb-attach {"},{"line_number":27,"context_line":"    # \u0027halt\u0027 is necessary to auto-probe flash bank when GDB is connected and generate proper memory map"},{"line_number":28,"context_line":"\thalt"},{"line_number":29,"context_line":"}"}],"source_content_type":"text/x-ttcn-cfg","patch_set":22,"id":"26b759bc_cddd5480","line":26,"in_reply_to":"8581c4e2_5d43bfdb","updated":"2022-05-09 13:20:40.000000000","message":"Done","commit_id":"f11650bd2c521b71d5668aaa42fc30d9b6ffba2f"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"acc50a45ca848dccdb0e5781b126581e9a334e4c","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":33,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":34,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":38,"id":"f0e0286b_b607c08e","line":34,"updated":"2022-05-19 22:04:01.000000000","message":"add newline at the end of the file\nNot an empty line, but a newline char at the end of last line","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"6cd6850a0160f86505a919c57c37e886c382c9d2","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":33,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":34,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":38,"id":"907232da_f506f789","line":34,"in_reply_to":"f0e0286b_b607c08e","updated":"2022-05-21 15:07:49.000000000","message":"Done","commit_id":"235f5ae8bed86ff06b136cb547b9c7cca14ca23d"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"d014c0da0f8d9cab90c9da38ab487bfeed4275a8","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":33,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":34,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":41,"id":"2a02485f_dccaf489","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":19},"updated":"2022-05-25 19:04:46.000000000","message":"Just a recommendation - I\u0027m not against merging the patch as is.\n\nWe usually put \u0027adapter speed\u0027 setting to the target cfg only if the clock is substantially limited by the target. This is not the case, so I would prefer to revert the change requested by Antonio\nhttps://review.openocd.org/c/openocd/+/6940/22..41/tcl/interface/ftdi/esp32s2_kaluga_v1.cfg#b38\n\nSeems not a big problem as 20 MHz clk is not insane high and most of adapters can manage such speed.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"614f4bf7fc2105ac636b3bd2944f7ca1f8df89d3","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":33,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":34,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":41,"id":"bc63a6b1_bbbd676a","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":19},"in_reply_to":"2205e319_32f83903","updated":"2022-05-26 13:11:40.000000000","message":"This is never ending discussion. See e.g.\nhttps://review.openocd.org/c/openocd/+/6527/comment/159a65e4_fdb5ef7f/\n\nUsers can also run\n openocd -f adapter.cfg -f target.cfg -c \u0027adapter speed 1234\u0027\n\nYes, some users regard issuing the additional command as very annoying. I almost always write per project user config openocd.cfg, so I don\u0027t mind - I just enter project directory and run \u0027opencfg\u0027\n\nThe missing \u0027adapter speed\u0027 is an easy error to find. On the other hand slightly over-speed adapter clk could generate totally cryptic random errors and one could spend hard times before he find the reason. That\u0027s why I prefer to force the user to decide the speed on his own.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"af898da98c0c43d64a2fcad3c3f52d63d5a44921","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":33,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":34,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":41,"id":"e199f6c9_9e28aa1c","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":19},"in_reply_to":"2a02485f_dccaf489","updated":"2022-05-26 10:22:54.000000000","message":"I know Antonio has good reasons to keep this in the target config. I did same change for ESP32 and ESP32-S3. When last decision is made I can revert for all in one of the patches.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"8083319840b63291f40e42180ffed231e660895a","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":33,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":34,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":41,"id":"2205e319_32f83903","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":19},"in_reply_to":"acad863f_d29dc049","updated":"2022-05-26 12:06:30.000000000","message":"But users can run OpenOCD giving only adapter and target from the command line. So having the speed only in the board config can be another problem.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"711e76d42554bd90999b538b09005ad72ff0db35","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":33,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":34,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":41,"id":"fa4cd5a2_9745ba37","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":19},"in_reply_to":"b9f245cb_3d461443","updated":"2022-05-26 17:32:07.000000000","message":"Agree it\u0027s a never ending story.\nOk for moving it in board file.\nWe have this problem because we have no default for the clock speed.\nToday openocd quits if user doesn\u0027t set a speed. It could be a nice improvement to instead only issue a warning and use a dumb low speed like 1 or 10 kHz. This low speed will work even in case of systems that requires RTCK.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"1d3650f37cb597f50c47ce674f4f27750645cd24","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":33,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":34,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":41,"id":"b9f245cb_3d461443","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":19},"in_reply_to":"bc63a6b1_bbbd676a","updated":"2022-05-26 14:49:33.000000000","message":"btw, I agree with you. It is better to have it in the board config. Override is possible from the command line. Waiting for Antonio\u0027s comment here.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"8523db830bb4a978b2b29b1d3506b5652f4a1d97","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":33,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":34,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":41,"id":"acad863f_d29dc049","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":19},"in_reply_to":"e199f6c9_9e28aa1c","updated":"2022-05-26 12:02:02.000000000","message":"Oops, we should not revert the change above. Antonio was right that \u0027adapter speed\u0027 should not be in interface cfg. I propose to put it to the board cfg, it would be the safest place.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"e571e1adfd00e5b66927e67234929e50a276f45b","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"# On ESP32-S2, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz"},{"line_number":33,"context_line":"# if CPU frequency is 160MHz or 240MHz."},{"line_number":34,"context_line":"adapter speed 20000"}],"source_content_type":"text/x-ttcn-cfg","patch_set":41,"id":"c1703a87_f4dd9c52","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":19},"in_reply_to":"fa4cd5a2_9745ba37","updated":"2022-05-26 20:13:48.000000000","message":"`adapter speed` is moved to the board config file.","commit_id":"088c94f1c04678a3d374c7f79ba9ec9961aeaa9d"}]}
