xref: /rk3399_rockchip-uboot/board/cobra5272/bdm/cobra5272_uboot.gdb (revision 93e1459641e758d2b096d3f1b39414a39bb314f8)
1*a562e1bdSwdenk#
2*a562e1bdSwdenk# GDB Init script for the Coldfire 5272 processor.
3*a562e1bdSwdenk#
4*a562e1bdSwdenk# The main purpose of this script is to configure the
5*a562e1bdSwdenk# DRAM controller so code can be loaded.
6*a562e1bdSwdenk#
7*a562e1bdSwdenk# This file was changed to suite the senTec COBRA5272 board.
8*a562e1bdSwdenk#
9*a562e1bdSwdenk
10*a562e1bdSwdenkdefine addresses
11*a562e1bdSwdenk
12*a562e1bdSwdenkset $mbar  = 0x10000001
13*a562e1bdSwdenkset $scr   = $mbar - 1 + 0x004
14*a562e1bdSwdenkset $spr   = $mbar - 1 + 0x006
15*a562e1bdSwdenkset $pmr   = $mbar - 1 + 0x008
16*a562e1bdSwdenkset $apmr  = $mbar - 1 + 0x00e
17*a562e1bdSwdenkset $dir   = $mbar - 1 + 0x010
18*a562e1bdSwdenkset $icr1  = $mbar - 1 + 0x020
19*a562e1bdSwdenkset $icr2  = $mbar - 1 + 0x024
20*a562e1bdSwdenkset $icr3  = $mbar - 1 + 0x028
21*a562e1bdSwdenkset $icr4  = $mbar - 1 + 0x02c
22*a562e1bdSwdenkset $isr   = $mbar - 1 + 0x030
23*a562e1bdSwdenkset $pitr  = $mbar - 1 + 0x034
24*a562e1bdSwdenkset $piwr  = $mbar - 1 + 0x038
25*a562e1bdSwdenkset $pivr  = $mbar - 1 + 0x03f
26*a562e1bdSwdenkset $csbr0 = $mbar - 1 + 0x040
27*a562e1bdSwdenkset $csor0 = $mbar - 1 + 0x044
28*a562e1bdSwdenkset $csbr1 = $mbar - 1 + 0x048
29*a562e1bdSwdenkset $csor1 = $mbar - 1 + 0x04c
30*a562e1bdSwdenkset $csbr2 = $mbar - 1 + 0x050
31*a562e1bdSwdenkset $csor2 = $mbar - 1 + 0x054
32*a562e1bdSwdenkset $csbr3 = $mbar - 1 + 0x058
33*a562e1bdSwdenkset $csor3 = $mbar - 1 + 0x05c
34*a562e1bdSwdenkset $csbr4 = $mbar - 1 + 0x060
35*a562e1bdSwdenkset $csor4 = $mbar - 1 + 0x064
36*a562e1bdSwdenkset $csbr5 = $mbar - 1 + 0x068
37*a562e1bdSwdenkset $csor5 = $mbar - 1 + 0x06c
38*a562e1bdSwdenkset $csbr6 = $mbar - 1 + 0x070
39*a562e1bdSwdenkset $csor6 = $mbar - 1 + 0x074
40*a562e1bdSwdenkset $csbr7 = $mbar - 1 + 0x078
41*a562e1bdSwdenkset $csor7 = $mbar - 1 + 0x07c
42*a562e1bdSwdenkset $pacnt = $mbar - 1 + 0x080
43*a562e1bdSwdenkset $paddr = $mbar - 1 + 0x084
44*a562e1bdSwdenkset $padat = $mbar - 1 + 0x086
45*a562e1bdSwdenkset $pbcnt = $mbar - 1 + 0x088
46*a562e1bdSwdenkset $pbddr = $mbar - 1 + 0x08c
47*a562e1bdSwdenkset $pbdat = $mbar - 1 + 0x08e
48*a562e1bdSwdenkset $pcddr = $mbar - 1 + 0x094
49*a562e1bdSwdenkset $pcdat = $mbar - 1 + 0x096
50*a562e1bdSwdenkset $pdcnt = $mbar - 1 + 0x098
51*a562e1bdSwdenkset $sdcr  = $mbar - 1 + 0x180
52*a562e1bdSwdenkset $sdtr  = $mbar - 1 + 0x184
53*a562e1bdSwdenkset $wrrr  = $mbar - 1 + 0x280
54*a562e1bdSwdenkset $wirr  = $mbar - 1 + 0x283
55*a562e1bdSwdenkset $wcr   = $mbar - 1 + 0x288
56*a562e1bdSwdenkset $wer   = $mbar - 1 + 0x28c
57*a562e1bdSwdenk
58*a562e1bdSwdenkend
59*a562e1bdSwdenk
60*a562e1bdSwdenk
61*a562e1bdSwdenk#
62*a562e1bdSwdenk# Setup system configuration
63*a562e1bdSwdenk#
64*a562e1bdSwdenkdefine setup-sys
65*a562e1bdSwdenkset *((unsigned short *) $scr) = 0x0003
66*a562e1bdSwdenkset *((unsigned short *) $spr) = 0xffff
67*a562e1bdSwdenkset *((unsigned char *) $pivr) = 0x4f
68*a562e1bdSwdenkend
69*a562e1bdSwdenk
70*a562e1bdSwdenk
71*a562e1bdSwdenk#
72*a562e1bdSwdenk# Setup Chip Selects (as per Motorola M5272C3 board)
73*a562e1bdSwdenk#
74*a562e1bdSwdenkdefine setup-cs
75*a562e1bdSwdenk
76*a562e1bdSwdenk# CS0 -- FLASH
77*a562e1bdSwdenkset *((unsigned long *) $csbr0) = 0xffe00201
78*a562e1bdSwdenkset *((unsigned long *) $csor0) = 0xffe00014
79*a562e1bdSwdenk
80*a562e1bdSwdenk# CS1 -- external bus test
81*a562e1bdSwdenkset *((unsigned long *) $csbr1) = 0x0
82*a562e1bdSwdenkset *((unsigned long *) $csor1) = 0x0
83*a562e1bdSwdenk
84*a562e1bdSwdenk# CS2 -- Optional FSRAM
85*a562e1bdSwdenkset *((unsigned long *) $csbr2) = 0x30000001
86*a562e1bdSwdenkset *((unsigned long *) $csor2) = 0xfff80000
87*a562e1bdSwdenk
88*a562e1bdSwdenk# CS3 -- not used
89*a562e1bdSwdenkset *((unsigned long *) $csbr3) = 0x0
90*a562e1bdSwdenkset *((unsigned long *) $csor3) = 0x0
91*a562e1bdSwdenk
92*a562e1bdSwdenk# CS4 --  not used
93*a562e1bdSwdenkset *((unsigned long *) $csbr4) = 0x0
94*a562e1bdSwdenkset *((unsigned long *) $csor4) = 0x0
95*a562e1bdSwdenk
96*a562e1bdSwdenk# CS5 -- PLI socket0
97*a562e1bdSwdenkset *((unsigned long *) $csbr5) = 0x0
98*a562e1bdSwdenkset *((unsigned long *) $csor5) = 0x0
99*a562e1bdSwdenk
100*a562e1bdSwdenk# CS6 -- PLI socket1
101*a562e1bdSwdenkset *((unsigned long *) $csbr6) = 0x0
102*a562e1bdSwdenkset *((unsigned long *) $csor6) = 0x0
103*a562e1bdSwdenk
104*a562e1bdSwdenk# CS7 -- SDRAM
105*a562e1bdSwdenkset *((unsigned long *) $csbr7) = 0x00000701
106*a562e1bdSwdenkset *((unsigned long *) $csor7) = 0xff00007c
107*a562e1bdSwdenk
108*a562e1bdSwdenkend
109*a562e1bdSwdenk
110*a562e1bdSwdenk
111*a562e1bdSwdenk#
112*a562e1bdSwdenk# Setup the DRAM controller.
113*a562e1bdSwdenk#
114*a562e1bdSwdenk
115*a562e1bdSwdenkdefine setup-dram
116*a562e1bdSwdenkset *((unsigned long *) $sdtr) = 0x0000f539
117*a562e1bdSwdenkset *((unsigned long *) $sdcr) = 0x00004211
118*a562e1bdSwdenk
119*a562e1bdSwdenk# Dummy write to start SDRAM
120*a562e1bdSwdenkset *((unsigned long *) 0) = 0
121*a562e1bdSwdenkend
122*a562e1bdSwdenk
123*a562e1bdSwdenk
124*a562e1bdSwdenk#
125*a562e1bdSwdenk# Setup for GPIO pins
126*a562e1bdSwdenk#
127*a562e1bdSwdenkdefine setup-ppio
128*a562e1bdSwdenk
129*a562e1bdSwdenk# PORT A -- the LED's
130*a562e1bdSwdenkset *((unsigned long *) $pacnt) = 0x00000000
131*a562e1bdSwdenk# lower 8 bits for output:
132*a562e1bdSwdenkset *((unsigned short *) $paddr) = 0xff
133*a562e1bdSwdenk# LED's off:
134*a562e1bdSwdenkset *((unsigned short *) $padat) = 0xff
135*a562e1bdSwdenk
136*a562e1bdSwdenk# PORT B
137*a562e1bdSwdenkset *((unsigned long *) $pbcnt) = 0x55554155
138*a562e1bdSwdenkset *((unsigned short *) $pbddr) = 0x0000
139*a562e1bdSwdenkset *((unsigned short *) $pbdat) = 0x17ea
140*a562e1bdSwdenk
141*a562e1bdSwdenk# PORT C
142*a562e1bdSwdenk#set *((unsigned short *) $pcddr) = 0x0000
143*a562e1bdSwdenk#set *((unsigned short *) $pcdat) = 0x1898
144*a562e1bdSwdenk
145*a562e1bdSwdenk# PORT D
146*a562e1bdSwdenkset *((unsigned long *) $pdcnt) = 0x00000000
147*a562e1bdSwdenk
148*a562e1bdSwdenkend
149*a562e1bdSwdenk
150*a562e1bdSwdenk
151*a562e1bdSwdenk#
152*a562e1bdSwdenk#	Added for uClinux-coldfire target...
153*a562e1bdSwdenk#
154*a562e1bdSwdenktarget bdm /dev/bdm
155*a562e1bdSwdenk
156*a562e1bdSwdenkaddresses
157*a562e1bdSwdenksetup-sys
158*a562e1bdSwdenksetup-cs
159*a562e1bdSwdenksetup-dram
160*a562e1bdSwdenksetup-ppio
161*a562e1bdSwdenkset print pretty
162*a562e1bdSwdenkset print asm-demangle
163*a562e1bdSwdenkdisplay/i $pc
164*a562e1bdSwdenk
165*a562e1bdSwdenk
166*a562e1bdSwdenk#
167*a562e1bdSwdenkload u-boot
168*a562e1bdSwdenkset $pc=0x20000
169*a562e1bdSwdenkc
170