57 lines
1.7 KiB
INI
57 lines
1.7 KiB
INI
# openOCD configuration file for generic FT2232H-based USB-jtag interface
|
|
# references: https://mcuoneclipse.com/2019/10/20/jtag-debugging-the-esp32-with-ft2232-and-openocd/
|
|
|
|
# ----------------------------------------------
|
|
# Interface/adapter configuration
|
|
# ----------------------------------------------
|
|
# FT2232H pinout:
|
|
# TCK: D0
|
|
# TDI: D1
|
|
# TDO: D2
|
|
# TMS: D3
|
|
# TRST: D4 (low-active, optional - pull input pin high if not used)
|
|
|
|
adapter driver ftdi
|
|
ftdi vid_pid 0x0403 0x6010
|
|
ftdi channel 0
|
|
ftdi layout_init 0x0038 0x003b
|
|
|
|
adapter speed 2000
|
|
ftdi layout_signal nTRST -ndata 0x0010 -noe 0x0040
|
|
transport select jtag
|
|
|
|
# ----------------------------------------------
|
|
# Target configuration
|
|
# ----------------------------------------------
|
|
set _CHIPNAME neorv32
|
|
set _JTAGID 0x0cafe001
|
|
jtag newtap $_CHIPNAME cpu -irlen 5 -expected-id $_JTAGID
|
|
|
|
set _TARGETNAME $_CHIPNAME.cpu
|
|
|
|
target create $_TARGETNAME.0 riscv -chain-position $_TARGETNAME
|
|
|
|
# ----------------------------------------------
|
|
# Access memory via program buffer
|
|
# ----------------------------------------------
|
|
riscv set_mem_access progbuf
|
|
|
|
# ----------------------------------------------
|
|
# Scratch pad RAM
|
|
# ----------------------------------------------
|
|
# work area ("scratch pad RAM"): beginning of (internal) DMEM, 256 bytes, requires(!) backup
|
|
$_TARGETNAME.0 configure -work-area-phys 0x80000000 -work-area-size 256 -work-area-backup 1
|
|
|
|
# ----------------------------------------------
|
|
# Expose NEORV32-specific CSRs
|
|
# ----------------------------------------------
|
|
riscv expose_csrs 4032=mxisa
|
|
|
|
# ----------------------------------------------
|
|
# Start session
|
|
# ----------------------------------------------
|
|
init
|
|
halt
|
|
|
|
echo "Target HALTED."
|
|
echo "Ready for remote connections."
|