Rock960 Debug with Olimex and OpenOCD

I’m trying get debugging up and running on this board.
I have a SDCard breakout board and an olimex arm-usb-tiny with an olimex swd converter
I’m using openocd with this script

adapter speed 1000

set _CHIPNAME rk3399
set _TARGETNAME $_CHIPNAME.t

set _ENDIAN little

dap create $_CHIPNAME.dap -chain-position $_CHIPNAME.cpu

cti create cti0 -dap $_CHIPNAME.dap -ap-num 6 -ctibase 0xfe438000


target create ${_TARGETNAME}0 aarch64 -dap $_CHIPNAME.dap \
    -coreid 0 -dbgbase 0xfe43000 -cti cti0 -gdb-port 3333

${_TARGETNAME}0 configure -event reset-assert-post "aarch64 dbginit"

targets ${_TARGETNAME}0 

and executing openocd as follows:

openocd -f tcl/interface/ftdi/olimex-arm-usb-tiny-h.cfg -f tcl/interface/ftdi/olimex-arm-jtag-swd.cfg -f tcl/target/rk3399.cfg

Is there something else I’m missing?

I have the same problem with a similar setup than @David_Cerdeira. I feel that is something related with the system reset. Any hint from anyone ?

try bus blaster

////////////////////////////////////edit new rk3399-ngb.cfg////////////////////////

# shipped busblaster cfg

source /opt/openocd/share/openocd/scripts/interface/ftdi/dp_busblaster_kt-link.cfg

# rk3399 config

source /opt/openocd/share/openocd/scripts/target/rk3399.cfg

# swd srst

adapter srst delay 100

gdb_port 3333
telnet_port 4444

${_TARGETNAME}0 configure -event reset-assert “rk3399_init”
${_TARGETNAME}0 configure -event reset-end “clear_regs”

proc rk3399_init {} {
puts “proc rk3399_init ==> begin”

halt
dap apcsw 1
}

proc clear_regs {} {
puts “proc clear_regs ==> begin”
reg r1 0
reg r2 0
reg r3 0
reg r4 0
reg r5 0
reg r6 0
reg r7 0
reg r8 0
reg r9 0
reg r10 0
reg r11 0
reg r12 0

 reg pc  0x10800000

 reg cpsr 0x1d3
 arm mcr 15 0 15 2 4 0x70000013

}

////////////olimex-arm-usb-tiny-h.cfg
adapter driver ftdi
ftdi device_desc “Olimex OpenOCD JTAG ARM-USB-TINY-H”
ftdi vid_pid 0x15ba 0x002a

ftdi layout_init 0x0808 0x0a1b
ftdi layout_signal nSRST -oe 0x0200
ftdi layout_signal nTRST -data 0x0100 -oe 0x0100
ftdi layout_signal LED -data 0x0800

////////////////olimex-arm-jtag-swd.cfg
transport select swd

ftdi layout_signal SWD_EN -nalias nTRST
ftdi layout_signal SWDIO_OE -alias TMS

/////////////dp_busblaster_kt-link.cfg
adapter driver ftdi
ftdi device_desc “Dual RS232-HS”
ftdi vid_pid 0x0403 0x6010

ftdi layout_init 0x8c28 0xff3b
ftdi layout_signal nTRST -data 0x0100 -noe 0x0400
ftdi layout_signal nSRST -data 0x0200 -noe 0x0800
ftdi layout_signal LED -ndata 0x8000
ftdi layout_signal SWD_EN -ndata 0x0020 -oe 0x2000
ftdi layout_signal SWDIO_OE -ndata 0x1000

/////////////kt-link.cfg
adapter driver ftdi
ftdi device_desc “KT-LINK”
ftdi vid_pid 0x0403 0xbbe2

ftdi layout_init 0x8c28 0xff3b
ftdi layout_signal nTRST -data 0x0100 -noe 0x0400
ftdi layout_signal nSRST -data 0x0200 -noe 0x0800
ftdi layout_signal LED -data 0x8000
ftdi layout_signal SWD_EN -ndata 0x0020 -oe 0x2000
ftdi layout_signal SWDIO_OE -ndata 0x1000

###################################################
you can see the content of dp_busblaster_kt-link.cfg, kt-link.cfg
they do the olimex-arm-usb-tiny-h.cfg + olimex-arm-jtag-swd.cfg command

need also check this

and
https://www.twblogs.net/a/5bbd45452b71776bd30c2778