)]}'
{"id":"openocd~master~I72ea9c0b2fae57e8ff5aa616859182c67abc924f","project":"openocd","branch":"master","topic":"after 0.12 release","attention_set":{},"removed_from_attention_set":{"1000687":{"account":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"last_update":"2023-01-21 10:31:18.000000000","reason":"removed on reply"}},"hashtags":[],"change_id":"I72ea9c0b2fae57e8ff5aa616859182c67abc924f","subject":"jtag/drivers/bitbang: avoid mostly harmless glitch on SWDIO","status":"MERGED","created":"2022-10-14 08:54:10.000000000","updated":"2023-01-28 15:53:21.000000000","submitted":"2023-01-28 15:53:21.000000000","submitter":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"7260-after 0.12 release","meta_rev_id":"725f7831f70e2a2a4661e4a8072edd53e22fa78d","_number":7260,"owner":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},{"value":0,"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},{"tag":"autogenerated:gerrit:merged","value":1,"date":"2023-01-28 15:53:21.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]}],"values":{"-1":"Fails"," 0":"No score","+1":"Verified"},"description":"","default_value":0},"Code-Review":{"approved":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"all":[{"tag":"autogenerated:gerrit:merged","value":1,"date":"2023-01-28 15:53:21.000000000","permitted_voting_range":{"min":1,"max":2},"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},{"tag":"autogenerated:gerrit:merged","value":2,"date":"2023-01-28 15:53:21.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},{"value":0,"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]}],"values":{"-2":"This shall not be merged","-1":"I would prefer this is not merged as is"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me, approved"},"description":"","default_value":0}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2022-10-14 10:27:34.000000000","updated_by":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"reviewer":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2022-10-14 15:34:05.000000000","updated_by":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"reviewer":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"state":"REVIEWER"}],"messages":[{"id":"06bd7c07fc2f03a02783403448ce4866c7b2289b","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"real_author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"date":"2022-10-14 08:54:10.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"e5ac6592411de07df467be166e226854d375a3ca","tag":"autogenerated:gerrit:setTopic","author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"real_author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"date":"2022-10-14 08:56:02.000000000","message":"Topic set to after 0.12 release","accounts_in_message":[],"_revision_number":1},{"id":"bf0b39544a9a2e746716c5dbc271e45dbe279c6f","author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"real_author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"date":"2022-10-14 09:27:20.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"c827af7ff454c705a4eaf64fb97db62ae781c9d3","author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"real_author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"date":"2022-10-14 10:27:34.000000000","message":"Patch Set 1: Verified+1\n\nBuild Successful \n\nhttps://build.openocd.org/job/openocd-gerrit-build/16081/ : SUCCESS\n\nhttps://build.openocd.org/job/openocd-gerrit/16872/ : SUCCESS","accounts_in_message":[],"_revision_number":1},{"id":"d47337de4bb985a30036bef60f1558546c07f5d4","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2022-10-14 15:34:05.000000000","message":"Patch Set 1: Code-Review+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"c208d4831254649881489956f5ee4b4f73e15d88","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"real_author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"date":"2022-11-15 11:19:01.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased.","accounts_in_message":[],"_revision_number":2},{"id":"023edef6f8a4d889a55ceda45c1e31e7478ca55b","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"real_author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"date":"2023-01-19 15:04:10.000000000","message":"Patch Set 3: Patch Set 2 was rebased","accounts_in_message":[],"_revision_number":3},{"id":"5dd2204e74fe63ac9069e077a5d487598e9a206d","author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"real_author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"date":"2023-01-19 15:36:11.000000000","message":"Patch Set 3: Verified+1\n\nBuild Successful \n\nhttps://build.openocd.org/job/openocd-gerrit-build/16524/ : SUCCESS\n\nhttps://build.openocd.org/job/openocd-gerrit/17322/ : SUCCESS","accounts_in_message":[],"_revision_number":3},{"id":"4f4e3b3f5dc415e9739505fd10f41c91f89221bd","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2023-01-21 10:29:50.000000000","message":"Patch Set 3: Code-Review+1","accounts_in_message":[],"_revision_number":3},{"id":"43d4681b8884961360ac5a956905004412774ac6","author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"real_author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"date":"2023-01-21 10:31:18.000000000","message":"Patch Set 3: Code-Review+2","accounts_in_message":[],"_revision_number":3},{"id":"725f7831f70e2a2a4661e4a8072edd53e22fa78d","tag":"autogenerated:gerrit:merged","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2023-01-28 15:53:21.000000000","message":"Change has been successfully cherry-picked as 148bc7e2151740527b4ca67d0a7c7c9f01725981","accounts_in_message":[],"_revision_number":4}],"current_revision":"148bc7e2151740527b4ca67d0a7c7c9f01725981","revisions":{"148bc7e2151740527b4ca67d0a7c7c9f01725981":{"kind":"REWORK","_number":4,"created":"2023-01-28 15:53:21.000000000","uploader":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"ref":"refs/changes/60/7260/4","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/60/7260/4","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/4 \u0026\u0026 git checkout -b change-7260 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/60/7260/4","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/4 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"20285b91008106c9fa966cea3269c6f6a81e539a","subject":"jtag/drivers/openjtag: fix annoying num_cycles \u003e 16 warning"}],"author":{"name":"Tomas Vanek","email":"vanekt@fbl.cz","date":"2022-10-14 07:19:29.000000000","tz":120},"committer":{"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","date":"2023-01-28 15:53:21.000000000","tz":0},"subject":"jtag/drivers/bitbang: avoid mostly harmless glitch on SWDIO","message":"jtag/drivers/bitbang: avoid mostly harmless glitch on SWDIO\n\nbitbang_swd_exchange(rnw\u003dtrue,...) calls bitbang_interface-\u003eswd_write()\nwith swdio clamped to 0.\nbitbang_swd_write_reg() reads 1 turnaround bit, 3 ack bits\nand 1 turnaround by one call to bitbang_swd_exchange()\nand then switches SWDIO to output.\nAFAIK all bitbang interfaces switch SWDIO GPIO direction immediately\nin bitbang_interface-\u003eswdio_drive().\nThe GPIO now drives SWDIO line to the value stored in the output register\nwhich is always zero from previous bitbang_swd_exchange(rnw\u003dtrue,...).\nIn case the following data bit (bit 0) is 1 we can observe a glitch\non SWDIO:\n                                         _____ out 1 ____\nHiZ/pull-up ----\\                       /\n                 \\                     /\n                  \\______ out 0 ______/\n          swdio_drive(true)   swd_write(0,1)\n\nThe glitch fortunately takes place far enough from SWCLK rising edge\nwhere SWDIO is sampled by the target, so I believe it is harmless\nexcept some corner cases where the reflected wave is delayed on long\nline.\n\nAnyway keeping electrical signals glitch free is a good practice.\nTo keep performance penalty minimal, pre-write the first data\nbit to SWDIO GPIO output buffer while clocking the turnaround bit.\nFollowing swdio_drive(true) outputs the pre-written value\nand the same value is rewritten by the next swd_write()\ninstead of glitching SWDIO.\n\nChange-Id: I72ea9c0b2fae57e8ff5aa616859182c67abc924f\nSigned-off-by: Tomas Vanek \u003cvanekt@fbl.cz\u003e\nReviewed-on: https://review.openocd.org/c/openocd/+/7260\nTested-by: jenkins\nReviewed-by: Antonio Borneo \u003cborneo.antonio@gmail.com\u003e\n"}},"f720ad448cc0790b357588ce2e62bc5f09ee6221":{"kind":"TRIVIAL_REBASE","_number":3,"created":"2023-01-19 15:04:10.000000000","uploader":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"ref":"refs/changes/60/7260/3","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/60/7260/3","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/3 \u0026\u0026 git checkout -b change-7260 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/60/7260/3","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/3 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"cda39f929e65316478f2f41f461b0cbb3338806c","subject":"jtag: hla: use generic helper for commands \u0027jtag newtap\u0027 \u0027swd newdap\u0027"}],"author":{"name":"Tomas Vanek","email":"vanekt@fbl.cz","date":"2022-10-14 07:19:29.000000000","tz":120},"committer":{"name":"Tomas Vanek","email":"vanekt@fbl.cz","date":"2023-01-19 15:04:10.000000000","tz":0},"subject":"jtag/drivers/bitbang: avoid mostly harmless glitch on SWDIO","message":"jtag/drivers/bitbang: avoid mostly harmless glitch on SWDIO\n\nbitbang_swd_exchange(rnw\u003dtrue,...) calls bitbang_interface-\u003eswd_write()\nwith swdio clamped to 0.\nbitbang_swd_write_reg() reads 1 turnaround bit, 3 ack bits\nand 1 turnaround by one call to bitbang_swd_exchange()\nand then switches SWDIO to output.\nAFAIK all bitbang interfaces switch SWDIO GPIO direction immediately\nin bitbang_interface-\u003eswdio_drive().\nThe GPIO now drives SWDIO line to the value stored in the output register\nwhich is always zero from previous bitbang_swd_exchange(rnw\u003dtrue,...).\nIn case the following data bit (bit 0) is 1 we can observe a glitch\non SWDIO:\n                                         _____ out 1 ____\nHiZ/pull-up ----\\                       /\n                 \\                     /\n                  \\______ out 0 ______/\n          swdio_drive(true)   swd_write(0,1)\n\nThe glitch fortunately takes place far enough from SWCLK rising edge\nwhere SWDIO is sampled by the target, so I believe it is harmless\nexcept some corner cases where the reflected wave is delayed on long\nline.\n\nAnyway keeping electrical signals glitch free is a good practice.\nTo keep performance penalty minimal, pre-write the first data\nbit to SWDIO GPIO output buffer while clocking the turnaround bit.\nFollowing swdio_drive(true) outputs the pre-written value\nand the same value is rewritten by the next swd_write()\ninstead of glitching SWDIO.\n\nChange-Id: I72ea9c0b2fae57e8ff5aa616859182c67abc924f\nSigned-off-by: Tomas Vanek \u003cvanekt@fbl.cz\u003e\n"},"description":"Rebase"},"4f064c24863627c2f254efa01830ade84ba6f473":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2022-11-15 11:19:01.000000000","uploader":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"ref":"refs/changes/60/7260/2","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/60/7260/2","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/2 \u0026\u0026 git checkout -b change-7260 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/60/7260/2","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/2 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"1d04ef3e55843f9880b7bbab32f564d2018a4b93","subject":"tcl/interface: fix raspberrypi2-native.cfg speed coefficient"}],"author":{"name":"Tomas Vanek","email":"vanekt@fbl.cz","date":"2022-10-14 07:19:29.000000000","tz":120},"committer":{"name":"Tomas Vanek","email":"vanekt@fbl.cz","date":"2022-11-15 11:02:14.000000000","tz":60},"subject":"jtag/drivers/bitbang: avoid mostly harmless glitch on SWDIO","message":"jtag/drivers/bitbang: avoid mostly harmless glitch on SWDIO\n\nbitbang_swd_exchange(rnw\u003dtrue,...) calls bitbang_interface-\u003eswd_write()\nwith swdio clamped to 0.\nbitbang_swd_write_reg() reads 1 turnaround bit, 3 ack bits\nand 1 turnaround by one call to bitbang_swd_exchange()\nand then switches SWDIO to output.\nAFAIK all bitbang interfaces switch SWDIO GPIO direction immediately\nin bitbang_interface-\u003eswdio_drive().\nThe GPIO now drives SWDIO line to the value stored in the output register\nwhich is always zero from previous bitbang_swd_exchange(rnw\u003dtrue,...).\nIn case the following data bit (bit 0) is 1 we can observe a glitch\non SWDIO:\n                                         _____ out 1 ____\nHiZ/pull-up ----\\                       /\n                 \\                     /\n                  \\______ out 0 ______/\n          swdio_drive(true)   swd_write(0,1)\n\nThe glitch fortunately takes place far enough from SWCLK rising edge\nwhere SWDIO is sampled by the target, so I believe it is harmless\nexcept some corner cases where the reflected wave is delayed on long\nline.\n\nAnyway keeping electrical signals glitch free is a good practice.\nTo keep performance penalty minimal, pre-write the first data\nbit to SWDIO GPIO output buffer while clocking the turnaround bit.\nFollowing swdio_drive(true) outputs the pre-written value\nand the same value is rewritten by the next swd_write()\ninstead of glitching SWDIO.\n\nChange-Id: I72ea9c0b2fae57e8ff5aa616859182c67abc924f\nSigned-off-by: Tomas Vanek \u003cvanekt@fbl.cz\u003e\n"}},"70fde63dcf893203fc45a3b33298afaba01d1c8d":{"kind":"REWORK","_number":1,"created":"2022-10-14 08:54:10.000000000","uploader":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"ref":"refs/changes/60/7260/1","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/60/7260/1","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/1 \u0026\u0026 git checkout -b change-7260 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/60/7260/1","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/60/7260/1 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"b4410fd4caf9c3d7bda33a207d299f1a2cf88781","subject":"jtag/drivers: bcm2835gpio: implement memory barriers when bitbashing"}],"author":{"name":"Tomas Vanek","email":"vanekt@fbl.cz","date":"2022-10-14 07:19:29.000000000","tz":120},"committer":{"name":"Tomas Vanek","email":"vanekt@fbl.cz","date":"2022-10-14 08:26:21.000000000","tz":120},"subject":"jtag/drivers/bitbang: avoid mostly harmless glitch on SWDIO","message":"jtag/drivers/bitbang: avoid mostly harmless glitch on SWDIO\n\nbitbang_swd_exchange(rnw\u003dtrue,...) calls bitbang_interface-\u003eswd_write()\nwith swdio clamped to 0.\nbitbang_swd_write_reg() reads 1 turnaround bit, 3 ack bits\nand 1 turnaround by one call to bitbang_swd_exchange()\nand then switches SWDIO to output.\nAFAIK all bitbang interfaces switch SWDIO GPIO direction immediately\nin bitbang_interface-\u003eswdio_drive().\nThe GPIO now drives SWDIO line to the value stored in the output register\nwhich is always zero from previous bitbang_swd_exchange(rnw\u003dtrue,...).\nIn case the following data bit (bit 0) is 1 we can observe a glitch\non SWDIO:\n                                         _____ out 1 ____\nHiZ/pull-up ----\\                       /\n                 \\                     /\n                  \\______ out 0 ______/\n          swdio_drive(true)   swd_write(0,1)\n\nThe glitch fortunately takes place far enough from SWCLK rising edge\nwhere SWDIO is sampled by the target, so I believe it is harmless\nexcept some corner cases where the reflected wave is delayed on long\nline.\n\nAnyway keeping electrical signals glitch free is a good practice.\nTo keep performance penalty minimal, pre-write the first data\nbit to SWDIO GPIO output buffer while clocking the turnaround bit.\nFollowing swdio_drive(true) outputs the pre-written value\nand the same value is rewritten by the next swd_write()\ninstead of glitching SWDIO.\n\nChange-Id: I72ea9c0b2fae57e8ff5aa616859182c67abc924f\nSigned-off-by: Tomas Vanek \u003cvanekt@fbl.cz\u003e\n"}}},"requirements":[],"submit_records":[{"status":"CLOSED","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"}}]}],"submit_requirements":[{"name":"Verified","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Verified\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dCustom-Rule"],"failing_atoms":[]}},{"name":"Code-Review","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dCustom-Rule"],"failing_atoms":[]}}]}
