This is an automated email from Gerrit. "Tomas Vanek <van...@fbl.cz>" just uploaded a new patch set to Gerrit, which you can find at https://review.openocd.org/c/openocd/+/8752
-- gerrit commit 5c5c87995cbbffbfea8ac1d5c1eaadf6c7cccaf2 Author: Tomas Vanek <van...@fbl.cz> Date: Tue Feb 11 17:59:00 2025 +0100 tcl/target/nordic/nrf54l: minor corrections Add SWD multidrop setting. Fix the name of AP #1 to AUX-AP Set AUX-AP CSW Prot bit[0] to make AUX-AP accessible. Change-Id: I496e07acfe90dd858e4403176a8330d8c1a0b560 Signed-off-by: Tomas Vanek <van...@fbl.cz> diff --git a/tcl/target/nordic/nrf54l.cfg b/tcl/target/nordic/nrf54l.cfg index 70ead1365c..3e14055f14 100644 --- a/tcl/target/nordic/nrf54l.cfg +++ b/tcl/target/nordic/nrf54l.cfg @@ -27,18 +27,35 @@ if { [info exists CPUTAPID] } { set _CPUTAPID 0x6ba02477 } +# Multidrop instance ID should be configurable by FW in TAD TINSTANCE register. +# Writes to the register are ignored due to a silicon erratum. +if { [info exists SWD_INSTANCE_ID] } { + set _SWD_INSTANCE_ID $SWD_INSTANCE_ID +} else { + set _SWD_INSTANCE_ID 0 +} + transport select swd swd newdap $_CHIPNAME cpu -expected-id $_CPUTAPID -dap create $_CHIPNAME.dap -chain-position $_CHIPNAME.cpu + +if { [info exists SWD_MULTIDROP] } { + dap create $_CHIPNAME.dap -chain-position $_CHIPNAME.cpu -dp-id 0x001c0289 -instance-id $_SWD_INSTANCE_ID +} else { + dap create $_CHIPNAME.dap -chain-position $_CHIPNAME.cpu +} set _TARGETNAME $_CHIPNAME.cpu target create $_TARGETNAME cortex_m -dap $_CHIPNAME.dap -ap-num 0 $_TARGETNAME configure -work-area-phys 0x20000000 -work-area-size $_WORKAREASIZE -work-area-backup 0 -# Create target for the control access port (CTRL-AP). -target create $_CHIPNAME.ctrl mem_ap -dap $_CHIPNAME.dap -ap-num 1 +# Create target for the AUX access port (AUX-AP). +target create $_CHIPNAME.aux mem_ap -dap $_CHIPNAME.dap -ap-num 1 + +# AUX-AP is accessible only if CSW Prot[0] bit (Data Access) is set +$_CHIPNAME.dap apsel 1 +$_CHIPNAME.dap apcsw 0x01000000 0x01000000 adapter speed 1000 --