)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"56cd2be51df4b5e644b23c58b48b748a3ac3e82f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"55cf78dd_f012bfbf","updated":"2023-08-01 15:23:10.000000000","message":"Hi Luca, thanks for the patch.\nI have some minor comment, not all due to this patch but mainly from the existing code. Would you mind having a check?","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"e8543944f1c2cda3f7912b475a2ddf950ab45895","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"f0a503b7_99cba01e","updated":"2023-08-02 18:53:47.000000000","message":"Thanks for your contribution! Not tested on hardware, code review only.","commit_id":"d0a5de875ceb6234a1be7b7e7a0171b45431f1cd"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"407f290036c140ec7fc33a2b218f3c197631b5e4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"b75d9bd7_b8fa8a61","updated":"2023-08-02 09:03:53.000000000","message":"Thanks!","commit_id":"d0a5de875ceb6234a1be7b7e7a0171b45431f1cd"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"3097d984233309ed7bfbd36ce0e727d614fef5f1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"3b85cd93_da016639","updated":"2023-08-17 06:21:46.000000000","message":"Kindly review the Patchset 4 and Patchset 6.\nI push the wrong Patchset 5 occasionally.","commit_id":"50bf5c1cb0ecec032c70b3d38df15fa033bd0dfe"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"6c1491f07b27f4bca77acd041cbbb620e10dbb64","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"5eeac75e_cae56d9c","updated":"2023-08-18 05:24:47.000000000","message":"Thanks!","commit_id":"b8dc7bc5f21cd1f2b718d4a878212545920f77c3"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"90aac3404d37ea78ba51da81bb7507116d14b0a7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"74e2fe97_19d20283","updated":"2023-08-27 14:02:58.000000000","message":"Sorry, the doc is rather misleading.","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b0c5ac800b9d28568a13ef14c953d9bbe31f2c7a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"a6938c71_39bd91af","updated":"2023-08-22 13:56:50.000000000","message":"Thanks","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"e138f4dec395cb34996ce797519c9ffae4aeeb42","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"babdfa7a_150eed5c","updated":"2023-08-21 08:34:04.000000000","message":"Thanks for review.\n\nAs Antonio reminds, we have changed the hardcode parts accordingly.","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"}],"contrib/loaders/flash/npcx/npcx_flash.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"56cd2be51df4b5e644b23c58b48b748a3ac3e82f","unresolved":true,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"/* flashloader parameter structure */"},{"line_number":14,"context_line":"__attribute__ ((section(\".buffers.g_cfg\")))"},{"line_number":15,"context_line":"volatile struct npcx_flash_params g_cfg;"},{"line_number":16,"context_line":"/* data buffer */"},{"line_number":17,"context_line":"__attribute__ ((section(\".buffers.g_buf\")))"},{"line_number":18,"context_line":"uint8_t g_buf[NPCX_FLASH_LOADER_BUFFER_SIZE];"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"397133c7_e61b8597","line":15,"updated":"2023-08-01 15:23:10.000000000","message":"can this be \"static\"?","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ab03aa39c43f2824bd61870fc1e6110067e0a7ff","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"/* flashloader parameter structure */"},{"line_number":14,"context_line":"__attribute__ ((section(\".buffers.g_cfg\")))"},{"line_number":15,"context_line":"volatile struct npcx_flash_params g_cfg;"},{"line_number":16,"context_line":"/* data buffer */"},{"line_number":17,"context_line":"__attribute__ ((section(\".buffers.g_buf\")))"},{"line_number":18,"context_line":"uint8_t g_buf[NPCX_FLASH_LOADER_BUFFER_SIZE];"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"c55f0cef_86383b77","line":15,"in_reply_to":"397133c7_e61b8597","updated":"2023-08-02 05:49:01.000000000","message":"Done","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"56cd2be51df4b5e644b23c58b48b748a3ac3e82f","unresolved":true,"context_lines":[{"line_number":15,"context_line":"volatile struct npcx_flash_params g_cfg;"},{"line_number":16,"context_line":"/* data buffer */"},{"line_number":17,"context_line":"__attribute__ ((section(\".buffers.g_buf\")))"},{"line_number":18,"context_line":"uint8_t g_buf[NPCX_FLASH_LOADER_BUFFER_SIZE];"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"/*----------------------------------------------------------------------------"},{"line_number":21,"context_line":" *                             NPCX flash driver"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"80716d2e_2a67b7e9","line":18,"updated":"2023-08-01 15:23:10.000000000","message":"and this \"static\" too?","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ab03aa39c43f2824bd61870fc1e6110067e0a7ff","unresolved":false,"context_lines":[{"line_number":15,"context_line":"volatile struct npcx_flash_params g_cfg;"},{"line_number":16,"context_line":"/* data buffer */"},{"line_number":17,"context_line":"__attribute__ ((section(\".buffers.g_buf\")))"},{"line_number":18,"context_line":"uint8_t g_buf[NPCX_FLASH_LOADER_BUFFER_SIZE];"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"/*----------------------------------------------------------------------------"},{"line_number":21,"context_line":" *                             NPCX flash driver"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"02ab095d_ad004714","line":18,"in_reply_to":"80716d2e_2a67b7e9","updated":"2023-08-02 05:49:01.000000000","message":"Done","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"56cd2be51df4b5e644b23c58b48b748a3ac3e82f","unresolved":true,"context_lines":[{"line_number":78,"context_line":"\tNPCX_UMA_DB2 \u003d addr[0];"},{"line_number":79,"context_line":"}"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"void delay(uint32_t i)"},{"line_number":82,"context_line":"{"},{"line_number":83,"context_line":"\twhile (i--)"},{"line_number":84,"context_line":"\t\t;"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"b3cf80c7_3757be88","line":81,"updated":"2023-08-01 15:23:10.000000000","message":"and while there, even if not part of this patch, can this be static too?","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ab03aa39c43f2824bd61870fc1e6110067e0a7ff","unresolved":false,"context_lines":[{"line_number":78,"context_line":"\tNPCX_UMA_DB2 \u003d addr[0];"},{"line_number":79,"context_line":"}"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"void delay(uint32_t i)"},{"line_number":82,"context_line":"{"},{"line_number":83,"context_line":"\twhile (i--)"},{"line_number":84,"context_line":"\t\t;"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"0ae9c332_6c6bf80c","line":81,"in_reply_to":"b3cf80c7_3757be88","updated":"2023-08-02 05:49:01.000000000","message":"Done","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"56cd2be51df4b5e644b23c58b48b748a3ac3e82f","unresolved":true,"context_lines":[{"line_number":80,"context_line":""},{"line_number":81,"context_line":"void delay(uint32_t i)"},{"line_number":82,"context_line":"{"},{"line_number":83,"context_line":"\twhile (i--)"},{"line_number":84,"context_line":"\t\t;"},{"line_number":85,"context_line":"}"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"static int flash_wait_ready(uint32_t timeout)"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"539ecd98_ac8c9cfe","line":84,"range":{"start_line":83,"start_character":1,"end_line":84,"end_character":3},"updated":"2023-08-01 15:23:10.000000000","message":"the compiler uses \"-Os\" and should drop the loop because it see there is nothing to do!\nHave you checked in the assembly if the loop is still there?\nEventually you need to declare \"i\" as volatile, or add __asm(\"nop\") in the loop.","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ab03aa39c43f2824bd61870fc1e6110067e0a7ff","unresolved":false,"context_lines":[{"line_number":80,"context_line":""},{"line_number":81,"context_line":"void delay(uint32_t i)"},{"line_number":82,"context_line":"{"},{"line_number":83,"context_line":"\twhile (i--)"},{"line_number":84,"context_line":"\t\t;"},{"line_number":85,"context_line":"}"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"static int flash_wait_ready(uint32_t timeout)"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"973c80ab_dbe4bd79","line":84,"range":{"start_line":83,"start_character":1,"end_line":84,"end_character":3},"in_reply_to":"539ecd98_ac8c9cfe","updated":"2023-08-02 05:49:01.000000000","message":"Thanks for the suggestion.","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"56cd2be51df4b5e644b23c58b48b748a3ac3e82f","unresolved":true,"context_lines":[{"line_number":170,"context_line":"\treturn flash_wait_ready(NPCX_FLASH_ABORT_TIMEOUT);"},{"line_number":171,"context_line":"}"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"int flash_physical_clear_stsreg(void)"},{"line_number":174,"context_line":"{"},{"line_number":175,"context_line":"\tint status;"},{"line_number":176,"context_line":"\tuint8_t reg1, reg2;"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"7414ab66_a718ede6","line":173,"updated":"2023-08-01 15:23:10.000000000","message":"static?","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ab03aa39c43f2824bd61870fc1e6110067e0a7ff","unresolved":false,"context_lines":[{"line_number":170,"context_line":"\treturn flash_wait_ready(NPCX_FLASH_ABORT_TIMEOUT);"},{"line_number":171,"context_line":"}"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"int flash_physical_clear_stsreg(void)"},{"line_number":174,"context_line":"{"},{"line_number":175,"context_line":"\tint status;"},{"line_number":176,"context_line":"\tuint8_t reg1, reg2;"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"06d0e532_a32c3468","line":173,"in_reply_to":"7414ab66_a718ede6","updated":"2023-08-02 05:49:01.000000000","message":"Done","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"56cd2be51df4b5e644b23c58b48b748a3ac3e82f","unresolved":true,"context_lines":[{"line_number":204,"context_line":"\treturn NPCX_FLASH_STATUS_OK;"},{"line_number":205,"context_line":"}"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"int flash_physical_write(uint32_t offset, uint32_t size, const uint8_t *data)"},{"line_number":208,"context_line":"{"},{"line_number":209,"context_line":"\tint status;"},{"line_number":210,"context_line":"\tuint32_t trunk_start \u003d (offset + 0xff) \u0026 ~0xff;"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"0fdd6815_eb139355","line":207,"updated":"2023-08-01 15:23:10.000000000","message":"static?\nsame for below:\nflash_physical_erase_all()\nflash_get_id()\nflashloader_init()\nmain()\n\nI think that only \"entry()\" should not be static to avoid the compiler to remove it because it is not referenced.","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ab03aa39c43f2824bd61870fc1e6110067e0a7ff","unresolved":false,"context_lines":[{"line_number":204,"context_line":"\treturn NPCX_FLASH_STATUS_OK;"},{"line_number":205,"context_line":"}"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"int flash_physical_write(uint32_t offset, uint32_t size, const uint8_t *data)"},{"line_number":208,"context_line":"{"},{"line_number":209,"context_line":"\tint status;"},{"line_number":210,"context_line":"\tuint32_t trunk_start \u003d (offset + 0xff) \u0026 ~0xff;"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"3e523c78_00df8f8c","line":207,"in_reply_to":"0fdd6815_eb139355","updated":"2023-08-02 05:49:01.000000000","message":"Done","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"}],"doc/openocd.texi":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"9e95c9b0e5ac2a5a454efb073da9ad8e57df9f5a","unresolved":true,"context_lines":[{"line_number":7116,"context_line":""},{"line_number":7117,"context_line":"@end deffn"},{"line_number":7118,"context_line":""},{"line_number":7119,"context_line":"@deffn {Flash Driver} {npcx}"},{"line_number":7120,"context_line":"All versions of the NPCX microcontroller families from Nuvoton include internal"},{"line_number":7121,"context_line":"flash. The NPCX flash driver supports the NPCX family of devices. The driver"},{"line_number":7122,"context_line":"automatically recognizes the specific version\u0027s flash parameters and"}],"source_content_type":"text/x-texinfo","patch_set":7,"id":"0bdf5704_19766263","line":7119,"updated":"2023-08-18 07:58:48.000000000","message":"should the new optional driver_option be documented here?\n\"npcx.fiu\", or ..., and default is ...","commit_id":"b8dc7bc5f21cd1f2b718d4a878212545920f77c3"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"2c5c2f9b13b7c77834ae52502c96fae90ae1a56d","unresolved":true,"context_lines":[{"line_number":7116,"context_line":""},{"line_number":7117,"context_line":"@end deffn"},{"line_number":7118,"context_line":""},{"line_number":7119,"context_line":"@deffn {Flash Driver} {npcx}"},{"line_number":7120,"context_line":"All versions of the NPCX microcontroller families from Nuvoton include internal"},{"line_number":7121,"context_line":"flash. The NPCX flash driver supports the NPCX family of devices. The driver"},{"line_number":7122,"context_line":"automatically recognizes the specific version\u0027s flash parameters and"}],"source_content_type":"text/x-texinfo","patch_set":7,"id":"ae67c20e_6d67ab75","line":7119,"in_reply_to":"0bdf5704_19766263","updated":"2023-08-18 09:52:31.000000000","message":"Not sure if I obey the .texi style. Thank you for the review.","commit_id":"b8dc7bc5f21cd1f2b718d4a878212545920f77c3"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"e138f4dec395cb34996ce797519c9ffae4aeeb42","unresolved":false,"context_lines":[{"line_number":7116,"context_line":""},{"line_number":7117,"context_line":"@end deffn"},{"line_number":7118,"context_line":""},{"line_number":7119,"context_line":"@deffn {Flash Driver} {npcx}"},{"line_number":7120,"context_line":"All versions of the NPCX microcontroller families from Nuvoton include internal"},{"line_number":7121,"context_line":"flash. The NPCX flash driver supports the NPCX family of devices. The driver"},{"line_number":7122,"context_line":"automatically recognizes the specific version\u0027s flash parameters and"}],"source_content_type":"text/x-texinfo","patch_set":7,"id":"e554089f_d1c9ea19","line":7119,"in_reply_to":"ae67c20e_6d67ab75","updated":"2023-08-21 08:34:04.000000000","message":"Done","commit_id":"b8dc7bc5f21cd1f2b718d4a878212545920f77c3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"a0645607db5270250120bb89dffc19d67ecf3e91","unresolved":true,"context_lines":[{"line_number":7116,"context_line":""},{"line_number":7117,"context_line":"@end deffn"},{"line_number":7118,"context_line":""},{"line_number":7119,"context_line":"@deffn {Flash Driver} {npcx} [driver_options - FIU]"},{"line_number":7120,"context_line":"All versions of the NPCX microcontroller families from Nuvoton include internal"},{"line_number":7121,"context_line":"flash. The NPCX flash driver supports the NPCX family of devices. The driver"},{"line_number":7122,"context_line":"automatically recognizes the specific version\u0027s flash parameters and"}],"source_content_type":"text/x-texinfo","patch_set":8,"id":"31a195e9_1e695622","line":7119,"updated":"2023-08-18 14:27:24.000000000","message":"To look similar to the other drivers, this line should be only\n@deffn {Flash Driver} {npcx}\nCheck the rendered output in\nhttps://openocd.org/doc-release/html/Flash-Commands.html#flashdriverlist\n\nIn the text below you should add something like\nThe ’flash bank’ command has an optional extra parameter for the fiu name, that defaults to @var{npcx.fiu} if not specified.","commit_id":"c6ae47e8b939bd3019a0ba19c2fb6b5b555e11fd"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"e138f4dec395cb34996ce797519c9ffae4aeeb42","unresolved":false,"context_lines":[{"line_number":7116,"context_line":""},{"line_number":7117,"context_line":"@end deffn"},{"line_number":7118,"context_line":""},{"line_number":7119,"context_line":"@deffn {Flash Driver} {npcx} [driver_options - FIU]"},{"line_number":7120,"context_line":"All versions of the NPCX microcontroller families from Nuvoton include internal"},{"line_number":7121,"context_line":"flash. The NPCX flash driver supports the NPCX family of devices. The driver"},{"line_number":7122,"context_line":"automatically recognizes the specific version\u0027s flash parameters and"}],"source_content_type":"text/x-texinfo","patch_set":8,"id":"fb8543a5_b3d478ba","line":7119,"in_reply_to":"31a195e9_1e695622","updated":"2023-08-21 08:34:04.000000000","message":"Done","commit_id":"c6ae47e8b939bd3019a0ba19c2fb6b5b555e11fd"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"90aac3404d37ea78ba51da81bb7507116d14b0a7","unresolved":true,"context_lines":[{"line_number":7125,"context_line":""},{"line_number":7126,"context_line":"@example"},{"line_number":7127,"context_line":""},{"line_number":7128,"context_line":"# The prefix of target and FIU is the same. Ex. $_TARGETNAME is npcx_v2, then $_FIUNAME is also npcx_v2."},{"line_number":7129,"context_line":""},{"line_number":7130,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME $_FIUNAME"},{"line_number":7131,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"}],"source_content_type":"text/x-texinfo","patch_set":9,"id":"d1665bc0_46cb7f99","line":7128,"updated":"2023-08-27 14:02:58.000000000","message":"Misleading. $_TARGETNAME could be anything what user sets to $CHIPNAME\n(with .cpu suffix) with no relation to FIU","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ec3dea6d8e8bf356d775c2016333d10b6f47d089","unresolved":false,"context_lines":[{"line_number":7125,"context_line":""},{"line_number":7126,"context_line":"@example"},{"line_number":7127,"context_line":""},{"line_number":7128,"context_line":"# The prefix of target and FIU is the same. Ex. $_TARGETNAME is npcx_v2, then $_FIUNAME is also npcx_v2."},{"line_number":7129,"context_line":""},{"line_number":7130,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME $_FIUNAME"},{"line_number":7131,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"}],"source_content_type":"text/x-texinfo","patch_set":9,"id":"f5f560db_435bc33b","line":7128,"in_reply_to":"d1665bc0_46cb7f99","updated":"2023-08-29 02:24:17.000000000","message":"Done","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"90aac3404d37ea78ba51da81bb7507116d14b0a7","unresolved":true,"context_lines":[{"line_number":7127,"context_line":""},{"line_number":7128,"context_line":"# The prefix of target and FIU is the same. Ex. $_TARGETNAME is npcx_v2, then $_FIUNAME is also npcx_v2."},{"line_number":7129,"context_line":""},{"line_number":7130,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME $_FIUNAME"},{"line_number":7131,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"},{"line_number":7132,"context_line":""},{"line_number":7133,"context_line":"# If CMD_ARGC is 6 only, $_FIUNAME is npcx"}],"source_content_type":"text/x-texinfo","patch_set":9,"id":"d4a000e1_8266519e","line":7130,"range":{"start_line":7130,"start_character":58,"end_line":7130,"end_character":67},"updated":"2023-08-27 14:02:58.000000000","message":"Give a specific example like \u0027npcx_v2\u0027, not a variable $_FIUNAME defined in .cfg (and not introduced in this doc)","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"172601674ed515eb2398796412138235aade7a18","unresolved":false,"context_lines":[{"line_number":7127,"context_line":""},{"line_number":7128,"context_line":"# The prefix of target and FIU is the same. Ex. $_TARGETNAME is npcx_v2, then $_FIUNAME is also npcx_v2."},{"line_number":7129,"context_line":""},{"line_number":7130,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME $_FIUNAME"},{"line_number":7131,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"},{"line_number":7132,"context_line":""},{"line_number":7133,"context_line":"# If CMD_ARGC is 6 only, $_FIUNAME is npcx"}],"source_content_type":"text/x-texinfo","patch_set":9,"id":"d93de300_75526dec","line":7130,"range":{"start_line":7130,"start_character":58,"end_line":7130,"end_character":67},"in_reply_to":"2756c14e_19e4e5a9","updated":"2023-08-29 02:53:15.000000000","message":"Kindly review the patchset 10 and patchset 11 for this change.","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ec3dea6d8e8bf356d775c2016333d10b6f47d089","unresolved":false,"context_lines":[{"line_number":7127,"context_line":""},{"line_number":7128,"context_line":"# The prefix of target and FIU is the same. Ex. $_TARGETNAME is npcx_v2, then $_FIUNAME is also npcx_v2."},{"line_number":7129,"context_line":""},{"line_number":7130,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME $_FIUNAME"},{"line_number":7131,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"},{"line_number":7132,"context_line":""},{"line_number":7133,"context_line":"# If CMD_ARGC is 6 only, $_FIUNAME is npcx"}],"source_content_type":"text/x-texinfo","patch_set":9,"id":"2756c14e_19e4e5a9","line":7130,"range":{"start_line":7130,"start_character":58,"end_line":7130,"end_character":67},"in_reply_to":"d4a000e1_8266519e","updated":"2023-08-29 02:24:17.000000000","message":"Done","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"90aac3404d37ea78ba51da81bb7507116d14b0a7","unresolved":true,"context_lines":[{"line_number":7128,"context_line":"# The prefix of target and FIU is the same. Ex. $_TARGETNAME is npcx_v2, then $_FIUNAME is also npcx_v2."},{"line_number":7129,"context_line":""},{"line_number":7130,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME $_FIUNAME"},{"line_number":7131,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"},{"line_number":7132,"context_line":""},{"line_number":7133,"context_line":"# If CMD_ARGC is 6 only, $_FIUNAME is npcx"},{"line_number":7134,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"}],"source_content_type":"text/x-texinfo","patch_set":9,"id":"8db6280c_5d08d548","line":7131,"range":{"start_line":7131,"start_character":0,"end_line":7131,"end_character":57},"updated":"2023-08-27 14:02:58.000000000","message":"Remove (repeated 3 lines below)","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ec3dea6d8e8bf356d775c2016333d10b6f47d089","unresolved":false,"context_lines":[{"line_number":7128,"context_line":"# The prefix of target and FIU is the same. Ex. $_TARGETNAME is npcx_v2, then $_FIUNAME is also npcx_v2."},{"line_number":7129,"context_line":""},{"line_number":7130,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME $_FIUNAME"},{"line_number":7131,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"},{"line_number":7132,"context_line":""},{"line_number":7133,"context_line":"# If CMD_ARGC is 6 only, $_FIUNAME is npcx"},{"line_number":7134,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"}],"source_content_type":"text/x-texinfo","patch_set":9,"id":"93259d85_e65b425e","line":7131,"range":{"start_line":7131,"start_character":0,"end_line":7131,"end_character":57},"in_reply_to":"8db6280c_5d08d548","updated":"2023-08-29 02:24:17.000000000","message":"Done","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"90aac3404d37ea78ba51da81bb7507116d14b0a7","unresolved":true,"context_lines":[{"line_number":7130,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME $_FIUNAME"},{"line_number":7131,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"},{"line_number":7132,"context_line":""},{"line_number":7133,"context_line":"# If CMD_ARGC is 6 only, $_FIUNAME is npcx"},{"line_number":7134,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"},{"line_number":7135,"context_line":""},{"line_number":7136,"context_line":"@end example"}],"source_content_type":"text/x-texinfo","patch_set":9,"id":"a2135f30_b0049f26","line":7133,"range":{"start_line":7133,"start_character":2,"end_line":7133,"end_character":37},"updated":"2023-08-27 14:02:58.000000000","message":"FIU defaults to...\n\nor\n\nWith 7 positional arguments FIU defaults to...","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ec3dea6d8e8bf356d775c2016333d10b6f47d089","unresolved":false,"context_lines":[{"line_number":7130,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME $_FIUNAME"},{"line_number":7131,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"},{"line_number":7132,"context_line":""},{"line_number":7133,"context_line":"# If CMD_ARGC is 6 only, $_FIUNAME is npcx"},{"line_number":7134,"context_line":"flash bank $_FLASHNAME npcx 0x64000000 0 0 0 $_TARGETNAME"},{"line_number":7135,"context_line":""},{"line_number":7136,"context_line":"@end example"}],"source_content_type":"text/x-texinfo","patch_set":9,"id":"70c4c9cd_3fdfce47","line":7133,"range":{"start_line":7133,"start_character":2,"end_line":7133,"end_character":37},"in_reply_to":"a2135f30_b0049f26","updated":"2023-08-29 02:24:17.000000000","message":"Done","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"}],"src/flash/nor/npcx.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"56cd2be51df4b5e644b23c58b48b748a3ac3e82f","unresolved":true,"context_lines":[{"line_number":17,"context_line":"#include \"../../../contrib/loaders/flash/npcx/npcx_flash.h\""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"/* NPCX flash loader */"},{"line_number":20,"context_line":"const uint8_t npcx_algo[] \u003d {"},{"line_number":21,"context_line":"#include \"../../../contrib/loaders/flash/npcx/npcx_algo.inc\""},{"line_number":22,"context_line":"};"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":2,"id":"7a70fc6e_f143c8c7","line":20,"updated":"2023-08-01 15:23:10.000000000","message":"why this is not \"static\" anymore?\nI don\u0027t see this used outside of this file.","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ab03aa39c43f2824bd61870fc1e6110067e0a7ff","unresolved":false,"context_lines":[{"line_number":17,"context_line":"#include \"../../../contrib/loaders/flash/npcx/npcx_flash.h\""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"/* NPCX flash loader */"},{"line_number":20,"context_line":"const uint8_t npcx_algo[] \u003d {"},{"line_number":21,"context_line":"#include \"../../../contrib/loaders/flash/npcx/npcx_algo.inc\""},{"line_number":22,"context_line":"};"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":2,"id":"a45cdbc6_c0831cf2","line":20,"in_reply_to":"7a70fc6e_f143c8c7","updated":"2023-08-02 05:49:01.000000000","message":"Done","commit_id":"58850de3d17490dab4164e66dd0ad3720701524c"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"1074708e812f76d79299b117c14cf4d816a94a8d","unresolved":true,"context_lines":[{"line_number":252,"context_line":"\tnpcx_bank-\u003eparams_addr \u003d NPCX_FLASH_LOADER_PARAMS_ADDR;"},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"\t/* Select FIU version */"},{"line_number":255,"context_line":"\tif (strcmp(bank-\u003etarget-\u003ecmd_name, \"npcx.cpu\") \u003d\u003d 0) {"},{"line_number":256,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCX;"},{"line_number":257,"context_line":"\t} else if (strcmp(bank-\u003etarget-\u003ecmd_name, \"npcx_v2.cpu\") \u003d\u003d 0) {"},{"line_number":258,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCX_V2;"},{"line_number":259,"context_line":"\t} else if (strcmp(bank-\u003etarget-\u003ecmd_name, \"npck.cpu\") \u003d\u003d 0) {"},{"line_number":260,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCK;"},{"line_number":261,"context_line":"\t} else {"},{"line_number":262,"context_line":"\t\tLOG_ERROR(\"%s is not a valid target\", bank-\u003etarget-\u003ecmd_name);"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"d89b1eb1_19ac2822","line":259,"range":{"start_line":255,"start_character":1,"end_line":259,"end_character":62},"updated":"2023-08-02 19:55:36.000000000","message":"Enforcing the target name to be one of 3 predefined names breaks OpenOCD Config File Guidelines:\nhttps://openocd.org/doc/html/Config-File-Guidelines.html\nSee mainly chapters\n6.2.1 Communication Between Config files\nand\n6.2.2 Variable Naming Convention\n\nIf the FIU version cannot be autodetected, I\u0027d recommend to add a positional parameter to \u0027flash bank\u0027 command and parse it in\nFLASH_BANK_COMMAND_HANDLER(npcx_flash_bank_command)","commit_id":"d0a5de875ceb6234a1be7b7e7a0171b45431f1cd"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"b7f7119cbd3952ac450b7bc5510e42391f899a4c","unresolved":true,"context_lines":[{"line_number":252,"context_line":"\tnpcx_bank-\u003eparams_addr \u003d NPCX_FLASH_LOADER_PARAMS_ADDR;"},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"\t/* Select FIU version */"},{"line_number":255,"context_line":"\tif (strcmp(bank-\u003etarget-\u003ecmd_name, \"npcx.cpu\") \u003d\u003d 0) {"},{"line_number":256,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCX;"},{"line_number":257,"context_line":"\t} else if (strcmp(bank-\u003etarget-\u003ecmd_name, \"npcx_v2.cpu\") \u003d\u003d 0) {"},{"line_number":258,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCX_V2;"},{"line_number":259,"context_line":"\t} else if (strcmp(bank-\u003etarget-\u003ecmd_name, \"npck.cpu\") \u003d\u003d 0) {"},{"line_number":260,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCK;"},{"line_number":261,"context_line":"\t} else {"},{"line_number":262,"context_line":"\t\tLOG_ERROR(\"%s is not a valid target\", bank-\u003etarget-\u003ecmd_name);"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"eb9cd4d2_52ddb438","line":259,"range":{"start_line":255,"start_character":1,"end_line":259,"end_character":62},"in_reply_to":"52bd2408_656a9dbb","updated":"2023-08-08 07:48:08.000000000","message":"\u003e I searched the Guidelines and relevant patch but failed to find similar scenario. \n\nI referred to Config Guidelines to explain why the flash detection should *NOT* be based on the target name: user may want to change the target name and in the case of two or more targets of the same type in one config he must change the name.\nI have no idea if NPCX devices support JTAG or multidrop SWD but generally OpenOCD can debug a board with two devices:\n\n    set CHIPNAME ncpx1\n    source [find target/npcx.cfg]\n    set CHIPNAME ncpx2\n    source [find target/npcx.cfg]\n\nHow do you want to misuse the target name in this case?\n\n\u003e 1. Add usage description in flash_driver to remind only four FIU support.\n\u003e 2. hard-code the four FIU version in probe of flash_driver.\n\nWhy not an optional parameter in \u0027flash bank\u0027 command?\nSee e.g.\nhttps://review.openocd.org/c/openocd/+/7794/4/src/flash/nor/ath79.c#354\nor fm4.c, lpc2000.c","commit_id":"d0a5de875ceb6234a1be7b7e7a0171b45431f1cd"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"9f67a94fbf925e858f214c0dce9c13ac858a7d0a","unresolved":true,"context_lines":[{"line_number":252,"context_line":"\tnpcx_bank-\u003eparams_addr \u003d NPCX_FLASH_LOADER_PARAMS_ADDR;"},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"\t/* Select FIU version */"},{"line_number":255,"context_line":"\tif (strcmp(bank-\u003etarget-\u003ecmd_name, \"npcx.cpu\") \u003d\u003d 0) {"},{"line_number":256,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCX;"},{"line_number":257,"context_line":"\t} else if (strcmp(bank-\u003etarget-\u003ecmd_name, \"npcx_v2.cpu\") \u003d\u003d 0) {"},{"line_number":258,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCX_V2;"},{"line_number":259,"context_line":"\t} else if (strcmp(bank-\u003etarget-\u003ecmd_name, \"npck.cpu\") \u003d\u003d 0) {"},{"line_number":260,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCK;"},{"line_number":261,"context_line":"\t} else {"},{"line_number":262,"context_line":"\t\tLOG_ERROR(\"%s is not a valid target\", bank-\u003etarget-\u003ecmd_name);"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"52bd2408_656a9dbb","line":259,"range":{"start_line":255,"start_character":1,"end_line":259,"end_character":62},"in_reply_to":"d89b1eb1_19ac2822","updated":"2023-08-08 06:33:14.000000000","message":"Hi Tomas,\n\nThanks for raising the concerns. I searched the Guidelines and relevant patch but failed to find similar scenario. \n\nWe have four FIU version for this chip family only. \nHere are my thought.\n1. Add usage description in flash_driver to remind only four FIU support.\n2. hard-code the four FIU version in probe of flash_driver.\n\nLet me know if my thought is wrong. Thanks!","commit_id":"d0a5de875ceb6234a1be7b7e7a0171b45431f1cd"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"3097d984233309ed7bfbd36ce0e727d614fef5f1","unresolved":false,"context_lines":[{"line_number":252,"context_line":"\tnpcx_bank-\u003eparams_addr \u003d NPCX_FLASH_LOADER_PARAMS_ADDR;"},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"\t/* Select FIU version */"},{"line_number":255,"context_line":"\tif (strcmp(bank-\u003etarget-\u003ecmd_name, \"npcx.cpu\") \u003d\u003d 0) {"},{"line_number":256,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCX;"},{"line_number":257,"context_line":"\t} else if (strcmp(bank-\u003etarget-\u003ecmd_name, \"npcx_v2.cpu\") \u003d\u003d 0) {"},{"line_number":258,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCX_V2;"},{"line_number":259,"context_line":"\t} else if (strcmp(bank-\u003etarget-\u003ecmd_name, \"npck.cpu\") \u003d\u003d 0) {"},{"line_number":260,"context_line":"\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCK;"},{"line_number":261,"context_line":"\t} else {"},{"line_number":262,"context_line":"\t\tLOG_ERROR(\"%s is not a valid target\", bank-\u003etarget-\u003ecmd_name);"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"987719a5_02adc18a","line":259,"range":{"start_line":255,"start_character":1,"end_line":259,"end_character":62},"in_reply_to":"eb9cd4d2_52ddb438","updated":"2023-08-17 06:21:46.000000000","message":"Hi Tomas,\nThank you for the suggestion and help. \nWe have revised accordingly.","commit_id":"d0a5de875ceb6234a1be7b7e7a0171b45431f1cd"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"9e95c9b0e5ac2a5a454efb073da9ad8e57df9f5a","unresolved":true,"context_lines":[{"line_number":332,"context_line":"\t}"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"\t/* Initialize private flash information */"},{"line_number":335,"context_line":"\tif (strcmp(CMD_ARGV[5], \"npck.cpu\") \u003d\u003d 0)"},{"line_number":336,"context_line":"\t\tnpcx_bank-\u003efamily_name \u003d \"npck\";"},{"line_number":337,"context_line":"\telse"},{"line_number":338,"context_line":"\t\tnpcx_bank-\u003efamily_name \u003d \"npcx\";"}],"source_content_type":"text/x-csrc","patch_set":7,"id":"09017fef_a4c5a96d","line":335,"updated":"2023-08-18 07:58:48.000000000","message":"this is still the target name hardcoded!\nIt can be modified in the script. In fact in tcl/target/npcx.cfg it is $_TARGETNAME","commit_id":"b8dc7bc5f21cd1f2b718d4a878212545920f77c3"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"2c5c2f9b13b7c77834ae52502c96fae90ae1a56d","unresolved":false,"context_lines":[{"line_number":332,"context_line":"\t}"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"\t/* Initialize private flash information */"},{"line_number":335,"context_line":"\tif (strcmp(CMD_ARGV[5], \"npck.cpu\") \u003d\u003d 0)"},{"line_number":336,"context_line":"\t\tnpcx_bank-\u003efamily_name \u003d \"npck\";"},{"line_number":337,"context_line":"\telse"},{"line_number":338,"context_line":"\t\tnpcx_bank-\u003efamily_name \u003d \"npcx\";"}],"source_content_type":"text/x-csrc","patch_set":7,"id":"7e5c354f_adbdba85","line":335,"in_reply_to":"09017fef_a4c5a96d","updated":"2023-08-18 09:52:31.000000000","message":"Done","commit_id":"b8dc7bc5f21cd1f2b718d4a878212545920f77c3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"a0645607db5270250120bb89dffc19d67ecf3e91","unresolved":true,"context_lines":[{"line_number":332,"context_line":"\t}"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"\t/* Initialize private flash information */"},{"line_number":335,"context_line":"\tnpcx_bank-\u003efamily_name \u003d CMD_ARGV[5];"},{"line_number":336,"context_line":""},{"line_number":337,"context_line":"\tnpcx_bank-\u003esector_length \u003d NPCX_FLASH_ERASE_SIZE;"},{"line_number":338,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":8,"id":"a5d41ac0_7cf71618","line":335,"updated":"2023-08-18 14:27:24.000000000","message":"I still do not understand the reason for this.\nIf I\u0027m not wrong, CMD_ARGV[5] is the target name.\nPay attention that this array will be free() when the current command quits, causing an illegal access after free() later. Here you should eventually use\nstrdup(CMD_ARGV[5]);\n\nBut in the rest of the code, npcx_bank-\u003efamily_name is only used for print. If you want the target name, why not using directly\ntarget_name(bank-\u003etarget)\nin the code and drop npcx_bank-\u003efamily_name ?","commit_id":"c6ae47e8b939bd3019a0ba19c2fb6b5b555e11fd"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"e138f4dec395cb34996ce797519c9ffae4aeeb42","unresolved":false,"context_lines":[{"line_number":332,"context_line":"\t}"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"\t/* Initialize private flash information */"},{"line_number":335,"context_line":"\tnpcx_bank-\u003efamily_name \u003d CMD_ARGV[5];"},{"line_number":336,"context_line":""},{"line_number":337,"context_line":"\tnpcx_bank-\u003esector_length \u003d NPCX_FLASH_ERASE_SIZE;"},{"line_number":338,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":8,"id":"56ea85a7_32931cd6","line":335,"in_reply_to":"5bdf9364_dfb4178e","updated":"2023-08-21 08:34:04.000000000","message":"Done","commit_id":"c6ae47e8b939bd3019a0ba19c2fb6b5b555e11fd"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"4b031617116c5f9478ebebe7260ab59ea469553e","unresolved":true,"context_lines":[{"line_number":332,"context_line":"\t}"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"\t/* Initialize private flash information */"},{"line_number":335,"context_line":"\tnpcx_bank-\u003efamily_name \u003d CMD_ARGV[5];"},{"line_number":336,"context_line":""},{"line_number":337,"context_line":"\tnpcx_bank-\u003esector_length \u003d NPCX_FLASH_ERASE_SIZE;"},{"line_number":338,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":8,"id":"5bdf9364_dfb4178e","line":335,"in_reply_to":"a5d41ac0_7cf71618","updated":"2023-08-18 15:34:47.000000000","message":"By the way, npcx_bank-\u003efamily_name is used e.g. for\nLOG_ERROR(\"%s: Invalid working address\", npcx_bank-\u003efamily_name);\nThis can become simply:\nLOG_TARGET_ERROR(bank-\u003etarget, \"Invalid working address\");","commit_id":"c6ae47e8b939bd3019a0ba19c2fb6b5b555e11fd"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"90aac3404d37ea78ba51da81bb7507116d14b0a7","unresolved":false,"context_lines":[{"line_number":53,"context_line":"};"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"static const struct npcx_flash_info flash_info[] \u003d {"},{"line_number":56,"context_line":"\t[NPCX_FLASH_256KB] \u003d {"},{"line_number":57,"context_line":"\t\t.name \u003d \"256KB Flash\","},{"line_number":58,"context_line":"\t\t.id \u003d 0xEF4012,"},{"line_number":59,"context_line":"\t\t.size \u003d 256 * 1024,"},{"line_number":60,"context_line":"\t},"},{"line_number":61,"context_line":"\t[NPCX_FLASH_512KB] \u003d {"},{"line_number":62,"context_line":"\t\t.name \u003d \"512KB Flash\","},{"line_number":63,"context_line":"\t\t.id \u003d 0xEF4013,"},{"line_number":64,"context_line":"\t\t.size \u003d 512 * 1024,"},{"line_number":65,"context_line":"\t},"},{"line_number":66,"context_line":"\t[NPCX_FLASH_1MB] \u003d {"},{"line_number":67,"context_line":"\t\t.name \u003d \"1MB Flash\","},{"line_number":68,"context_line":"\t\t.id \u003d 0xEF4014,"},{"line_number":69,"context_line":"\t\t.size \u003d 1024 * 1024,"},{"line_number":70,"context_line":"\t},"},{"line_number":71,"context_line":"\t[NPCX_FLASH_UNKNOWN] \u003d {"},{"line_number":72,"context_line":"\t\t.name \u003d \"Unknown Flash\","},{"line_number":73,"context_line":"\t\t.size \u003d 0xFFFFFFFF,"}],"source_content_type":"text/x-csrc","patch_set":9,"id":"c824cbdc_f2d2a034","line":70,"range":{"start_line":56,"start_character":1,"end_line":70,"end_character":3},"updated":"2023-08-27 14:02:58.000000000","message":"BTW ID codes suggest a SPI flash is used inside the MCU.\nIf it is true, you should consider using SPI infrastructure (spi.h, spi.c)\nin this driver. Of course it is out of scope of this change.","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"172601674ed515eb2398796412138235aade7a18","unresolved":false,"context_lines":[{"line_number":53,"context_line":"};"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"static const struct npcx_flash_info flash_info[] \u003d {"},{"line_number":56,"context_line":"\t[NPCX_FLASH_256KB] \u003d {"},{"line_number":57,"context_line":"\t\t.name \u003d \"256KB Flash\","},{"line_number":58,"context_line":"\t\t.id \u003d 0xEF4012,"},{"line_number":59,"context_line":"\t\t.size \u003d 256 * 1024,"},{"line_number":60,"context_line":"\t},"},{"line_number":61,"context_line":"\t[NPCX_FLASH_512KB] \u003d {"},{"line_number":62,"context_line":"\t\t.name \u003d \"512KB Flash\","},{"line_number":63,"context_line":"\t\t.id \u003d 0xEF4013,"},{"line_number":64,"context_line":"\t\t.size \u003d 512 * 1024,"},{"line_number":65,"context_line":"\t},"},{"line_number":66,"context_line":"\t[NPCX_FLASH_1MB] \u003d {"},{"line_number":67,"context_line":"\t\t.name \u003d \"1MB Flash\","},{"line_number":68,"context_line":"\t\t.id \u003d 0xEF4014,"},{"line_number":69,"context_line":"\t\t.size \u003d 1024 * 1024,"},{"line_number":70,"context_line":"\t},"},{"line_number":71,"context_line":"\t[NPCX_FLASH_UNKNOWN] \u003d {"},{"line_number":72,"context_line":"\t\t.name \u003d \"Unknown Flash\","},{"line_number":73,"context_line":"\t\t.size \u003d 0xFFFFFFFF,"}],"source_content_type":"text/x-csrc","patch_set":9,"id":"cbd24822_fa296820","line":70,"range":{"start_line":56,"start_character":1,"end_line":70,"end_character":3},"in_reply_to":"c824cbdc_f2d2a034","updated":"2023-08-29 02:53:15.000000000","message":"Thanks for the suggestion. We\u0027ll further study the topic and send a patch once ready.","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"90aac3404d37ea78ba51da81bb7507116d14b0a7","unresolved":true,"context_lines":[{"line_number":320,"context_line":"\t\t} else if (strcmp(fiu, \"npck.fiu\") \u003d\u003d 0) {"},{"line_number":321,"context_line":"\t\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCK;"},{"line_number":322,"context_line":"\t\t} else {"},{"line_number":323,"context_line":"\t\t\tLOG_ERROR(\"%s is not a valid target\", fiu);"},{"line_number":324,"context_line":"\t\t\treturn ERROR_TARGET_INVALID;"},{"line_number":325,"context_line":"\t\t}"},{"line_number":326,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":9,"id":"5554f27c_187795fd","line":323,"range":{"start_line":323,"start_character":32,"end_line":323,"end_character":38},"updated":"2023-08-27 14:02:58.000000000","message":"FIU?","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"},{"author":{"_account_id":1002174,"name":"Luca Hung","email":"YCHUNG0@nuvoton.com","username":"oceanchad"},"change_message_id":"ec3dea6d8e8bf356d775c2016333d10b6f47d089","unresolved":false,"context_lines":[{"line_number":320,"context_line":"\t\t} else if (strcmp(fiu, \"npck.fiu\") \u003d\u003d 0) {"},{"line_number":321,"context_line":"\t\t\tnpcx_bank-\u003efiu_ver \u003d NPCX_FIU_NPCK;"},{"line_number":322,"context_line":"\t\t} else {"},{"line_number":323,"context_line":"\t\t\tLOG_ERROR(\"%s is not a valid target\", fiu);"},{"line_number":324,"context_line":"\t\t\treturn ERROR_TARGET_INVALID;"},{"line_number":325,"context_line":"\t\t}"},{"line_number":326,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":9,"id":"bbb89cc4_1ca8d0fa","line":323,"range":{"start_line":323,"start_character":32,"end_line":323,"end_character":38},"in_reply_to":"5554f27c_187795fd","updated":"2023-08-29 02:24:17.000000000","message":"Done","commit_id":"3e83fa31379bf3f48e4383ba5a5b5891db16e84a"}]}
