)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3a62fdf7_0c152ee9","updated":"2025-10-26 11:41:09.000000000","message":"Thanks for your patch.\nI\u0027m not used to review code in the flash subsystem, so my review focuses on coding style only and not on the functionality. Other maintainers will take care of the functionality.\n\nThe automatic build has failed because:\n- all the code uses spaces instead of TAB for indentation. Please fix it\n- the commit message doesn\u0027t have an explanation after the title. Please add it\n- prefer use BIT(), this is in my comments\n- missing newline at end of files, also in my comments\n- multiple command in a single line","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"7409e1a5_2fb2a5d3","in_reply_to":"3a62fdf7_0c152ee9","updated":"2026-06-11 09:16:56.000000000","message":"Done","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000160,"name":"Paul Fertser","email":"fercerpav@gmail.com","username":"pfertser"},"change_message_id":"6c0d30439b6933e1ed50da378ec9b12ecb2f97d7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"779fed77_e3090750","updated":"2026-01-28 20:30:21.000000000","message":"Hello Dinesh,\n\nThank you for the patch. Please review CI result now, it was bogus error the first time it run (due to upgrade happening in background) but I re-triggered it now and so it shows some legit problems with your submission.","commit_id":"08ba065848e553346b540028d235d54566b090a7"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"3e6a9e5e_38ef2939","updated":"2026-04-10 08:25:56.000000000","message":"Hi, here are some comments.","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"33d57321_464e75cb","updated":"2026-06-17 09:36:14.000000000","message":"I have some more points, see my comments below. Please note that I haven\u0027t pointed out every problem, but rather general rules that apply to many parts of the code. Please adjust everything accordingly.\n\nAs mentioned for other contributions: it would be helpful to have hardware available to test the code. If possible, please consider providing the OpenOCD testers or maintainers with hardware samples, such as development boards.","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"}],"doc/openocd.texi":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":7077,"context_line":"@item Skipping @code{0xFF}-only regions for faster flashing"},{"line_number":7078,"context_line":"@end itemize"},{"line_number":7079,"context_line":""},{"line_number":7080,"context_line":"The driver is located at: @file{src/flash/nor/pic32cx_bz.c}."},{"line_number":7081,"context_line":""},{"line_number":7082,"context_line":"@example"},{"line_number":7083,"context_line":"flash bank $_FLASHNAME pic32cx_bz 0x01000000 0x00100000 0 0 $_TARGETNAME"}],"source_content_type":"text/x-texinfo","patch_set":1,"id":"cae3dc93_cc7f00bf","line":7080,"updated":"2025-10-26 11:41:09.000000000","message":"No need for this information. This is a manual for the user, not a guide for future developers/contributors.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":7077,"context_line":"@item Skipping @code{0xFF}-only regions for faster flashing"},{"line_number":7078,"context_line":"@end itemize"},{"line_number":7079,"context_line":""},{"line_number":7080,"context_line":"The driver is located at: @file{src/flash/nor/pic32cx_bz.c}."},{"line_number":7081,"context_line":""},{"line_number":7082,"context_line":"@example"},{"line_number":7083,"context_line":"flash bank $_FLASHNAME pic32cx_bz 0x01000000 0x00100000 0 0 $_TARGETNAME"}],"source_content_type":"text/x-texinfo","patch_set":1,"id":"490ebb1e_39eb16b9","line":7080,"in_reply_to":"cae3dc93_cc7f00bf","updated":"2026-06-11 09:16:56.000000000","message":"Removed","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":7155,"context_line":"This command releases internal reset held by DSU"},{"line_number":7156,"context_line":"and prepares reset vector catch in case of reset halt."},{"line_number":7157,"context_line":"Command is used internally in event reset-deassert-post."},{"line_number":7158,"context_line":"@end deffn"},{"line_number":7159,"context_line":"@end deffn"},{"line_number":7160,"context_line":""},{"line_number":7161,"context_line":"@deffn {Flash Driver} {avr}"}],"source_content_type":"text/x-texinfo","patch_set":5,"id":"b909a614_43f5d41a","line":7158,"updated":"2026-04-10 08:25:56.000000000","message":"The driver registers \"erase_page\" and \"write_word\" subcommands for\npic32cx_bz, but they appear to be missing from the user documentation. Should\nthey be documented here as well?","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":7155,"context_line":"This command releases internal reset held by DSU"},{"line_number":7156,"context_line":"and prepares reset vector catch in case of reset halt."},{"line_number":7157,"context_line":"Command is used internally in event reset-deassert-post."},{"line_number":7158,"context_line":"@end deffn"},{"line_number":7159,"context_line":"@end deffn"},{"line_number":7160,"context_line":""},{"line_number":7161,"context_line":"@deffn {Flash Driver} {avr}"}],"source_content_type":"text/x-texinfo","patch_set":5,"id":"de3349ac_5509477d","line":7158,"in_reply_to":"b909a614_43f5d41a","updated":"2026-06-11 09:16:56.000000000","message":"Added to the documentation","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":true,"context_lines":[{"line_number":7178,"context_line":"and prepares reset vector catch in case of reset halt."},{"line_number":7179,"context_line":"Command is used internally in event reset-deassert-post."},{"line_number":7180,"context_line":"@end deffn"},{"line_number":7181,"context_line":"@deffn {Command} {pic32cx_handle_erase_page_command}"},{"line_number":7182,"context_line":"Erase the flash page containing the specified flash address"},{"line_number":7183,"context_line":"@end deffn"},{"line_number":7184,"context_line":"@deffn {Command} {pic32cx_handle_write_word_command}"}],"source_content_type":"text/x-texinfo","patch_set":7,"id":"c859e1bc_b1432efc","line":7181,"updated":"2026-06-17 09:36:14.000000000","message":"Explain me the idea and use case behind `pic32cx_handle_erase_page_command` and `pic32cx_handle_write_word_command`, please.","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"}],"src/flash/nor/Makefile.am":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":84,"context_line":"\t%D%/xcf.c \\"},{"line_number":85,"context_line":"\t%D%/xmc1xxx.c \\"},{"line_number":86,"context_line":"\t%D%/xmc4xxx.c \\"},{"line_number":87,"context_line":"\t%D%/pic32cx_bz.c"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"NORHEADERS \u003d \\"},{"line_number":90,"context_line":"\t%D%/artery.h \\"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"54029abc_75cfb28c","line":87,"updated":"2025-10-26 11:41:09.000000000","message":"move it above for alphabetic order","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":84,"context_line":"\t%D%/xcf.c \\"},{"line_number":85,"context_line":"\t%D%/xmc1xxx.c \\"},{"line_number":86,"context_line":"\t%D%/xmc4xxx.c \\"},{"line_number":87,"context_line":"\t%D%/pic32cx_bz.c"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"NORHEADERS \u003d \\"},{"line_number":90,"context_line":"\t%D%/artery.h \\"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"42a8b17f_e06221c5","line":87,"in_reply_to":"54029abc_75cfb28c","updated":"2026-06-11 09:16:56.000000000","message":"Moved above in the alphabetic order.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"}],"src/flash/nor/driver.h":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":313,"context_line":"extern const struct flash_driver xcf_flash;"},{"line_number":314,"context_line":"extern const struct flash_driver xmc1xxx_flash;"},{"line_number":315,"context_line":"extern const struct flash_driver xmc4xxx_flash;"},{"line_number":316,"context_line":"extern const struct flash_driver pic32cx_bz_flash;"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"#endif /* OPENOCD_FLASH_NOR_DRIVER_H */"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"c9a5cbe8_ba3b2b69","line":316,"updated":"2025-10-26 11:41:09.000000000","message":"Please move it above to keep the list sorted.\nIt should go between `ocl_flash` and `pic32mx_flash`.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":313,"context_line":"extern const struct flash_driver xcf_flash;"},{"line_number":314,"context_line":"extern const struct flash_driver xmc1xxx_flash;"},{"line_number":315,"context_line":"extern const struct flash_driver xmc4xxx_flash;"},{"line_number":316,"context_line":"extern const struct flash_driver pic32cx_bz_flash;"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"#endif /* OPENOCD_FLASH_NOR_DRIVER_H */"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"0a8b96eb_2bddb772","line":316,"in_reply_to":"c9a5cbe8_ba3b2b69","updated":"2026-06-11 09:16:56.000000000","message":"Moved as suggested","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"}],"src/flash/nor/drivers.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":92,"context_line":"\t\u0026xcf_flash,"},{"line_number":93,"context_line":"\t\u0026xmc1xxx_flash,"},{"line_number":94,"context_line":"\t\u0026xmc4xxx_flash,"},{"line_number":95,"context_line":"\t\u0026pic32cx_bz_flash,"},{"line_number":96,"context_line":"};"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"const struct flash_driver *flash_driver_find_by_name(const char *name)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"13ae0396_5d83eb37","line":95,"updated":"2025-10-26 11:41:09.000000000","message":"move it above, respecting alphabetic order","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":92,"context_line":"\t\u0026xcf_flash,"},{"line_number":93,"context_line":"\t\u0026xmc1xxx_flash,"},{"line_number":94,"context_line":"\t\u0026xmc4xxx_flash,"},{"line_number":95,"context_line":"\t\u0026pic32cx_bz_flash,"},{"line_number":96,"context_line":"};"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"const struct flash_driver *flash_driver_find_by_name(const char *name)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"21402970_ce64f496","line":95,"in_reply_to":"13ae0396_5d83eb37","updated":"2026-06-11 09:16:56.000000000","message":"Moved above in the alphabetic order.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"}],"src/flash/nor/pic32cx_bz.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":4,"context_line":" *   Copyright (C) 2025 by Microchip Technologies Inc                                  *"},{"line_number":5,"context_line":" *   Author: Dinesh Arasu - dinesh.arasu@microchip.com                                 *"},{"line_number":6,"context_line":" *                                                                                     *"},{"line_number":7,"context_line":" *   Description: Flash driver for WBZ and PIC32CX_BZx Microchip Curiosity Board        *"},{"line_number":8,"context_line":" **************************************************************************************/"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"#ifdef HAVE_CONFIG_H"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"ef0d63b3_b1bc8de2","line":7,"updated":"2025-10-26 11:41:09.000000000","message":"The `*` character at the end of the line is not aligned with the previous lines, and the whole series is not aligned with the first line of the comment block.\nMaybe drop completely the `*` character at the end of the lines so any change in this comment becomes easier!","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":4,"context_line":" *   Copyright (C) 2025 by Microchip Technologies Inc                                  *"},{"line_number":5,"context_line":" *   Author: Dinesh Arasu - dinesh.arasu@microchip.com                                 *"},{"line_number":6,"context_line":" *                                                                                     *"},{"line_number":7,"context_line":" *   Description: Flash driver for WBZ and PIC32CX_BZx Microchip Curiosity Board        *"},{"line_number":8,"context_line":" **************************************************************************************/"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"#ifdef HAVE_CONFIG_H"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"3b100dd8_52fcbd5d","line":7,"in_reply_to":"ef0d63b3_b1bc8de2","updated":"2026-06-11 09:16:56.000000000","message":"Fixed as suggested.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":25,"context_line":"#define DSU_DID_REG 0x41000018U"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"/* Generic NVM operation bits */"},{"line_number":28,"context_line":"#define NVMCON_NVMWREN          (1 \u003c\u003c 14)"},{"line_number":29,"context_line":"#define NVMCON_NVMWR            (1 \u003c\u003c 15)"},{"line_number":30,"context_line":"#define NVMCON_OP_WORD_PROG     0x4001"},{"line_number":31,"context_line":"#define NVMCON_OP_ROW_PROG      0x4003"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"109dc98c_f339f06c","line":28,"updated":"2025-10-26 11:41:09.000000000","message":"use `BIT(14)`. Similar for the next line","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":25,"context_line":"#define DSU_DID_REG 0x41000018U"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"/* Generic NVM operation bits */"},{"line_number":28,"context_line":"#define NVMCON_NVMWREN          (1 \u003c\u003c 14)"},{"line_number":29,"context_line":"#define NVMCON_NVMWR            (1 \u003c\u003c 15)"},{"line_number":30,"context_line":"#define NVMCON_OP_WORD_PROG     0x4001"},{"line_number":31,"context_line":"#define NVMCON_OP_ROW_PROG      0x4003"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"049770c6_52b73c2d","line":28,"in_reply_to":"109dc98c_f339f06c","updated":"2026-06-11 09:16:56.000000000","message":"Done for the Both.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":31,"context_line":"#define NVMCON_OP_ROW_PROG      0x4003"},{"line_number":32,"context_line":"#define NVMCON_OP_PAGE_ERASE    0x4004"},{"line_number":33,"context_line":"#define NVMCON_OP_PBC           0x4007"},{"line_number":34,"context_line":"#define NVMCON_OP_MASK          0x7FFF"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"/* RAM staging buffer address used across drivers */"},{"line_number":37,"context_line":"#define RAM_BUF_ADDR 0x20000000U"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"2486c683_443752e1","line":34,"updated":"2025-10-26 11:41:09.000000000","message":"`GENMASK(14, 0)`","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":31,"context_line":"#define NVMCON_OP_ROW_PROG      0x4003"},{"line_number":32,"context_line":"#define NVMCON_OP_PAGE_ERASE    0x4004"},{"line_number":33,"context_line":"#define NVMCON_OP_PBC           0x4007"},{"line_number":34,"context_line":"#define NVMCON_OP_MASK          0x7FFF"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"/* RAM staging buffer address used across drivers */"},{"line_number":37,"context_line":"#define RAM_BUF_ADDR 0x20000000U"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"231c6173_c0166bb4","line":34,"in_reply_to":"2486c683_443752e1","updated":"2026-06-11 09:16:56.000000000","message":"Done","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":62,"context_line":"    uint32_t nvm_err_mask;"},{"line_number":63,"context_line":"};"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"static const struct pic32cx_dev device_table[] \u003d {"},{"line_number":66,"context_line":"    {"},{"line_number":67,"context_line":"        .device_id    \u003d 0x00009B8F, /* WBZ451 */"},{"line_number":68,"context_line":"        .name         \u003d \"WBZ451\","}],"source_content_type":"text/x-csrc","patch_set":1,"id":"141cd18f_2fc8c75f","line":65,"updated":"2025-10-26 11:41:09.000000000","message":"What is the criteria for sorting this array?\nIt\u0027s not by `-\u003ename` nor by `-\u003edevice_id` !","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":62,"context_line":"    uint32_t nvm_err_mask;"},{"line_number":63,"context_line":"};"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"static const struct pic32cx_dev device_table[] \u003d {"},{"line_number":66,"context_line":"    {"},{"line_number":67,"context_line":"        .device_id    \u003d 0x00009B8F, /* WBZ451 */"},{"line_number":68,"context_line":"        .name         \u003d \"WBZ451\","}],"source_content_type":"text/x-csrc","patch_set":1,"id":"53b86439_995a1150","line":65,"in_reply_to":"141cd18f_2fc8c75f","updated":"2026-06-11 09:16:56.000000000","message":"Updated the logic based on the review comment provided for one more comment below.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":80,"context_line":"        .nvmconclr    \u003d 0x44000604U,"},{"line_number":81,"context_line":"        .nvmlbwp      \u003d 0x440006F0U,"},{"line_number":82,"context_line":"        .nvm_param    \u003d 0x44000610U,"},{"line_number":83,"context_line":"        .nvm_err_mask \u003d 0x3F00U"},{"line_number":84,"context_line":"    },"},{"line_number":85,"context_line":"    {"},{"line_number":86,"context_line":"        .device_id    \u003d 0x00009B0B, /* WBZ450 */"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"063dc05a_00dab449","line":83,"updated":"2025-10-26 11:41:09.000000000","message":"`GENMASK(13, 8)`\nAlso below","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        .nvmconclr    \u003d 0x44000604U,"},{"line_number":81,"context_line":"        .nvmlbwp      \u003d 0x440006F0U,"},{"line_number":82,"context_line":"        .nvm_param    \u003d 0x44000610U,"},{"line_number":83,"context_line":"        .nvm_err_mask \u003d 0x3F00U"},{"line_number":84,"context_line":"    },"},{"line_number":85,"context_line":"    {"},{"line_number":86,"context_line":"        .device_id    \u003d 0x00009B0B, /* WBZ450 */"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"48b983e2_a270cdf5","line":83,"in_reply_to":"063dc05a_00dab449","updated":"2026-06-11 09:16:56.000000000","message":"Done for all.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":159,"context_line":""},{"line_number":160,"context_line":"static const struct pic32cx_dev *find_device_by_name(const char *name)"},{"line_number":161,"context_line":"{"},{"line_number":162,"context_line":"    if (!name) return NULL;"},{"line_number":163,"context_line":"    for (size_t i \u003d 0; i \u003c ARRAY_SIZE(device_table); ++i)"},{"line_number":164,"context_line":"        if (strstr(name, device_table[i].name) !\u003d NULL)"},{"line_number":165,"context_line":"            return \u0026device_table[i];"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"c105636a_d94723b7","line":162,"updated":"2025-10-26 11:41:09.000000000","message":"Split it in two lines\n```\nif (!name)\n  return NULL;\n```","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":159,"context_line":""},{"line_number":160,"context_line":"static const struct pic32cx_dev *find_device_by_name(const char *name)"},{"line_number":161,"context_line":"{"},{"line_number":162,"context_line":"    if (!name) return NULL;"},{"line_number":163,"context_line":"    for (size_t i \u003d 0; i \u003c ARRAY_SIZE(device_table); ++i)"},{"line_number":164,"context_line":"        if (strstr(name, device_table[i].name) !\u003d NULL)"},{"line_number":165,"context_line":"            return \u0026device_table[i];"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"f23402b8_fde3c644","line":162,"in_reply_to":"c105636a_d94723b7","updated":"2026-06-11 09:16:56.000000000","message":"Followed for all the places.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":161,"context_line":"{"},{"line_number":162,"context_line":"    if (!name) return NULL;"},{"line_number":163,"context_line":"    for (size_t i \u003d 0; i \u003c ARRAY_SIZE(device_table); ++i)"},{"line_number":164,"context_line":"        if (strstr(name, device_table[i].name) !\u003d NULL)"},{"line_number":165,"context_line":"            return \u0026device_table[i];"},{"line_number":166,"context_line":"    return NULL;"},{"line_number":167,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"89f15857_c8f1514e","line":164,"updated":"2025-10-26 11:41:09.000000000","message":"No comparison with NULL.\n`if (!strstr(name, device_table[i].name))`","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":161,"context_line":"{"},{"line_number":162,"context_line":"    if (!name) return NULL;"},{"line_number":163,"context_line":"    for (size_t i \u003d 0; i \u003c ARRAY_SIZE(device_table); ++i)"},{"line_number":164,"context_line":"        if (strstr(name, device_table[i].name) !\u003d NULL)"},{"line_number":165,"context_line":"            return \u0026device_table[i];"},{"line_number":166,"context_line":"    return NULL;"},{"line_number":167,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"2169436f_b61308c0","line":164,"in_reply_to":"89f15857_c8f1514e","updated":"2026-06-11 09:16:56.000000000","message":"Removed.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":170,"context_line":"static int pic32cx_unlock_flash(const struct pic32cx_dev *dev, struct target *t)"},{"line_number":171,"context_line":"{"},{"line_number":172,"context_line":"    uint32_t status;"},{"line_number":173,"context_line":"    int res \u003d target_read_u32(t, dev-\u003epac_base + 0x18U, \u0026status);"},{"line_number":174,"context_line":"    if (res !\u003d ERROR_OK) return res;"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"    if (status \u0026 (1 \u003c\u003c 1)) {"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"6e4a997c_06200e89","line":173,"updated":"2025-10-26 11:41:09.000000000","message":"No magic numbers! What is this `0x18`? Please define a macro with a reasonable name, e.g.:\n`#define NVM_STATUS 0x18`\nand use it here.\nSame for the other magic numbers below","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":170,"context_line":"static int pic32cx_unlock_flash(const struct pic32cx_dev *dev, struct target *t)"},{"line_number":171,"context_line":"{"},{"line_number":172,"context_line":"    uint32_t status;"},{"line_number":173,"context_line":"    int res \u003d target_read_u32(t, dev-\u003epac_base + 0x18U, \u0026status);"},{"line_number":174,"context_line":"    if (res !\u003d ERROR_OK) return res;"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"    if (status \u0026 (1 \u003c\u003c 1)) {"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"6587c2ec_740da6e7","line":173,"in_reply_to":"6e4a997c_06200e89","updated":"2026-06-11 09:16:56.000000000","message":"Removed all the magic numbers and used as macro.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":171,"context_line":"{"},{"line_number":172,"context_line":"    uint32_t status;"},{"line_number":173,"context_line":"    int res \u003d target_read_u32(t, dev-\u003epac_base + 0x18U, \u0026status);"},{"line_number":174,"context_line":"    if (res !\u003d ERROR_OK) return res;"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"    if (status \u0026 (1 \u003c\u003c 1)) {"},{"line_number":177,"context_line":"        LOG_INFO(\"PAC indicates NVMCTRL is locked. Attempting to unlock...\");"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"9b9b3f0e_ddb7f44a","line":174,"updated":"2025-10-26 11:41:09.000000000","message":"ditto\nI see many other cases like this, I will not repeat the comment","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":171,"context_line":"{"},{"line_number":172,"context_line":"    uint32_t status;"},{"line_number":173,"context_line":"    int res \u003d target_read_u32(t, dev-\u003epac_base + 0x18U, \u0026status);"},{"line_number":174,"context_line":"    if (res !\u003d ERROR_OK) return res;"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"    if (status \u0026 (1 \u003c\u003c 1)) {"},{"line_number":177,"context_line":"        LOG_INFO(\"PAC indicates NVMCTRL is locked. Attempting to unlock...\");"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"f5d23431_3423b0b3","line":174,"in_reply_to":"9b9b3f0e_ddb7f44a","updated":"2026-06-11 09:16:56.000000000","message":"Fixed.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":173,"context_line":"    int res \u003d target_read_u32(t, dev-\u003epac_base + 0x18U, \u0026status);"},{"line_number":174,"context_line":"    if (res !\u003d ERROR_OK) return res;"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"    if (status \u0026 (1 \u003c\u003c 1)) {"},{"line_number":177,"context_line":"        LOG_INFO(\"PAC indicates NVMCTRL is locked. Attempting to unlock...\");"},{"line_number":178,"context_line":"        res \u003d target_write_u32(t, dev-\u003epac_base + 0x20U, (1 \u003c\u003c 1));"},{"line_number":179,"context_line":"        if (res !\u003d ERROR_OK) return res;"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"436d16ba_6464696f","line":176,"updated":"2025-10-26 11:41:09.000000000","message":"Use `BIT(1)` and, even better, use a macro, maybe in the format\n`\u003cregister-name\u003e_\u003cbit_name\u003e`, e.g.:\n`#define NVM_STATUS_LOCKED   BIT(1)`","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":173,"context_line":"    int res \u003d target_read_u32(t, dev-\u003epac_base + 0x18U, \u0026status);"},{"line_number":174,"context_line":"    if (res !\u003d ERROR_OK) return res;"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"    if (status \u0026 (1 \u003c\u003c 1)) {"},{"line_number":177,"context_line":"        LOG_INFO(\"PAC indicates NVMCTRL is locked. Attempting to unlock...\");"},{"line_number":178,"context_line":"        res \u003d target_write_u32(t, dev-\u003epac_base + 0x20U, (1 \u003c\u003c 1));"},{"line_number":179,"context_line":"        if (res !\u003d ERROR_OK) return res;"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"3ad9f20f_6d807fd6","line":176,"in_reply_to":"436d16ba_6464696f","updated":"2026-06-11 09:16:56.000000000","message":"Fixed","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":222,"context_line":"    if (res !\u003d ERROR_OK) return res;"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"    /* NVMKEY sequence */"},{"line_number":225,"context_line":"    res \u003d target_write_u32(t, dev-\u003envmkey, 0x00000000U); if (res !\u003d ERROR_OK) return res;"},{"line_number":226,"context_line":"    res \u003d target_write_u32(t, dev-\u003envmkey, 0xAA996655U); if (res !\u003d ERROR_OK) return res;"},{"line_number":227,"context_line":"    res \u003d target_write_u32(t, dev-\u003envmkey, 0x556699AAU); if (res !\u003d ERROR_OK) return res;"},{"line_number":228,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"99caa8ee_eb0d0967","line":225,"updated":"2025-10-26 11:41:09.000000000","message":"No multiple commands in the same line.\nAlso the magic numbers in the code, they should be somewhere else.\nYou can consider adding above an array\n```\nstatic const uint32_t pic32cx_nvmkey[] \u003d {\n    0x00000000U,\n    0xAA996655U,\n    0x556699AAU,\n};\n```\nand here you simplify the code with a loop over `ARRAY_SIZE(pic32cx_nvmkey)`","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":222,"context_line":"    if (res !\u003d ERROR_OK) return res;"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"    /* NVMKEY sequence */"},{"line_number":225,"context_line":"    res \u003d target_write_u32(t, dev-\u003envmkey, 0x00000000U); if (res !\u003d ERROR_OK) return res;"},{"line_number":226,"context_line":"    res \u003d target_write_u32(t, dev-\u003envmkey, 0xAA996655U); if (res !\u003d ERROR_OK) return res;"},{"line_number":227,"context_line":"    res \u003d target_write_u32(t, dev-\u003envmkey, 0x556699AAU); if (res !\u003d ERROR_OK) return res;"},{"line_number":228,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"dc501ed1_98cdb20e","line":225,"in_reply_to":"99caa8ee_eb0d0967","updated":"2026-06-11 09:16:56.000000000","message":"Incorporated as suggested.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":232,"context_line":""},{"line_number":233,"context_line":"    /* Wait for NVMWR to clear */"},{"line_number":234,"context_line":"    uint32_t val;"},{"line_number":235,"context_line":"    int timeout \u003d 10000;"},{"line_number":236,"context_line":"    do {"},{"line_number":237,"context_line":"        res \u003d target_read_u32(t, dev-\u003envmcon, \u0026val);"},{"line_number":238,"context_line":"        if (res !\u003d ERROR_OK) return res;"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"909d2b86_fcd434de","line":235,"updated":"2025-10-26 11:41:09.000000000","message":"Don\u0027t use the timeout as a number of iterations.\nUse `timeval_ms()`, in a code similar to `aduc702x_check_flash_completion()` at the end of `src/flash/nor/aduc702x.c`.\nAlso the timeout value should go in a macro with prefix, e.g.:\n`#define NVM_CMD_TIMEOUT_MS 10000`","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":232,"context_line":""},{"line_number":233,"context_line":"    /* Wait for NVMWR to clear */"},{"line_number":234,"context_line":"    uint32_t val;"},{"line_number":235,"context_line":"    int timeout \u003d 10000;"},{"line_number":236,"context_line":"    do {"},{"line_number":237,"context_line":"        res \u003d target_read_u32(t, dev-\u003envmcon, \u0026val);"},{"line_number":238,"context_line":"        if (res !\u003d ERROR_OK) return res;"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"952291b0_3e459500","line":235,"in_reply_to":"909d2b86_fcd434de","updated":"2026-06-11 09:16:56.000000000","message":"Done.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":291,"context_line":"        target_read_u32(t, dev-\u003envm_param, \u0026param);"},{"line_number":292,"context_line":""},{"line_number":293,"context_line":"    /* Apply device-specific mapping (copied/adapted from originals) */"},{"line_number":294,"context_line":"    if ((strcmp(dev-\u003ename, \"WBZ451\") \u003d\u003d 0) || (strcmp(dev-\u003ename, \"WBZ450\") \u003d\u003d 0)) {"},{"line_number":295,"context_line":"        if (base \u003c 0x00005000U) {"},{"line_number":296,"context_line":"            priv-\u003epage_size \u003d dev-\u003erow_size;"},{"line_number":297,"context_line":"            priv-\u003enum_pages \u003d 20; /* 20 kB BootFlash */"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"e71787c6_a56c13b8","line":294,"updated":"2025-10-26 11:41:09.000000000","message":"you need to find a way to move this utterly complicated code inside the `device_table[]`.\ne.g.:\n```\nstruct map {\n    uint32_t start;\n    uint32_t end;\n    uint32_t page_size;\n    uint32_t num_pages;\n};\nstatic const struct map map_wbz45x[] \u003d {\n    .start \u003d 0,\n    .end \u003d 0x00005000U,\n    .page_size \u003d DEFAULT_ROW_SIZE,\n    .num_pages \u003d 20,\n}, {\n    .start \u003d 0x00005000U,\n    .end \u003d 0x00006000U,\n    .page_size \u003d DEFAULT_ROW_SIZE,\n    .num_pages \u003d 4,\n}, {\n    ...\n}, {\n    .start \u003d 0x01000000U,\n    .end \u003d 0x01000000U + 0x00100000U,\n    .page_size \u003d DEFAULT_ROW_SIZE,\n    .num_pages \u003d 0x00100000U / DEFAULT_ROW_SIZE,\n...\n```\nand then add this array and its length in `device_table[]`:\n```\n    .name \u003d \"WBZ450\",\n    .map \u003d map_wbz45x,\n    .map_length \u003d ARRAY_SIZE(map_wbz45x),\n```","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":291,"context_line":"        target_read_u32(t, dev-\u003envm_param, \u0026param);"},{"line_number":292,"context_line":""},{"line_number":293,"context_line":"    /* Apply device-specific mapping (copied/adapted from originals) */"},{"line_number":294,"context_line":"    if ((strcmp(dev-\u003ename, \"WBZ451\") \u003d\u003d 0) || (strcmp(dev-\u003ename, \"WBZ450\") \u003d\u003d 0)) {"},{"line_number":295,"context_line":"        if (base \u003c 0x00005000U) {"},{"line_number":296,"context_line":"            priv-\u003epage_size \u003d dev-\u003erow_size;"},{"line_number":297,"context_line":"            priv-\u003enum_pages \u003d 20; /* 20 kB BootFlash */"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"221acdce_c80c78ad","line":294,"in_reply_to":"e71787c6_a56c13b8","updated":"2026-06-11 09:16:56.000000000","message":"Refactored logic as suggested","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":346,"context_line":"    bank-\u003esize \u003d priv-\u003epage_size * priv-\u003enum_pages;"},{"line_number":347,"context_line":"    bank-\u003enum_sectors \u003d priv-\u003enum_pages;"},{"line_number":348,"context_line":""},{"line_number":349,"context_line":"    if (bank-\u003esectors) {"},{"line_number":350,"context_line":"        free(bank-\u003esectors);"},{"line_number":351,"context_line":"        bank-\u003esectors \u003d NULL;"},{"line_number":352,"context_line":"    }"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"34654970_dd5034ff","line":349,"updated":"2025-10-26 11:41:09.000000000","message":"No need to check the pointer before `free()`.\nSimply drop the check and run the content of the conditional blobk","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":346,"context_line":"    bank-\u003esize \u003d priv-\u003epage_size * priv-\u003enum_pages;"},{"line_number":347,"context_line":"    bank-\u003enum_sectors \u003d priv-\u003enum_pages;"},{"line_number":348,"context_line":""},{"line_number":349,"context_line":"    if (bank-\u003esectors) {"},{"line_number":350,"context_line":"        free(bank-\u003esectors);"},{"line_number":351,"context_line":"        bank-\u003esectors \u003d NULL;"},{"line_number":352,"context_line":"    }"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"1a228d69_afdae07e","line":349,"in_reply_to":"34654970_dd5034ff","updated":"2026-06-11 09:16:56.000000000","message":"Removed.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":22,"context_line":"#include \u003cstdlib.h\u003e"},{"line_number":23,"context_line":"#include \u003cinttypes.h\u003e"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"#define DSU_DID_REG 0x41000018U"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"/* Generic NVM operation bits */"},{"line_number":28,"context_line":"#define NVMCON_NVMWREN          BIT(14)"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"cbae5514_dd229066","line":25,"updated":"2026-04-10 08:25:56.000000000","message":"i prefer to have driver specific define prefixes aligned with the driver name. Otherwise it feels like a global macro by reading the code.","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":22,"context_line":"#include \u003cstdlib.h\u003e"},{"line_number":23,"context_line":"#include \u003cinttypes.h\u003e"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"#define DSU_DID_REG 0x41000018U"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"/* Generic NVM operation bits */"},{"line_number":28,"context_line":"#define NVMCON_NVMWREN          BIT(14)"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"ad097324_caa52647","line":25,"in_reply_to":"cbae5514_dd229066","updated":"2026-06-11 09:16:56.000000000","message":"Added the driver specifix prefix","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":34,"context_line":"#define NVMCON_OP_MASK          GENMASK(14, 0)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"/* RAM staging buffer address used across drivers */"},{"line_number":37,"context_line":"#define RAM_BUF_ADDR 0x20000000U"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"/* default row size used by these parts */"},{"line_number":40,"context_line":"#define DEFAULT_RW_SZ 1024U //default ROW Size"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"8d353cbb_8f6bd211","line":37,"updated":"2026-04-10 08:25:56.000000000","message":"Does using a hardcoded RAM address here run the risk of blindly overwriting\nthe user application\u0027s memory or stack? OpenOCD typically handles this via\ntarget_alloc_working_area() to safely reserve memory.","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":34,"context_line":"#define NVMCON_OP_MASK          GENMASK(14, 0)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"/* RAM staging buffer address used across drivers */"},{"line_number":37,"context_line":"#define RAM_BUF_ADDR 0x20000000U"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"/* default row size used by these parts */"},{"line_number":40,"context_line":"#define DEFAULT_RW_SZ 1024U //default ROW Size"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"f7b08ace_098cd7aa","line":37,"in_reply_to":"8d353cbb_8f6bd211","updated":"2026-06-11 09:16:56.000000000","message":"Removed hardcoded RAM and used target_alloc_working_area as suggested","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":136,"context_line":"\tsize_t map_length;"},{"line_number":137,"context_line":"};"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"static const struct pic32cx_dev device_table[] \u003d {"},{"line_number":140,"context_line":"\t{"},{"line_number":141,"context_line":"\t\t.device_id    \u003d 0x00009B8F, /* WBZ451 */"},{"line_number":142,"context_line":"\t\t.name         \u003d \"wbz451\","}],"source_content_type":"text/x-csrc","patch_set":5,"id":"ecf02468_b163b6a0","line":139,"updated":"2026-04-10 08:25:56.000000000","message":"driver specific variables should have corresponding prefixes","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":136,"context_line":"\tsize_t map_length;"},{"line_number":137,"context_line":"};"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"static const struct pic32cx_dev device_table[] \u003d {"},{"line_number":140,"context_line":"\t{"},{"line_number":141,"context_line":"\t\t.device_id    \u003d 0x00009B8F, /* WBZ451 */"},{"line_number":142,"context_line":"\t\t.name         \u003d \"wbz451\","}],"source_content_type":"text/x-csrc","patch_set":5,"id":"41e009f3_84498b36","line":139,"in_reply_to":"ecf02468_b163b6a0","updated":"2026-06-11 09:16:56.000000000","message":"Fixed","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":160,"context_line":"\t},"},{"line_number":161,"context_line":"\t{"},{"line_number":162,"context_line":"\t\t.device_id    \u003d 0x00009B0B, /* WBZ450 */"},{"line_number":163,"context_line":"\t\t.name         \u003d \"WBZ450\","},{"line_number":164,"context_line":"\t\t.flash_base   \u003d 0x01000000U,"},{"line_number":165,"context_line":"\t\t.flash_size   \u003d 0x00100000U, /* 1 MB */"},{"line_number":166,"context_line":"\t\t.row_size     \u003d DEFAULT_RW_SZ,"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"327d098e_63534958","line":163,"updated":"2026-04-10 08:25:56.000000000","message":"Since find_device_by_name() uses strstr(), won\u0027t this uppercase \"WBZ450\" fail\nto match the lowercase \"wbz450_flash\" bank name passed from the target script,\ncausing it to fall back to the wbz451 defaults?","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":160,"context_line":"\t},"},{"line_number":161,"context_line":"\t{"},{"line_number":162,"context_line":"\t\t.device_id    \u003d 0x00009B0B, /* WBZ450 */"},{"line_number":163,"context_line":"\t\t.name         \u003d \"WBZ450\","},{"line_number":164,"context_line":"\t\t.flash_base   \u003d 0x01000000U,"},{"line_number":165,"context_line":"\t\t.flash_size   \u003d 0x00100000U, /* 1 MB */"},{"line_number":166,"context_line":"\t\t.row_size     \u003d DEFAULT_RW_SZ,"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"9bd8d0cc_cf48b742","line":163,"in_reply_to":"327d098e_63534958","updated":"2026-06-11 09:16:56.000000000","message":"Renamed the name to wbz450 with respect to target script","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":180,"context_line":"\t\t.map_length   \u003d ARRAY_SIZE(map_wbz45x),"},{"line_number":181,"context_line":"\t},"},{"line_number":182,"context_line":"\t{"},{"line_number":183,"context_line":"\t.device_id    \u003d 0x00009B8F, /* WBZ451H */"},{"line_number":184,"context_line":"\t.name         \u003d \"wbz451hpe\","},{"line_number":185,"context_line":"\t.flash_base   \u003d 0x01000000U,"},{"line_number":186,"context_line":"\t.flash_size   \u003d 0x00100000U, /* 1 MB */"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"bac5cbcd_68e757ee","line":183,"updated":"2026-04-10 08:25:56.000000000","message":"indentation level for complete device block is not correct\n\nAlso, since this shares the exact same .device_id (0x00009B8F) as \"wbz451\"\nabove, won\u0027t find_device_by_did() always return the first matching entry\nand never successfully identify a \"wbz451hpe\" by its DID?","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":180,"context_line":"\t\t.map_length   \u003d ARRAY_SIZE(map_wbz45x),"},{"line_number":181,"context_line":"\t},"},{"line_number":182,"context_line":"\t{"},{"line_number":183,"context_line":"\t.device_id    \u003d 0x00009B8F, /* WBZ451H */"},{"line_number":184,"context_line":"\t.name         \u003d \"wbz451hpe\","},{"line_number":185,"context_line":"\t.flash_base   \u003d 0x01000000U,"},{"line_number":186,"context_line":"\t.flash_size   \u003d 0x00100000U, /* 1 MB */"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"62869289_040a915c","line":183,"in_reply_to":"bac5cbcd_68e757ee","updated":"2026-06-11 09:16:56.000000000","message":"That\u0027s correct — both wbz451 and wbz451hpe currently share the same Device ID (0x00009B8F), so find_device_by_did() cannot distinguish between them based on DID alone and will return the first matching entry.\n\nWe kept wbz451hpe as a separate device entry because the HPE variant has different RF characteristics (higher TX power capability) and is supported by a separate board configuration. The separation is intended to allow board-specific handling and future extensibility, even though the underlying silicon reports the same DID.\n\nAt present, device identification is based solely on the DID, so runtime differentiation between wbz451 and wbz451hpe is not possible using the current mechanism. The distinction is primarily for board/support configuration rather than unique silicon identification.","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":252,"context_line":"\tuint32_t num_pages;"},{"line_number":253,"context_line":"};"},{"line_number":254,"context_line":""},{"line_number":255,"context_line":"static const struct pic32cx_dev *find_device_by_did(uint32_t did)"},{"line_number":256,"context_line":"{"},{"line_number":257,"context_line":"\tfor (size_t i \u003d 0; i \u003c ARRAY_SIZE(device_table); ++i)"},{"line_number":258,"context_line":"\t\tif (device_table[i].device_id !\u003d 0 \u0026\u0026 device_table[i].device_id \u003d\u003d did)"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"853ad9e5_ebba0ac8","line":255,"updated":"2026-04-10 08:25:56.000000000","message":"local functions should have driver specific prefixes.","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":252,"context_line":"\tuint32_t num_pages;"},{"line_number":253,"context_line":"};"},{"line_number":254,"context_line":""},{"line_number":255,"context_line":"static const struct pic32cx_dev *find_device_by_did(uint32_t did)"},{"line_number":256,"context_line":"{"},{"line_number":257,"context_line":"\tfor (size_t i \u003d 0; i \u003c ARRAY_SIZE(device_table); ++i)"},{"line_number":258,"context_line":"\t\tif (device_table[i].device_id !\u003d 0 \u0026\u0026 device_table[i].device_id \u003d\u003d did)"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"4dfe454c_972317b8","line":255,"in_reply_to":"853ad9e5_ebba0ac8","updated":"2026-06-11 09:16:56.000000000","message":"Updated the driver specific prefix","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":359,"context_line":"\t\t\treturn ERROR_FAIL;"},{"line_number":360,"context_line":"\t}"},{"line_number":361,"context_line":""},{"line_number":362,"context_line":"\talive_sleep(NVM_POLL_DELAY_MS);"},{"line_number":363,"context_line":"\t} while (val \u0026 NVMCON_NVMWR);"},{"line_number":364,"context_line":""},{"line_number":365,"context_line":"\tif (val \u0026 dev-\u003envm_err_mask) {"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"76bf8c84_6a350329","line":362,"updated":"2026-04-10 08:25:56.000000000","message":"the indentation within this do-while loop is incorrect.","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":359,"context_line":"\t\t\treturn ERROR_FAIL;"},{"line_number":360,"context_line":"\t}"},{"line_number":361,"context_line":""},{"line_number":362,"context_line":"\talive_sleep(NVM_POLL_DELAY_MS);"},{"line_number":363,"context_line":"\t} while (val \u0026 NVMCON_NVMWR);"},{"line_number":364,"context_line":""},{"line_number":365,"context_line":"\tif (val \u0026 dev-\u003envm_err_mask) {"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"89ea966c_6030efa9","line":362,"in_reply_to":"76bf8c84_6a350329","updated":"2026-06-11 09:16:56.000000000","message":"Fixed the indentation issue","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":409,"context_line":"\tuint32_t base \u003d bank-\u003ebase;"},{"line_number":410,"context_line":"\tuint32_t param \u003d 0;"},{"line_number":411,"context_line":"\tif (dev-\u003envm_param)"},{"line_number":412,"context_line":"\t\ttarget_read_u32(t, dev-\u003envm_param, \u0026param);"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"\t/* Find matching map entry */"},{"line_number":415,"context_line":"\tif (dev-\u003emap \u0026\u0026 dev-\u003emap_length) {"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"f2af9d4b_ce1db18e","line":412,"updated":"2026-04-10 08:25:56.000000000","message":"Do not ignore return values. Looks like param is actually never used. Why do we need it?","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":409,"context_line":"\tuint32_t base \u003d bank-\u003ebase;"},{"line_number":410,"context_line":"\tuint32_t param \u003d 0;"},{"line_number":411,"context_line":"\tif (dev-\u003envm_param)"},{"line_number":412,"context_line":"\t\ttarget_read_u32(t, dev-\u003envm_param, \u0026param);"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"\t/* Find matching map entry */"},{"line_number":415,"context_line":"\tif (dev-\u003emap \u0026\u0026 dev-\u003emap_length) {"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"0f8c7fe7_63191523","line":412,"in_reply_to":"f2af9d4b_ce1db18e","updated":"2026-06-11 09:16:56.000000000","message":"Since param is not used removed it","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":455,"context_line":"/* Erase: page erase (acts on sectors) */"},{"line_number":456,"context_line":"static int pic32cx_erase(struct flash_bank *bank, unsigned int first, unsigned int last)"},{"line_number":457,"context_line":"{"},{"line_number":458,"context_line":"\tstruct pic32cx_priv *p \u003d bank-\u003edriver_priv;"},{"line_number":459,"context_line":"\tif (!p)"},{"line_number":460,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":461,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":5,"id":"adc2bda0_d3d49be7","line":458,"updated":"2026-04-10 08:25:56.000000000","message":"different patterns, sometimes this struct is called priv some times it is p","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":455,"context_line":"/* Erase: page erase (acts on sectors) */"},{"line_number":456,"context_line":"static int pic32cx_erase(struct flash_bank *bank, unsigned int first, unsigned int last)"},{"line_number":457,"context_line":"{"},{"line_number":458,"context_line":"\tstruct pic32cx_priv *p \u003d bank-\u003edriver_priv;"},{"line_number":459,"context_line":"\tif (!p)"},{"line_number":460,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":461,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":5,"id":"57d211b5_ac678883","line":458,"in_reply_to":"adc2bda0_d3d49be7","updated":"2026-06-11 09:16:56.000000000","message":"Removed the p and added *priv to all struct pic32cx_priv","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":604,"context_line":"\tstruct pic32cx_priv *p \u003d bank-\u003edriver_priv;"},{"line_number":605,"context_line":"\tconst struct pic32cx_dev *dev \u003d (p \u0026\u0026 p-\u003edev) ? p-\u003edev : \u0026device_table[0];"},{"line_number":606,"context_line":""},{"line_number":607,"context_line":"\ttarget_write_u32(target, dev-\u003envmdata, value);"},{"line_number":608,"context_line":"\treturn pic32cx_issue_nvmcmd(dev, target, addr, NVMCON_OP_WORD_PROG, 0);"},{"line_number":609,"context_line":"}"},{"line_number":610,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":5,"id":"b1c78e3d_3251c9f3","line":607,"updated":"2026-04-10 08:25:56.000000000","message":"Missing error handling for target_write_u32(), same in other places.","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":604,"context_line":"\tstruct pic32cx_priv *p \u003d bank-\u003edriver_priv;"},{"line_number":605,"context_line":"\tconst struct pic32cx_dev *dev \u003d (p \u0026\u0026 p-\u003edev) ? p-\u003edev : \u0026device_table[0];"},{"line_number":606,"context_line":""},{"line_number":607,"context_line":"\ttarget_write_u32(target, dev-\u003envmdata, value);"},{"line_number":608,"context_line":"\treturn pic32cx_issue_nvmcmd(dev, target, addr, NVMCON_OP_WORD_PROG, 0);"},{"line_number":609,"context_line":"}"},{"line_number":610,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":5,"id":"49a40186_13dafd3f","line":607,"in_reply_to":"b1c78e3d_3251c9f3","updated":"2026-06-11 09:16:56.000000000","message":"Added the error handling for all target_write functions","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":true,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"#define PIC32CX_BZ_DSU_DID_REG 0x41000018U"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"/* Generic NVM operation bits */"},{"line_number":28,"context_line":"#define PIC32CX_BZ_NVMCON_NVMWREN          BIT(14)"},{"line_number":29,"context_line":"#define PIC32CX_BZ_NVMCON_NVMWR            BIT(15)"},{"line_number":30,"context_line":"#define PIC32CX_BZ_NVMCON_OP_WORD_PROG     0x4001"}],"source_content_type":"text/x-csrc","patch_set":7,"id":"cea3388b_7d6a8f5a","line":27,"updated":"2026-06-17 09:36:14.000000000","message":"Use `//` for single-line comments.","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":true,"context_lines":[{"line_number":439,"context_line":"\t}"},{"line_number":440,"context_line":""},{"line_number":441,"context_line":"\tpriv-\u003eprobed \u003d true;"},{"line_number":442,"context_line":"\tLOG_INFO(\"%s: probe complete. base\u003d0x%08\" PRIx64 \" size\u003d0x%08\" PRIx32 \" pages\u003d%\" PRIu32,"},{"line_number":443,"context_line":"\t\tdev-\u003ename, (uint64_t)bank-\u003ebase, bank-\u003esize, priv-\u003enum_pages);"},{"line_number":444,"context_line":""},{"line_number":445,"context_line":"\treturn ERROR_OK;"}],"source_content_type":"text/x-csrc","patch_set":7,"id":"0b8f8bd1_1e6c26f9","line":442,"updated":"2026-06-17 09:36:14.000000000","message":"Remove this `probe complete`, it\u0027s useless information.","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":true,"context_lines":[{"line_number":539,"context_line":"\t}"},{"line_number":540,"context_line":""},{"line_number":541,"context_line":"\ttarget_free_working_area(target, wa);"},{"line_number":542,"context_line":"\tLOG_INFO(\"%s: Write completed\", priv-\u003edev-\u003ename);"},{"line_number":543,"context_line":"\treturn ERROR_OK;"},{"line_number":544,"context_line":"}"},{"line_number":545,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":7,"id":"c157c8ed_637e1069","line":542,"updated":"2026-06-17 09:36:14.000000000","message":"Remove this, this layer should not provide such messages.","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"}],"src/target/image.h":[{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"4d8db538fd400e80375b4dad72f25427b11ec1e7","unresolved":true,"context_lines":[{"line_number":25,"context_line":"#endif"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"#define IMAGE_MAX_ERROR_STRING\t\t(256)"},{"line_number":28,"context_line":"#define IMAGE_MAX_SECTIONS\t\t\t(2048)"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"#define IMAGE_MEMORY_CACHE_SIZE\t\t(2048)"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":5,"id":"a4f702ff_bed60a73","line":28,"updated":"2026-04-10 08:25:56.000000000","message":"This change should be a separate patch explaining why it is needed.","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":25,"context_line":"#endif"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"#define IMAGE_MAX_ERROR_STRING\t\t(256)"},{"line_number":28,"context_line":"#define IMAGE_MAX_SECTIONS\t\t\t(2048)"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"#define IMAGE_MEMORY_CACHE_SIZE\t\t(2048)"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":5,"id":"5caaf712_1c133aa3","line":28,"in_reply_to":"a4f702ff_bed60a73","updated":"2026-06-11 09:16:56.000000000","message":"Removed the common changes and will create separate patch","commit_id":"99873721b87bbc224492d62508dbdedcd65a4979"}],"tcl/board/microchip/pic32wm_bz6204_curiosity.cfg":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Microchip pic32wm_bz6204_curiosity."},{"line_number":5,"context_line":"# https://www.microchip.com/en-us/development-tool/ea81w68a"},{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"source [find interface/cmsis-dap.cfg]"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"b3d6d12b_8081b1e6","line":5,"updated":"2025-10-26 11:41:09.000000000","message":"this link is dead. Please cross check it","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Microchip pic32wm_bz6204_curiosity."},{"line_number":5,"context_line":"# https://www.microchip.com/en-us/development-tool/ea81w68a"},{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"source [find interface/cmsis-dap.cfg]"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"24e71a20_2930f102","line":5,"in_reply_to":"b3d6d12b_8081b1e6","updated":"2026-06-11 09:16:56.000000000","message":"Replaced with proper link.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"}],"tcl/board/microchip/wbz351_curiosity.cfg":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# SPDX-License-Identifier: GPL-2.0-or-later"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Microchip WBZ351 Xplained Pro evaluation kit."},{"line_number":5,"context_line":"# https://www.microchip.com/en-us/development-tool/ev19j06a"},{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"ec703349_eb595668","line":4,"updated":"2025-10-26 11:41:09.000000000","message":"This description does not match the name of the file not the content of the page pointed by the link below\n\nAlso, please rename this file as\n`tcl/board/microchip/wbz351-curiosity.cfg`","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# SPDX-License-Identifier: GPL-2.0-or-later"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Microchip WBZ351 Xplained Pro evaluation kit."},{"line_number":5,"context_line":"# https://www.microchip.com/en-us/development-tool/ev19j06a"},{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"eb125b0c_c66c080c","line":4,"in_reply_to":"ec703349_eb595668","updated":"2026-06-11 09:16:56.000000000","message":"Updated.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# SPDX-License-Identifier: GPL-2.0-or-later"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Microchip WBZ351 Curiosity Board."}],"source_content_type":"text/x-ttcn-cfg","patch_set":7,"id":"f27c64ae_41297a31","line":1,"updated":"2026-06-17 09:36:14.000000000","message":"Board filename: `wbz351-curiosity.cfg`, same for the other filenames.","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"}],"tcl/board/microchip/wbz450_curiosity.cfg":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# SPDX-License-Identifier: GPL-2.0-or-later"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Microchip (former Atmel) WBZ451 Xplained Pro evaluation kit."},{"line_number":5,"context_line":"# https://www.microchip.com/en-us/development-tool/ev22l65a"},{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"a50fe0e1_8a1acbd3","line":4,"updated":"2025-10-26 11:41:09.000000000","message":"The board is named \u0027curiosity\u0027. Where this \u0027Xplained Pro evaluation kit\u0027 comes from?","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# SPDX-License-Identifier: GPL-2.0-or-later"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Microchip (former Atmel) WBZ451 Xplained Pro evaluation kit."},{"line_number":5,"context_line":"# https://www.microchip.com/en-us/development-tool/ev22l65a"},{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"38dcb9d4_9d7cb595","line":4,"in_reply_to":"a50fe0e1_8a1acbd3","updated":"2026-06-11 09:16:56.000000000","message":"Corrected.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"}],"tcl/board/microchip/wbz451_curiosity.cfg":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# SPDX-License-Identifier: GPL-2.0-or-later"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Microchip (former Atmel) WBZ451 Xplained Pro evaluation kit."},{"line_number":5,"context_line":"# https://www.microchip.com/en-us/development-tool/ev96b94a"},{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"c69fc420_0dcc7f5b","line":4,"updated":"2025-10-26 11:41:09.000000000","message":"Where this name \u0027Xplained Pro evaluation kit\u0027 comes from?\nThe link below and the file name point to \u0027wbz451 curiosity\u0027 board!","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# SPDX-License-Identifier: GPL-2.0-or-later"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Microchip (former Atmel) WBZ451 Xplained Pro evaluation kit."},{"line_number":5,"context_line":"# https://www.microchip.com/en-us/development-tool/ev96b94a"},{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"e6c8a01b_d816372c","line":4,"in_reply_to":"c69fc420_0dcc7f5b","updated":"2026-06-11 09:16:56.000000000","message":"Removed the Xplained and replaced with proper curiosity board name.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"}],"tcl/target/pic32wm.cfg":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"flash bank pic32wm_otp_config pic32cx_bz 0x00811000 0x1000 0 0 $_TARGETNAME"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"flash bank pic32wm_config_CM4F pic32cx_bz 0xE000ed10 0x100 0 0 $_TARGETNAME"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"c91a6727_cd5d6d06","line":65,"updated":"2025-10-26 11:41:09.000000000","message":"The file ends with a line that has no newline.\nAdd a newline without adding extra empty lines","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"flash bank pic32wm_otp_config pic32cx_bz 0x00811000 0x1000 0 0 $_TARGETNAME"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"flash bank pic32wm_config_CM4F pic32cx_bz 0xE000ed10 0x100 0 0 $_TARGETNAME"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"f478f769_faf60b69","line":65,"in_reply_to":"c91a6727_cd5d6d06","updated":"2026-06-11 09:16:56.000000000","message":"Added new line at end of the file.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# SPDX-License-Identifier: GPL-2.0-or-later"},{"line_number":2,"context_line":"# OpenOCD Target Config for Microchip PIC32WM_BZ6"},{"line_number":3,"context_line":"# Author: Dinesh Arasu (dinesh.arasu@microchip.com)"},{"line_number":4,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":7,"id":"b25be629_e1580a3d","line":1,"updated":"2026-06-17 09:36:14.000000000","message":"Move all target config files under `tcl/target/microchip` and adapt the board files accordingly.","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":true,"context_lines":[{"line_number":11,"context_line":"   set _CHIPNAME pic32wm"},{"line_number":12,"context_line":"}"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"if { [info exists ENDIAN] } {"},{"line_number":15,"context_line":"   set _ENDIAN $ENDIAN"},{"line_number":16,"context_line":"} else {"},{"line_number":17,"context_line":"   set _ENDIAN little"}],"source_content_type":"text/x-ttcn-cfg","patch_set":7,"id":"1796628b_94168e2b","line":14,"updated":"2026-06-17 09:36:14.000000000","message":"Arm Cortex-M4 cores cannot change the endianness at runtime, it\u0027s implementation defined.","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":true,"context_lines":[{"line_number":36,"context_line":"                       -work-area-size 0x80000 \\"},{"line_number":37,"context_line":"                       -work-area-backup 0"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"# --- Reset Behavior ---"},{"line_number":40,"context_line":"#$_TARGETNAME configure -event reset-deassert-post {"},{"line_number":41,"context_line":"#        pic32cx_bz dsu_reset_deassert"},{"line_number":42,"context_line":"#}"}],"source_content_type":"text/x-ttcn-cfg","patch_set":7,"id":"b5c7a983_8ce7027c","line":39,"updated":"2026-06-17 09:36:14.000000000","message":"Why is this commented out? Add a comment about the use case or remove it.","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":true,"context_lines":[{"line_number":52,"context_line":"}"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"# --- Flash Banks ---"},{"line_number":55,"context_line":"flash bank pic32wm_flash pic32cx_bz 0x01000000 0x00200000 0 0 $_TARGETNAME"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"flash bank pic32wm_Secure_boot pic32cx_bz 0x00000000 0x10000 0 0 $_TARGETNAME"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":7,"id":"2dfbcb46_278d73bb","line":55,"updated":"2026-06-17 09:36:14.000000000","message":"Convention is to use `.` instead of `_`.","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"8f5db8eba7b1ff8f0b9d609f1f6eb3b11bc32262","unresolved":true,"context_lines":[{"line_number":54,"context_line":"# --- Flash Banks ---"},{"line_number":55,"context_line":"flash bank pic32wm_flash pic32cx_bz 0x01000000 0x00200000 0 0 $_TARGETNAME"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"flash bank pic32wm_Secure_boot pic32cx_bz 0x00000000 0x10000 0 0 $_TARGETNAME"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"flash bank pic32wm_boot pic32cx_bz 0x00800000 0x10000 0 0 $_TARGETNAME"},{"line_number":60,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":7,"id":"a0c33306_b54bade7","line":57,"updated":"2026-06-17 09:36:14.000000000","message":"Do not use upper-case letters -\u003e `pic32wm.secure_boot`","commit_id":"689d6313fee2a49a91b438224d4b5a502f403488"}],"tcl/target/wbz351.cfg":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":63,"context_line":"flash bank wbz351_otp_config pic32cx_bz 0x00806000 0x21000 0 0 $_TARGETNAME"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"flash bank wbz351_config_CM4F pic32cx_bz 0xE000ed10 0x100 0 0 $_TARGETNAME"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"706a29fa_7ccff94f","line":66,"updated":"2025-10-26 11:41:09.000000000","message":"drop the extra empty line","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":63,"context_line":"flash bank wbz351_otp_config pic32cx_bz 0x00806000 0x21000 0 0 $_TARGETNAME"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"flash bank wbz351_config_CM4F pic32cx_bz 0xE000ed10 0x100 0 0 $_TARGETNAME"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"a1bfa77b_9d3e4833","line":66,"in_reply_to":"706a29fa_7ccff94f","updated":"2026-06-11 09:16:56.000000000","message":"Removed.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"}],"tcl/target/wbz450.cfg":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"flash bank wbz450_configbits pic32cx_bz 0x00045000 0x2000 0 0 $_TARGETNAME"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"flash bank wbz450_config_CM4F pic32cx_bz 0xE000ed10 0x100 0 0 $_TARGETNAME"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"ffe37861_b55857f5","line":63,"updated":"2025-10-26 11:41:09.000000000","message":"add newline","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"flash bank wbz450_configbits pic32cx_bz 0x00045000 0x2000 0 0 $_TARGETNAME"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"flash bank wbz450_config_CM4F pic32cx_bz 0xE000ed10 0x100 0 0 $_TARGETNAME"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"acd47765_dc2c37e5","line":63,"in_reply_to":"ffe37861_b55857f5","updated":"2026-06-11 09:16:56.000000000","message":"Added newline.","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"}],"tcl/target/wbz451.cfg":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ce88cd8c63f33b7b06efc28dcfdcf7933d87448a","unresolved":true,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"flash bank wbz451_configbits pic32cx_bz 0x00045000 0x2000 0 0 $_TARGETNAME"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"flash bank wbz451_config_CM4F pic32cx_bz 0xE000ed10 0x100 0 0 $_TARGETNAME"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"bba4894f_6f45a37f","line":63,"updated":"2025-10-26 11:41:09.000000000","message":"add newline","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"},{"author":{"_account_id":1002447,"name":"DineshArasu-Microchip","email":"dinesh.arasu@microchip.com","username":"DineshArasu-Microchip"},"change_message_id":"aaaaf5f8587403a12b8b1176c6f7125c101b659f","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"flash bank wbz451_configbits pic32cx_bz 0x00045000 0x2000 0 0 $_TARGETNAME"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"flash bank wbz451_config_CM4F pic32cx_bz 0xE000ed10 0x100 0 0 $_TARGETNAME"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"829f5219_e15a58bb","line":63,"in_reply_to":"bba4894f_6f45a37f","updated":"2026-06-11 09:16:56.000000000","message":"Done","commit_id":"04da9013f3457813bb2c1e33a719edb295a26015"}]}
