)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"290dfeab2f0060c64d0f1f32e564752a88d640a3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"d0448869_1a50a038","updated":"2021-09-22 09:41:46.000000000","message":"Are there any objections to merging?","commit_id":"0058857ded3a620a0a6b67a945a186d65e2fc570"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b45f2aabff396f42249a5783c80cee1d46529c47","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"0b445119_6bdab9f9","updated":"2022-02-15 23:02:00.000000000","message":"almost same comments as for 5313","commit_id":"0058857ded3a620a0a6b67a945a186d65e2fc570"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"41f3a5a2bb7034729241745bd51cc029fa00c019","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"059bee3c_494409aa","updated":"2022-02-19 20:47:13.000000000","message":"Also here, code ok, missing one part of documentation","commit_id":"b218345687d83aea052d784f81af4742f9f2edbd"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"82a37226a2f31328a923d462c04246b957e426a0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"252238ff_f0b537dd","updated":"2022-02-19 17:48:01.000000000","message":"I noticed that we need a \u0027-force\u0027 option (default off). Otherwise, we have inconsistency in register values between \u0027set_reg\u0027 and \u0027get_reg\u0027.","commit_id":"b218345687d83aea052d784f81af4742f9f2edbd"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"2f2976bf2f829cbfb13b1d72fc9567d253318675","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"e99ea860_883a08aa","updated":"2022-02-20 14:23:21.000000000","message":"Thanks","commit_id":"07cf5b0f8261be5f0fc6af36cd3ce6ea98169c52"}],"doc/openocd.texi":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b45f2aabff396f42249a5783c80cee1d46529c47","unresolved":true,"context_lines":[{"line_number":11227,"context_line":"Set target register values from a Tcl dictionary"},{"line_number":11228,"context_line":"@item @b{get_reg} \u003c@var{list}\u003e"},{"line_number":11229,"context_line":""},{"line_number":11230,"context_line":"Retrieve target register values and return a Tcl dictionary"},{"line_number":11231,"context_line":"@item @b{flash banks} \u003c@var{driver}\u003e \u003c@var{base}\u003e \u003c@var{size}\u003e \u003c@var{chip_width}\u003e \u003c@var{bus_width}\u003e \u003c@var{target}\u003e [@option{driver options} ...]"},{"line_number":11232,"context_line":""},{"line_number":11233,"context_line":"Return information about the flash banks"}],"source_content_type":"text/x-texinfo","patch_set":11,"id":"c522e380_6e462a45","line":11230,"updated":"2022-02-15 23:02:00.000000000","message":"same comment as in 5313 about section","commit_id":"0058857ded3a620a0a6b67a945a186d65e2fc570"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"fc2a56cdcd1ab5be809240e419b527d64f6af8fd","unresolved":false,"context_lines":[{"line_number":11227,"context_line":"Set target register values from a Tcl dictionary"},{"line_number":11228,"context_line":"@item @b{get_reg} \u003c@var{list}\u003e"},{"line_number":11229,"context_line":""},{"line_number":11230,"context_line":"Retrieve target register values and return a Tcl dictionary"},{"line_number":11231,"context_line":"@item @b{flash banks} \u003c@var{driver}\u003e \u003c@var{base}\u003e \u003c@var{size}\u003e \u003c@var{chip_width}\u003e \u003c@var{bus_width}\u003e \u003c@var{target}\u003e [@option{driver options} ...]"},{"line_number":11232,"context_line":""},{"line_number":11233,"context_line":"Return information about the flash banks"}],"source_content_type":"text/x-texinfo","patch_set":11,"id":"064c8ad5_07ae4490","line":11230,"in_reply_to":"6f209a3c_beebeb41","updated":"2022-02-20 12:18:37.000000000","message":"Oups, it\u0027s there now.","commit_id":"0058857ded3a620a0a6b67a945a186d65e2fc570"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"41f3a5a2bb7034729241745bd51cc029fa00c019","unresolved":false,"context_lines":[{"line_number":11227,"context_line":"Set target register values from a Tcl dictionary"},{"line_number":11228,"context_line":"@item @b{get_reg} \u003c@var{list}\u003e"},{"line_number":11229,"context_line":""},{"line_number":11230,"context_line":"Retrieve target register values and return a Tcl dictionary"},{"line_number":11231,"context_line":"@item @b{flash banks} \u003c@var{driver}\u003e \u003c@var{base}\u003e \u003c@var{size}\u003e \u003c@var{chip_width}\u003e \u003c@var{bus_width}\u003e \u003c@var{target}\u003e [@option{driver options} ...]"},{"line_number":11232,"context_line":""},{"line_number":11233,"context_line":"Return information about the flash banks"}],"source_content_type":"text/x-texinfo","patch_set":11,"id":"6f209a3c_beebeb41","line":11230,"in_reply_to":"8f0a1e08_67a8b8ef","updated":"2022-02-19 20:47:13.000000000","message":"Also here you have removed the documentation instead of moving it in another section\nPlease add it again in section \"Target State handling\"","commit_id":"0058857ded3a620a0a6b67a945a186d65e2fc570"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"0fa10923200c8958f1b5ac68dcccef5772527e2f","unresolved":false,"context_lines":[{"line_number":11227,"context_line":"Set target register values from a Tcl dictionary"},{"line_number":11228,"context_line":"@item @b{get_reg} \u003c@var{list}\u003e"},{"line_number":11229,"context_line":""},{"line_number":11230,"context_line":"Retrieve target register values and return a Tcl dictionary"},{"line_number":11231,"context_line":"@item @b{flash banks} \u003c@var{driver}\u003e \u003c@var{base}\u003e \u003c@var{size}\u003e \u003c@var{chip_width}\u003e \u003c@var{bus_width}\u003e \u003c@var{target}\u003e [@option{driver options} ...]"},{"line_number":11232,"context_line":""},{"line_number":11233,"context_line":"Return information about the flash banks"}],"source_content_type":"text/x-texinfo","patch_set":11,"id":"8f0a1e08_67a8b8ef","line":11230,"in_reply_to":"c522e380_6e462a45","updated":"2022-02-19 19:09:59.000000000","message":"Done","commit_id":"0058857ded3a620a0a6b67a945a186d65e2fc570"}],"src/target/target.c":[{"author":{"_account_id":1001667,"name":"Jan Matyas","email":"jan.matyas@codasip.com","username":"JanMatCodasip"},"change_message_id":"357075923c854db5aadab4c86cfce0b20c51ce19","unresolved":false,"context_lines":[{"line_number":4606,"context_line":"\t\t}"},{"line_number":4607,"context_line":""},{"line_number":4608,"context_line":"\t\tnew_int_array_element(interp, varname, reg_num,"},{"line_number":4609,"context_line":"\t\t\tbuf_get_u32(reg-\u003evalue, 0, 32));"},{"line_number":4610,"context_line":"\t}"},{"line_number":4611,"context_line":""},{"line_number":4612,"context_line":"\tJim_SetResult(interp, Jim_NewEmptyStringObj(interp));"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"aedf27f1_7b8bea1b","line":4609,"updated":"2021-06-03 11:47:42.000000000","message":"Should we check reg-\u003evalid before the use of reg-\u003evalue?","commit_id":"836f7a488fcfcece907b02595337907d3e1c8d86"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b45f2aabff396f42249a5783c80cee1d46529c47","unresolved":true,"context_lines":[{"line_number":4853,"context_line":"\t\tif (!elem)"},{"line_number":4854,"context_line":"\t\t\treturn JIM_ERR;"},{"line_number":4855,"context_line":""},{"line_number":4856,"context_line":"\t\tconst char *reg_name \u003d elem-\u003ebytes;"},{"line_number":4857,"context_line":""},{"line_number":4858,"context_line":"\t\tstruct reg *reg \u003d register_get_by_name(target-\u003ereg_cache, reg_name,"},{"line_number":4859,"context_line":"\t\t\tfalse);"}],"source_content_type":"text/x-csrc","patch_set":11,"id":"a7490b3f_ea120230","line":4856,"updated":"2022-02-15 23:02:00.000000000","message":"const char *reg_name \u003d Jim_String(elem);","commit_id":"0058857ded3a620a0a6b67a945a186d65e2fc570"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"0fa10923200c8958f1b5ac68dcccef5772527e2f","unresolved":false,"context_lines":[{"line_number":4853,"context_line":"\t\tif (!elem)"},{"line_number":4854,"context_line":"\t\t\treturn JIM_ERR;"},{"line_number":4855,"context_line":""},{"line_number":4856,"context_line":"\t\tconst char *reg_name \u003d elem-\u003ebytes;"},{"line_number":4857,"context_line":""},{"line_number":4858,"context_line":"\t\tstruct reg *reg \u003d register_get_by_name(target-\u003ereg_cache, reg_name,"},{"line_number":4859,"context_line":"\t\t\tfalse);"}],"source_content_type":"text/x-csrc","patch_set":11,"id":"fdd41bba_75e92a13","line":4856,"in_reply_to":"a7490b3f_ea120230","updated":"2022-02-19 19:09:59.000000000","message":"Done","commit_id":"0058857ded3a620a0a6b67a945a186d65e2fc570"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b45f2aabff396f42249a5783c80cee1d46529c47","unresolved":true,"context_lines":[{"line_number":4888,"context_line":"\t\t}"},{"line_number":4889,"context_line":""},{"line_number":4890,"context_line":"\t\tJim_DictAddElement(interp, result_dict, Jim_NewStringObj(interp,"},{"line_number":4891,"context_line":"\t\t\treg_name, -1), Jim_NewStringObj(interp, tmp, -1));"},{"line_number":4892,"context_line":""},{"line_number":4893,"context_line":"\t\tfree(tmp);"},{"line_number":4894,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":11,"id":"a39e4573_9813a0c7","line":4891,"updated":"2022-02-15 23:02:00.000000000","message":"you can re-use \"elem\" instead of re-converting with \"Jim_NewStringObj(interp,reg_name,-1)\"","commit_id":"0058857ded3a620a0a6b67a945a186d65e2fc570"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"0fa10923200c8958f1b5ac68dcccef5772527e2f","unresolved":false,"context_lines":[{"line_number":4888,"context_line":"\t\t}"},{"line_number":4889,"context_line":""},{"line_number":4890,"context_line":"\t\tJim_DictAddElement(interp, result_dict, Jim_NewStringObj(interp,"},{"line_number":4891,"context_line":"\t\t\treg_name, -1), Jim_NewStringObj(interp, tmp, -1));"},{"line_number":4892,"context_line":""},{"line_number":4893,"context_line":"\t\tfree(tmp);"},{"line_number":4894,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":11,"id":"bde39a40_c6846867","line":4891,"in_reply_to":"a39e4573_9813a0c7","updated":"2022-02-19 19:09:59.000000000","message":"Done","commit_id":"0058857ded3a620a0a6b67a945a186d65e2fc570"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"5b8f5b45a2c07bad379d413c66c0d52ae94a29bb","unresolved":true,"context_lines":[{"line_number":3161,"context_line":"\t\t}"},{"line_number":3162,"context_line":"\t} else {"},{"line_number":3163,"context_line":"\t\t/* access a single register by its name */"},{"line_number":3164,"context_line":"\t\treg \u003d register_get_by_name(target-\u003ereg_cache, CMD_ARGV[0], true);"},{"line_number":3165,"context_line":""},{"line_number":3166,"context_line":"\t\tif (!reg)"},{"line_number":3167,"context_line":"\t\t\tgoto not_found;"}],"source_content_type":"text/x-csrc","patch_set":14,"id":"e887a694_4149d72f","line":3164,"updated":"2025-09-13 18:47:12.000000000","message":"Here in command \"reg\" we search in all the sets.\nSo different behavior wrt `get_reg` and `set_reg`.\nI will send a patch","commit_id":"e8e62c5aca494fa17a5e543831b8eef3740c9b1d"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8ba5620c7e50744ecb3ec2f2ad5a203041688743","unresolved":false,"context_lines":[{"line_number":3161,"context_line":"\t\t}"},{"line_number":3162,"context_line":"\t} else {"},{"line_number":3163,"context_line":"\t\t/* access a single register by its name */"},{"line_number":3164,"context_line":"\t\treg \u003d register_get_by_name(target-\u003ereg_cache, CMD_ARGV[0], true);"},{"line_number":3165,"context_line":""},{"line_number":3166,"context_line":"\t\tif (!reg)"},{"line_number":3167,"context_line":"\t\t\tgoto not_found;"}],"source_content_type":"text/x-csrc","patch_set":14,"id":"3ce6bc0e_e63979a7","line":3164,"in_reply_to":"e887a694_4149d72f","updated":"2025-09-13 18:55:37.000000000","message":"I have sent out https://review.openocd.org/c/openocd/+/9122\nto fix this","commit_id":"e8e62c5aca494fa17a5e543831b8eef3740c9b1d"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"83d87fa0997187f40f4c8f89e8ba31d2f006680b","unresolved":true,"context_lines":[{"line_number":4906,"context_line":"\t\tconst char *reg_name \u003d Jim_String(elem);"},{"line_number":4907,"context_line":""},{"line_number":4908,"context_line":"\t\tstruct reg *reg \u003d register_get_by_name(target-\u003ereg_cache, reg_name,"},{"line_number":4909,"context_line":"\t\t\tfalse);"},{"line_number":4910,"context_line":""},{"line_number":4911,"context_line":"\t\tif (!reg || !reg-\u003eexist) {"},{"line_number":4912,"context_line":"\t\t\tJim_SetResultFormatted(interp, \"unknown register \u0027%s\u0027\", reg_name);"}],"source_content_type":"text/x-csrc","patch_set":14,"id":"6a055523_a77691be","line":4909,"updated":"2025-09-13 18:39:50.000000000","message":"Hi Marc,\nthis `false` here creates issues on aarch64 targets.\nFor aarch64, OpenOCD has two sets of registers:\n- 64 bits (e.g. \"x0\", \"x1\", ...);\n- 32 bits representation of above (\"r0\", \"r1\", ...).\n\nWith `false` we restrict the search to the first set only. So\n`get_reg r0`\ndoes not find the register.\nDo you remember why you choice `false` here?\n\nI\u0027ve never been a big fun of this representation of aarch64 registers in OpenOCD, but I also never had better idea for changing it.\n\nHumm, I haven\u0027t tried, but looking at the code I foresee the same issue on `set_reg` command.","commit_id":"e8e62c5aca494fa17a5e543831b8eef3740c9b1d"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8ba5620c7e50744ecb3ec2f2ad5a203041688743","unresolved":false,"context_lines":[{"line_number":4906,"context_line":"\t\tconst char *reg_name \u003d Jim_String(elem);"},{"line_number":4907,"context_line":""},{"line_number":4908,"context_line":"\t\tstruct reg *reg \u003d register_get_by_name(target-\u003ereg_cache, reg_name,"},{"line_number":4909,"context_line":"\t\t\tfalse);"},{"line_number":4910,"context_line":""},{"line_number":4911,"context_line":"\t\tif (!reg || !reg-\u003eexist) {"},{"line_number":4912,"context_line":"\t\t\tJim_SetResultFormatted(interp, \"unknown register \u0027%s\u0027\", reg_name);"}],"source_content_type":"text/x-csrc","patch_set":14,"id":"936afc2e_75f3280b","line":4909,"in_reply_to":"6a055523_a77691be","updated":"2025-09-13 18:55:37.000000000","message":"Done","commit_id":"e8e62c5aca494fa17a5e543831b8eef3740c9b1d"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"ad52d4d04974a11b19ddd872890da55e9d02d610","unresolved":false,"context_lines":[{"line_number":4906,"context_line":"\t\tconst char *reg_name \u003d Jim_String(elem);"},{"line_number":4907,"context_line":""},{"line_number":4908,"context_line":"\t\tstruct reg *reg \u003d register_get_by_name(target-\u003ereg_cache, reg_name,"},{"line_number":4909,"context_line":"\t\t\tfalse);"},{"line_number":4910,"context_line":""},{"line_number":4911,"context_line":"\t\tif (!reg || !reg-\u003eexist) {"},{"line_number":4912,"context_line":"\t\t\tJim_SetResultFormatted(interp, \"unknown register \u0027%s\u0027\", reg_name);"}],"source_content_type":"text/x-csrc","patch_set":14,"id":"07c58471_04f1b06b","line":4909,"in_reply_to":"936afc2e_75f3280b","updated":"2025-09-15 07:24:51.000000000","message":"\u003e Do you remember why you choice false here?\n\nI don\u0027t think there was a good reason for it. Probably I was not aware of the implications because I have almost no experience with the aarch64 part of OpenOCD.\n\nThanks for fixing!","commit_id":"e8e62c5aca494fa17a5e543831b8eef3740c9b1d"}]}
