]> git.sur5r.net Git - openocd/blob - src/target/target/at91eb40a.cfg
f3fa08fed1427cac4255ba3417124a19c0722352
[openocd] / src / target / target / at91eb40a.cfg
1 #Script for AT91EB40a
2
3 #Atmel ties SRST & TRST together, at which point it makes
4 #no sense to use TRST, but use TMS instead.
5 #
6 #The annoying thing with tying SRST & TRST together is that
7 #there is no way to halt the CPU *before and during* the
8 #SRST reset, which means that the CPU will run a number
9 #of cycles before it can be halted(as much as milliseconds).
10 reset_config srst_only srst_pulls_trst
11  
12 #jtag scan chain
13 #format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
14 jtag_device 4 0x1 0xf 0xe
15
16 #target configuration
17 target arm7tdmi little 0 arm7tdmi-s_r4
18
19 # speed up memory downloads
20 arm7_9 fast_memory_access enable
21 arm7_9 dcc_downloads enable
22
23 #flash driver
24 flash bank ecosflash 0x01000000 0x200000 2 2 0 ecos/at91eb40a.elf
25
26 # required for usable performance. Used for lots of
27 # other things than flash programming.
28 working_area 0 0x00000000 0x20000 nobackup
29
30
31
32 global reset_count
33 set reset_count 0
34
35 proc target_0_post_reset {} {
36         puts "Running reset init script for AT91EB40A"
37         global reset_count
38         # Reset script for AT91EB40a
39         reg cpsr 0x000000D3
40         mww 0xFFE00020 0x1
41         mww 0xFFE00024 0x00000000  
42         mww 0xFFE00000 0x01002539 
43         mww 0xFFFFF124 0xFFFFFFFF  
44         mww 0xffff0010 0x100
45         mww 0xffff0034 0x100
46         set reset_count [expr $reset_count+1]
47         echo "Testing reset $reset_count !"
48         
49         asdfs
50 }
51
52 proc target_0_pre_reset {} {
53         global reset_count
54         set reset_count [expr $reset_count+1]
55         echo "Testing pre_reset $reset_count !"
56 }