d314e181de14c3877a8b85fd3f22b9a8922ed6a1
[fw/openocd] / tcl / board / at91eb40a.cfg
1 #Script for AT91EB40a
2
3 # FIXME use some standard target config, maybe create one from this
4 #
5 #       source [find target/...cfg]
6
7 if { [info exists CHIPNAME] } {
8    set  _CHIPNAME $CHIPNAME
9 } else {
10    set  _CHIPNAME at91eb40a
11 }
12
13 if { [info exists ENDIAN] } {
14    set  _ENDIAN $ENDIAN
15 } else {
16    set  _ENDIAN little
17 }
18
19 if { [info exists CPUTAPID] } {
20    set _CPUTAPID $CPUTAPID
21 } else {
22    set _CPUTAPID 0x1f0f0f0f
23 }
24
25
26 #Atmel ties SRST & TRST together, at which point it makes
27 #no sense to use TRST, but use TMS instead.
28 #
29 #The annoying thing with tying SRST & TRST together is that
30 #there is no way to halt the CPU *before and during* the
31 #SRST reset, which means that the CPU will run a number
32 #of cycles before it can be halted(as much as milliseconds).
33 reset_config srst_only srst_pulls_trst
34
35 #jtag scan chain
36 jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
37
38 #target configuration
39 set _TARGETNAME $_CHIPNAME.cpu
40 target create $_TARGETNAME arm7tdmi -endian $_ENDIAN -chain-position $_TARGETNAME
41
42 # speed up memory downloads
43 arm7_9 fast_memory_access enable
44 arm7_9 dcc_downloads enable
45
46 #flash driver
47 set _FLASHNAME $_CHIPNAME.flash
48 flash bank $_FLASHNAME cfi 0x01000000 0x200000 2 2 $_TARGETNAME
49
50 # required for usable performance. Used for lots of
51 # other things than flash programming.
52 $_TARGETNAME configure -work-area-phys 0x00030000 -work-area-size 0x10000 -work-area-backup 0
53
54 $_TARGETNAME configure -event reset-init {
55         echo "Running reset init script for AT91EB40A"
56         # Reset script for AT91EB40a
57         reg cpsr 0x000000D3
58         mww 0xFFE00020 0x1
59         mww 0xFFE00024 0x00000000
60         mww 0xFFE00000 0x01002539
61         mww 0xFFFFF124 0xFFFFFFFF
62         mww 0xffff0010 0x100
63         mww 0xffff0034 0x100
64 }
65
66 # This target is pretty snappy...
67 adapter speed 16000