Created
April 7, 2024 05:58
-
-
Save tnishinaga/219122a5f1e3973668ee78c0fb1c7bf9 to your computer and use it in GitHub Desktop.
OpenoOCD config file for BCM2712(Raspberry Pi 5)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# bcm2712.cfg | |
# SPDX-License-Identifier: GPL-2.0-or-later | |
# OpenOCD target config file | |
# This file is based on target/bcm2711.cfg | |
# I have checked that it works with Open On-Chip Debugger 0.12.0 | |
# using the Raspberry Pi Debug-Probe interface | |
transport select swd | |
adapter speed 1000 | |
if { [info exists CHIPNAME] } { | |
set _CHIPNAME $CHIPNAME | |
} else { | |
set _CHIPNAME bcm2712 | |
} | |
if { [info exists CHIPCORES] } { | |
set _cores $CHIPCORES | |
} else { | |
set _cores 4 | |
} | |
if { [info exists USE_SMP] } { | |
set _USE_SMP $USE_SMP | |
} else { | |
set _USE_SMP 0 | |
} | |
if { [info exists DAP_TAPID] } { | |
set _DAP_TAPID $DAP_TAPID | |
} else { | |
set _DAP_TAPID 0x2ba00477 | |
} | |
# swj_newdap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_DAP_TAPID | |
swd newdap $_CHIPNAME cpu -expected-id $_DAP_TAPID | |
dap create $_CHIPNAME.dap -chain-position $_CHIPNAME.cpu | |
# MEM-AP for direct access | |
target create $_CHIPNAME.ap mem_ap -dap $_CHIPNAME.dap -ap-num 0 | |
# these addresses are obtained from the ROM table via 'dap info 0' command | |
set _DBGBASE {0x80010000 0x80110000 0x80210000 0x80310000} | |
set _CTIBASE {0x80020000 0x80120000 0x80220000 0x80320000} | |
set _smp_command "target smp" | |
for { set _core 0 } { $_core < $_cores } { incr _core } { | |
set _CTINAME $_CHIPNAME.cti$_core | |
set _TARGETNAME $_CHIPNAME.cpu$_core | |
cti create $_CTINAME -dap $_CHIPNAME.dap -ap-num 0 -baseaddr [lindex $_CTIBASE $_core] | |
target create $_TARGETNAME aarch64 -dap $_CHIPNAME.dap -ap-num 0 -dbgbase [lindex $_DBGBASE $_core] -cti $_CTINAME | |
set _smp_command "$_smp_command $_TARGETNAME" | |
} | |
if {$_USE_SMP} { | |
eval $_smp_command | |
} | |
# default target is cpu0 | |
targets $_CHIPNAME.cpu0 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment