# SPDX-License-Identifier: GPL-2.0-or-later # Target Support for Xtensa Processors # set xtensa_ids { 0x120034e5 0x120134e5 0x209034e5 0x209134e5 0x209234e5 0x209334e5 0x209434e5 0x209534e5 0x209634e5 0x209734e5 0x20a034e5 0x20a134e5 0x20a234e5 0x20a334e5 0x20a434e5 0x20a534e5 0x20a634e5 0x20a734e5 0x20a834e5 0x20b034e5 } set expected_xtensa_ids {} foreach i $xtensa_ids { lappend expected_xtensa_ids -expected-id $i } if { [info exists CHIPNAME] } { set _CHIPNAME $CHIPNAME } else { set _CHIPNAME xtensa } if { [info exists CPUTAPID] } { set _CPUTAPARGLIST "-expected-id $CPUTAPID" } else { set _CPUTAPARGLIST [join $expected_xtensa_ids] } set _TARGETNAME $_CHIPNAME set _CPU0NAME cpu set _TAPNAME $_CHIPNAME.$_CPU0NAME if { [info exists XTENSA_DAP] } { source [find target/swj-dp.tcl] # SWD mode ignores the -irlen parameter eval swj_newdap $_CHIPNAME cpu -irlen 4 $_CPUTAPARGLIST dap create $_CHIPNAME.dap -chain-position $_CHIPNAME.cpu set _TARGETNAME $_CHIPNAME.cpu if { [info exists XTENSA_DAP_BASE] } { # Specify fixed offset for accessing XDM via APB behind a DAP interface target create $_TARGETNAME xtensa -dap $_CHIPNAME.dap -dbgbase $XTENSA_DAP_BASE } else { target create $_TARGETNAME xtensa -dap $_CHIPNAME.dap } } else { # JTAG direct (without DAP) eval jtag newtap $_CHIPNAME $_CPU0NAME -irlen 5 $_CPUTAPARGLIST target create $_TARGETNAME xtensa -chain-position $_TAPNAME } $_TARGETNAME configure -event reset-assert-post { soft_reset_halt } gdb_report_register_access_error enable