OSDN Git Service

2013.10.24
[uclinux-h8/uClinux-dist.git] / tools / misc / nettel5272.gdb
1 #
2 # GDB Init script for the Coldfire 5272 based NETtel board.
3 #
4 # The main purpose of this script is to configure the 
5 # DRAM controller so code can be loaded.
6 #
7
8 define addresses
9
10 set $mbar  = 0x10000001
11 set $scr   = $mbar - 1 + 0x004
12 set $spr   = $mbar - 1 + 0x006
13 set $pmr   = $mbar - 1 + 0x008
14 set $apmr  = $mbar - 1 + 0x00e
15 set $dir   = $mbar - 1 + 0x010
16 set $icr1  = $mbar - 1 + 0x020
17 set $icr2  = $mbar - 1 + 0x024
18 set $icr3  = $mbar - 1 + 0x028
19 set $icr4  = $mbar - 1 + 0x02c
20 set $isr   = $mbar - 1 + 0x030
21 set $pitr  = $mbar - 1 + 0x034
22 set $piwr  = $mbar - 1 + 0x038
23 set $pivr  = $mbar - 1 + 0x03f
24 set $csbr0 = $mbar - 1 + 0x040
25 set $csor0 = $mbar - 1 + 0x044
26 set $csbr1 = $mbar - 1 + 0x048
27 set $csor1 = $mbar - 1 + 0x04c
28 set $csbr2 = $mbar - 1 + 0x050
29 set $csor2 = $mbar - 1 + 0x054
30 set $csbr3 = $mbar - 1 + 0x058
31 set $csor3 = $mbar - 1 + 0x05c
32 set $csbr4 = $mbar - 1 + 0x060
33 set $csor4 = $mbar - 1 + 0x064
34 set $csbr5 = $mbar - 1 + 0x068
35 set $csor5 = $mbar - 1 + 0x06c
36 set $csbr6 = $mbar - 1 + 0x070
37 set $csor6 = $mbar - 1 + 0x074
38 set $csbr7 = $mbar - 1 + 0x078
39 set $csor7 = $mbar - 1 + 0x07c
40 set $pacnt = $mbar - 1 + 0x080
41 set $paddr = $mbar - 1 + 0x084
42 set $padat = $mbar - 1 + 0x086
43 set $pbcnt = $mbar - 1 + 0x088
44 set $pbddr = $mbar - 1 + 0x08c
45 set $pbdat = $mbar - 1 + 0x08e
46 set $pcddr = $mbar - 1 + 0x094
47 set $pcdat = $mbar - 1 + 0x096
48 set $pdcnt = $mbar - 1 + 0x098
49 set $sdcr  = $mbar - 1 + 0x180
50 set $sdtr  = $mbar - 1 + 0x184
51 set $wrrr  = $mbar - 1 + 0x280
52 set $wirr  = $mbar - 1 + 0x283
53 set $wcr   = $mbar - 1 + 0x288
54 set $wer   = $mbar - 1 + 0x28c
55
56 end
57
58
59 #
60 # Setup system configuration
61 #
62 define setup-sys
63 set *((unsigned short *) $scr) = 0x9003
64 set *((unsigned short *) $spr) = 0x00ff
65 set *((unsigned char *) $pivr) = 0x4f
66 end
67
68
69 #
70 # Setup Chip Selects
71 #
72 define setup-cs
73
74 # CS0 -- FLASH
75 set *((unsigned long *) $csbr0) = 0xf0000201
76 set *((unsigned long *) $csor0) = 0xf0000014
77
78 # CS1 -- not used
79 set *((unsigned long *) $csbr1) = 0x00000000
80 set *((unsigned long *) $csor1) = 0x00000000
81
82 # CS2 -- not used
83 set *((unsigned long *) $csbr2) = 0x00000000
84 set *((unsigned long *) $csor2) = 0x00000000
85
86 # CS3 -- Davicom 10Mb ethernet, 16bit,
87 set *((unsigned long *) $csbr3) = 0x30600201
88 set *((unsigned long *) $csor3) = 0xfff0007c
89
90 # CS4 --  not used
91 set *((unsigned long *) $csbr4) = 0x00000000
92 set *((unsigned long *) $csor4) = 0x00000000
93
94 # CS5 -- not used
95 set *((unsigned long *) $csbr5) = 0x00000000
96 set *((unsigned long *) $csor5) = 0x00000000
97
98 # CS6 -- not used
99 set *((unsigned long *) $csbr6) = 0x00000000
100 set *((unsigned long *) $csor6) = 0x00000000
101
102 # CS7 -- SDRAM, 4MB, 32 bit
103 set *((unsigned long *) $csbr7) = 0x00000701
104 set *((unsigned long *) $csor7) = 0xffc0007c
105
106 # CS7 -- SDRAM, 8MB, 16 bit
107 #set *((unsigned long *) $csbr7) = 0x00000601
108 #set *((unsigned long *) $csor7) = 0xff80017c
109
110 end
111
112
113 #
114 # Setup the DRAM controller.
115 #
116
117 define setup-dram
118 set *((unsigned long *) $sdtr) = 0x0000f539
119 # SDRAM, 32 bit
120 set *((unsigned long *) $sdcr) = 0x00004211
121 # SDRAM, 16 bit
122 #set *((unsigned long *) $sdcr) = 0x00002211
123
124 # Dummy write to start SDRAM
125 set *((unsigned long *) 0) = 0
126 end
127
128
129 #
130 # Setup for GPIO pins
131 #
132 define setup-ppio
133
134 # PORT A
135 set *((unsigned long *) $pacnt) = 0x00000000
136 set *((unsigned short *) $paddr) = 0x001f
137 set *((unsigned short *) $padat) = 0xffff
138
139 # PORT B
140 set *((unsigned long *) $pbcnt) = 0x55550555
141 set *((unsigned short *) $pbddr) = 0x0040
142 set *((unsigned short *) $pbdat) = 0xffff
143
144 # PORT C -- not used, in 32 bit mode
145
146 # PORT D
147 set *((unsigned long *) $pdcnt) = 0x00000000
148
149 end
150
151
152 #
153 #       FLASH prgramming code
154 #
155 define flash-erase
156 set *((unsigned short *) 0xf0000aaa) = 0xaaaa
157 set *((unsigned short *) 0xf0000554) = 0x5555
158 set *((unsigned short *) 0xf0000aaa) = 0x8080
159 set *((unsigned short *) 0xf0000aaa) = 0xaaaa
160 set *((unsigned short *) 0xf0000554) = 0x5555
161 set *((unsigned short *) 0xf0000000) = 0x3030
162 end
163
164 define flash-programword
165 set *((unsigned short *) 0xf0000aaa) = 0xaaaa
166 set *((unsigned short *) 0xf0000554) = 0x5555
167 set *((unsigned short *) 0xf0000aaa) = 0xa0a0
168 set *((unsigned short *) $arg0) = $arg1
169 #while (*((unsigned short *) $arg0) != $arg1)
170 #       set $d0 = 0
171 end
172
173 define flash-programstartaddr
174 flash-programword 0xf0000004 0x0000
175 flash-programword 0xf0000006 0x0400
176 end
177
178 define flash-program
179 set $num = $arg0
180 set $dst = 0xf0000400
181 set $src = 0x20000000
182 flash-programstartaddr
183 while ($num > 0)
184         set $word = *((unsigned short *) $src)
185         flash-programword $dst $word
186         set $src = $src + 2
187         set $dst = $dst + 2
188         set $num = $num - 2
189 end
190 end
191
192
193 #
194 #       GDB boot loader
195 #
196 define bootload
197 load boot/etherboot/ethboot-bdm.elf
198 load boot/boot-bdm.elf
199 symbol-file boot/boot-bdm.elf
200 set $pc=_start
201 add-symbol-file boot/etherboot/ethboot-bdm.elf &etherboot_addr
202 echo \nType 'cont' to start bootloader...\n
203 end
204
205
206 #
207 #       NETtel 5272 uClinux-coldfire target...
208 #
209 target bdm /dev/bdmcf0
210
211 addresses
212 setup-sys
213 setup-cs
214 setup-dram
215 setup-ppio
216 set $rambar = 0x20000001
217 set print pretty
218 set print asm-demangle
219 display/i $pc
220