1 ######################################
3 ######################################
5 if { [info exists CHIPNAME] } {
6 set _CHIPNAME $CHIPNAME
11 if { [info exists ENDIAN] } {
18 if { [info exists CPUTAPID] } {
19 set _CPUTAPID $CPUTAPID
21 set _CPUTAPID 0x07926f0f
25 # Wired to seperate STDO pin on the lpc3131, externally muxed to TDO on ea3131 module
26 # JTAGSEL pin must be 0 to activate, which reassigns arm tdo to a pass through.
27 if { [info exists SJCTAPID] } {
28 set _SJCTAPID $SJCTAPID
30 set _SJCTAPID 0x1541E02B
33 jtag newtap $_CHIPNAME cpu -irlen 4 -expected-id $_CPUTAPID
35 ##################################################################
36 # various symbol definitions, to avoid hard-wiring addresses
37 ##################################################################
40 set lpc313x [ dict create ]
42 # Physical addresses for controllers and memory
43 dict set lpc313x sram0 0x11028000
44 dict set lpc313x sram1 0x11040000
45 dict set lpc313x uart 0x15001000
46 dict set lpc313x cgu 0x13004000
47 dict set lpc313x ioconfig 0x13003000
48 dict set lpc313x sysconfig 0x13002800
49 dict set lpc313x wdt 0x13002400
51 ##################################################################
52 # Target configuration
53 ##################################################################
55 adapter_nsrst_delay 1000
58 set _TARGETNAME $_CHIPNAME.cpu
59 target create $_TARGETNAME arm926ejs -endian $_ENDIAN -chain-position $_TARGETNAME
61 $_TARGETNAME invoke-event halted
63 $_TARGETNAME configure -work-area-phys [dict get $lpc313x sram0] -work-area-size 0x30000 -work-area-backup 0
65 $_TARGETNAME configure -event reset-init {
66 echo "\nRunning reset init script for LPC3131\n"
69 reg cpsr 0xa00000d3 ;#Supervisor mode
75 arm7_9 fast_memory_access enable
76 arm7_9 dcc_downloads enable