)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"55b93377b3e03ed497bfd6379453b0735a3e3ad8","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"b9c15323_6fc80ade","updated":"2025-05-18 10:07:00.000000000","message":"TODO: doc/openocd.texi CPU-Configuration $target_name curstate","commit_id":"e5ee43187e2113a94271c446086c6766d1cc1dde"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"ef047bd99627c54d44ef4b377de1fd59228b67a8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"ba34bd2f_699990ae","in_reply_to":"1396166d_d76d0654","updated":"2025-05-19 14:51:42.000000000","message":"Sounds good.\n\ndoc done in 8923: doc: list target unavailable state | https://review.openocd.org/c/openocd/+/8923","commit_id":"e5ee43187e2113a94271c446086c6766d1cc1dde"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"4a0d056f1c8eb21e31085ca1e8be3bbf7fd7f6ba","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"4880db2c_48375674","in_reply_to":"2af253e4_2a8344af","updated":"2025-05-19 11:38:35.000000000","message":"Yes, I want to submit a separate fixing patch which can be merged to riscv-collab too.\n\nWhat is your opinion on TARGET_UNAVAILABLE state?\nThere is some overlap with TARGET_UNKNOWN and not examined with examine deferred. Unfortunately the code mess around examination is going to grow further with this.\nOn the other hand this concept is handy for cores where the debug logic can tell if they are available or not.\nAlso a regression in non RISC-V targets seems very unlikely.\nAnd last but not least we need it for the updated RISC-V target code...","commit_id":"e5ee43187e2113a94271c446086c6766d1cc1dde"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"1afb0418c946cbda4b6bbc50e93572eb7fddafcd","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"1396166d_d76d0654","in_reply_to":"4880db2c_48375674","updated":"2025-05-19 12:12:56.000000000","message":"I\u0027m ok with the new `TARGET_UNAVAILABLE`.\n\nI was investigating a rework of the examination process to reduce the overhead and simplify memory allocation. Having such new state simplifies that work.\n\nI want to split the examination in two:\n- pre-examination to gather constant info on the target (CPU type, number of HW breakpoint, type of cache, ...) that doesn\u0027t need to be re-run at each re-examination and that allocates once the necessary memory, e.g. for registers;\n- the rest of examination about the variable info like running/halt.\n\nOpenOCD should start with each target in `TARGET_UNKNOWN`. Then after examine move to one of the other states and \"never\" return in `TARGET_UNKNOWN`.\n\nWe could use `arp_examine` (or we should add a real `examine` command) for either target in `TARGET_UNKNOWN` or `TARGET_UNAVAILABLE`.\nIf the examine succeed, we move to running or halted or whatever, otherwise it remains in the previous state.\nThe pre-examination above is only run the first time we exit from `TARGET_UNKNOWN`.\n\nI think this will also greatly simplify the headache around `target_was_examined()`.\n\nAlso, when the adapter is not responding anymore (USB disconnected), having a fallback that put all the targets in `TARGET_UNAVAILABLE` is a nice way to prevent logging long useless errors.\nWe could then imagine a command to try to reconnect the adapter. Then we let the user to manually examine the targets.","commit_id":"e5ee43187e2113a94271c446086c6766d1cc1dde"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"750f93f28ddf545289b83413c58e304a165a5d04","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"2af253e4_2a8344af","in_reply_to":"b9c15323_6fc80ade","updated":"2025-05-19 10:18:48.000000000","message":"Would you mind adding it in this series?\nEither in this same patch or in an independent one?\nThe risk is that we forget it after merge.","commit_id":"e5ee43187e2113a94271c446086c6766d1cc1dde"},{"author":{"_account_id":1002269,"name":"Bernhard Rosenkränzer","display_name":"Bernhard \"bero\" Rosenkränzer","email":"bero@baylibre.com","username":"bero","status":"BayLibre"},"change_message_id":"d1545e2c368a9b68ef6a258e0926722f1c0426f2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"93a0d77a_b9fe2db6","updated":"2025-05-25 20:10:45.000000000","message":"[rebased as part of the rebase of 8893 to master+8911]","commit_id":"b05045a4c33cb26936d01279ea00b31fa50e1944"}]}
