]> www.infradead.org Git - users/borneoa/openocd-next.git/commitdiff
tcl/target/nordic/nrf54l: minor corrections
authorTomas Vanek <vanekt@fbl.cz>
Tue, 11 Feb 2025 16:59:00 +0000 (17:59 +0100)
committerTomas Vanek <vanekt@fbl.cz>
Tue, 1 Apr 2025 04:50:42 +0000 (04:50 +0000)
Add SWD multidrop setting.
Fix the name of AP #1 to AUX-AP
Set AUX-AP CSW Prot bit[0] to make RISC-V debug accessible on AUX-AP.

Change-Id: I496e07acfe90dd858e4403176a8330d8c1a0b560
Signed-off-by: Tomas Vanek <vanekt@fbl.cz>
Reviewed-on: https://review.openocd.org/c/openocd/+/8752
Tested-by: jenkins
Reviewed-by: zapb <dev@zapb.de>
tcl/target/nordic/nrf54l.cfg

index 70ead1365cbd7ab7f4da45c365a6506368d6b479..3e14055f14b2d7fee3786af8f8270430f91187ae 100644 (file)
@@ -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