diff options
Diffstat (limited to 'src/target/target/at91eb40a.cfg')
-rw-r--r-- | src/target/target/at91eb40a.cfg | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/src/target/target/at91eb40a.cfg b/src/target/target/at91eb40a.cfg index b2b91dbc..c552dc5b 100644 --- a/src/target/target/at91eb40a.cfg +++ b/src/target/target/at91eb40a.cfg @@ -1,5 +1,25 @@ #Script for AT91EB40a +if { [info exists CHIPNAME] } { + set _CHIPNAME $CHIPNAME +} else { + set _CHIPNAME at91eb40a +} + +if { [info exists ENDIAN] } { + set _ENDIAN $ENDIAN +} else { + set _ENDIAN little +} + +if { [info exists CPUTAPID ] } { + set _CPUTAPID $CPUTAPID +} else { + # force an error till we get a good number + set _CPUTAPID 0xffffffff +} + + #Atmel ties SRST & TRST together, at which point it makes #no sense to use TRST, but use TMS instead. # @@ -11,10 +31,11 @@ reset_config srst_only srst_pulls_trst #jtag scan chain #format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE) -jtag_device 4 0x1 0xf 0xe +jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID #target configuration -target create target0 arm7tdmi -endian little -chain-position 0 -variant arm7tdmi-s_r4 +set _TARGETNAME [format "%s.cpu" $_CHIPNAME] +target create $_TARGETNAME arm7tdmi -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm7tdmi-s_r4 # speed up memory downloads arm7_9 fast_memory_access enable @@ -25,9 +46,9 @@ flash bank ecosflash 0x01000000 0x200000 2 2 0 ecos/at91eb40a.elf # required for usable performance. Used for lots of # other things than flash programming. -[new_target_name] configure -work-area-virt 0 -work-area-phys 0x00030000 -work-area-size 0x10000 -work-area-backup 0 +$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x00030000 -work-area-size 0x10000 -work-area-backup 0 -[new_target_name] configure -event reset-init { +$_TARGETNAME configure -event reset-init { puts "Running reset init script for AT91EB40A" # Reset script for AT91EB40a reg cpsr 0x000000D3 |