2 # This is for the "at91rm9200-DK" (not the EK) eval board.
4 # The two are probably very simular.... I have DK...
6 # It has atmel at91rm9200 chip.
7 source [find target/at91rm9200.cfg]
9 reset_config trst_and_srst
11 $_TARGETNAME configure -event gdb-attach { reset init }
12 $_TARGETNAME configure -event reset-init { at91rm9200_dk_init }
14 #flash bank <name> <driver> <base> <size> <chip_width> <bus_width> <target>
15 set _FLASHNAME $_CHIPNAME.flash
16 flash bank $_FLASHNAME cfi 0x10000000 0x00200000 2 2 $_TARGETNAME
19 proc at91rm9200_dk_init { } {
20 # Try to run at 1khz... Yea, that slow!
21 # Chip is really running @ 32khz
24 mww 0xfffffc64 0xffffffff
25 ## disable all clocks but system clock
26 mww 0xfffffc04 0xfffffffe
27 ## disable all clocks to pioa and piob
28 mww 0xfffffc14 0xffffffc3
29 ## master clock = slow cpu = slow
30 ## (means the CPU is running at 32khz!)
33 mww 0xfffffc20 0x0000ff01
35 mww 0xfffffc28 0x20263e04
37 mww 0xfffffc2c 0x10483e0e
38 ## let pll settle... sleep 100msec
40 ## switch to fast clock
42 ## Sleep some - (go read)
45 #========================================
46 # CPU now runs at 180mhz
49 #========================================
52 ## set memc for all memories
54 ## program smc controller
57 mww 0xffffff98 0x7fffffd0
58 ## all banks precharge
60 ## touch sdram chip to make it work
62 ## sdram controller mode register
72 ## sdram controller mode register