Pieter Conradie <Pieter.Conradie@psitek.com> Scripts for Atmel AT91SAM7S256 and AT91S...
[fw/openocd] / tcl / board / atmel_at91sam9260-ek.cfg
1 ################################################################################\r
2 # Atmel AT91SAM9260-EK eval board\r
3 #\r
4 # http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3933\r
5 #\r
6 # Atmel AT91SAM9260 : PLLA = 198.656 MHz, MCK = 99.328 MHz\r
7 #                     OSCSEL configured for external 32.768 kHz crystal\r
8 #\r
9 # 32-bit SDRAM : 2 x Micron MT48LC16M16A2, 4M x 16Bit x 4 Banks\r
10 #\r
11 ################################################################################\r
12 \r
13 # We add to the minimal configuration.\r
14 source [find target/at91sam9260.cfg]\r
15 \r
16 # By default S1 is open and this means that NTRST is not connected.\r
17 # The reset_config in target/at91sam9260.cfg is overridden here.\r
18 # (or S1 must be populated with a 0 Ohm resistor)\r
19 reset_config srst_only\r
20 \r
21 $_TARGETNAME configure -event reset-start {\r
22         # At reset CPU runs at 32.768 kHz.\r
23         # JTAG Frequency must be 6 times slower if RCLK is not supported.\r
24         jtag_rclk 5\r
25         halt\r
26         # RSTC_MR : enable user reset, MMU may be enabled... use physical address\r
27         arm926ejs mww_phys 0xfffffd08 0xa5000501\r
28 }\r
29         \r
30 $_TARGETNAME configure -event reset-init {\r
31         mww 0xfffffd44 0x00008000         # WDT_MR : disable watchdog\r
32 \r
33         mww 0xfffffc20 0x00004001         # CKGR_MOR : enable the main oscillator\r
34         sleep 20                          # wait 20 ms\r
35         mww 0xfffffc30 0x00000001         # PMC_MCKR : switch to main oscillator\r
36         sleep 10                          # wait 10 ms\r
37         mww 0xfffffc28 0x2060bf09         # CKGR_PLLAR: Set PLLA Register for 198.656 MHz\r
38         sleep 20                          # wait 20 ms\r
39         mww 0xfffffc30 0x00000101         # PMC_MCKR : Select prescaler (divide by 2)\r
40         sleep 10                          # wait 10 ms\r
41         mww 0xfffffc30 0x00000102         # PMC_MCKR : Clock from PLLA is selected (99.328 MHz)\r
42         sleep 10                          # wait 10 ms\r
43 \r
44         # Increase JTAG Speed to 6 MHz if RCLK is not supported\r
45         jtag_rclk 6000\r
46 \r
47         arm7_9 dcc_downloads enable       # Enable faster DCC downloads\r
48 \r
49         mww 0xfffff870 0xffff0000         # PIO_ASR  : Select peripheral function for D15..D31\r
50         mww 0xfffff804 0xffff0000         # PIO_PDR  : Disable PIO function for D15..D31\r
51         \r
52         mww 0xffffef1c 0x00010002         # EBI_CSA  : Assign EBI Chip Select 1 to SDRAM, VDDIOMSEL set for +3V3 memory\r
53 \r
54         mww 0xffffea08 0x85227259         # SDRAMC_CR : Configure SDRAM (2 x Micron MT48LC16M16A2 : 4M x 16Bit x 4 Banks)\r
55 \r
56         mww 0xffffea00 0x1                # SDRAMC_MR : issue a NOP command\r
57         mww 0x20000000 0\r
58         mww 0xffffea00 0x2                # SDRAMC_MR : issue an 'All Banks Precharge' command\r
59         mww 0x20000000 0\r
60         mww 0xffffea00 0x4                # SDRAMC_MR : issue 8 x 'Auto-Refresh' Command\r
61         mww 0x20000000 0\r
62         mww 0xffffea00 0x4\r
63         mww 0x20000000 0\r
64         mww 0xffffea00 0x4\r
65         mww 0x20000000 0\r
66         mww 0xffffea00 0x4\r
67         mww 0x20000000 0\r
68         mww 0xffffea00 0x4\r
69         mww 0x20000000 0\r
70         mww 0xffffea00 0x4\r
71         mww 0x20000000 0\r
72         mww 0xffffea00 0x4\r
73         mww 0x20000000 0\r
74         mww 0xffffea00 0x4\r
75         mww 0x20000000 0\r
76         mww 0xffffea00 0x3                # SDRAMC_MR : issue a 'Load Mode Register' command\r
77         mww 0x20000000 0\r
78         mww 0xffffea00 0x0                # SDRAMC_MR : normal mode\r
79         mww 0x20000000 0\r
80         mww 0xffffea04 0x2b6              # SDRAMC_TR : Set refresh timer count to 7us\r
81 }\r