2 reset_config trst_and_srst
4 if { [info exists CHIPNAME] } {
5 set _CHIPNAME $CHIPNAME
7 set _CHIPNAME at91rm9200
10 if { [info exists ENDIAN] } {
16 if { [info exists CPUTAPID ] } {
17 set _CPUTAPID $CPUTAPID
19 set _CPUTAPID 0x05b0203f
22 # Never allow the following!
23 if { $_CPUTAPID == 0x15b0203f } {
24 puts "-------------------------------------------------------"
26 puts "- ERROR: TapID 0x15b0203f is wrong for at91rm9200 -"
27 puts "- ERROR: The chip/board has a JTAG select pin/jumper -"
29 puts "- ERROR: In one position (0x05b0203f) it selects the -"
30 puts "- ERROR: ARM CPU, in the other position (0x1b0203f) -"
31 puts "- ERROR: it selects boundry-scan not the ARM -"
33 puts "-------------------------------------------------------"
36 jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
39 # Create the GDB Target.
40 set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
41 target create $_TARGETNAME arm920t -endian $_ENDIAN -chain-position $_TARGETNAME
42 # AT91RM9200 has a 16K block of sram @ 0x0020.0000
43 $_TARGETNAME configure -work-area-virt 0x00200000 -work-area-phys 0x00200000 -work-area-size 0x4000 -work-area-backup 1
45 # This chip has a DCC ... use it
46 arm7_9 dcc_downloads enable