target/adi_v5_swd: fix SWD multidrop
authorTomas Vanek <vanekt@fbl.cz>
Tue, 20 Sep 2022 16:55:51 +0000 (18:55 +0200)
committerTomas Vanek <vanekt@fbl.cz>
Tue, 27 Sep 2022 08:28:44 +0000 (08:28 +0000)
commitb2f6b231177240af6693340e4e00d16c1e512692
tree107a2bae3384cdf0131e9fffc90f20f271b50eef
parent60abbda8bcb19e26e073605ec43fdd0f42416567
target/adi_v5_swd: fix SWD multidrop

Implementation of ADI v6 introduced banking of DP reg 0.
The accompanying change preventing DP SELECT write before
DP IDR read during connect was added to swd_connect_single() only.
Unchanged swd_connect_multidrop() / swd_multidrop_select_inner()
was broken as it emited DP SELECT and put DP to protocol error state.

Copy dap->select handling to swd_multidrop_select_inner().

Fixes: 72fb88613f02 (adiv6: add low level swd transport)
Change-Id: I514cd6d9ae2ba97ce3657b459df22638c278a0b1
Signed-off-by: Tomas Vanek <vanekt@fbl.cz>
Reviewed-on: https://review.openocd.org/c/openocd/+/7213
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-by: Jonathan Bell <jonathan@raspberrypi.com>
src/target/adi_v5_swd.c