usb: ums: add ums exit feature by ctrl+c or by detach usb cable
[platform/kernel/u-boot.git] / board / ppmc7xx / init.S
1 /*
2  * init.S
3  * ------
4  *
5  * Wind River PPMC 7xx/74xx init code.
6  *
7  * By Richard Danter (richard.danter@windriver.com)
8  * Copyright (C) 2005 Wind River Systems
9  *
10  * NOTE: The following code was generated automatically by Workbench
11  *       from the ppmc7400_107.reg register file.
12  */
13
14 #include <ppc_asm.tmpl>
15
16
17 .globl board_asm_init
18 board_asm_init:
19
20       lis    r4,0xFEC0
21       ori    r4,r4,0x0000
22       lis    r5,0xFEE0
23       ori    r5,r5,0x0000
24       lis    r3,0x8000          # ADDR_00
25       ori    r3,r3,0x0000
26       stwbrx    r3,0,r4
27       li     r3,0x1057          # VENDOR
28       li    r8, 0x0
29       sthbrx    r3,r8,r5
30       lis    r3,0x8000          # ADDR_02
31       ori    r3,r3,0x0002
32       stwbrx    r3,0,r4
33       li     r3,0x0004          # ID
34       li    r8, 0x2
35       sthbrx    r3,r8,r5
36       lis    r3,0x8000          # ADDR_04
37       ori    r3,r3,0x0004
38       stwbrx    r3,0,r4
39       li     r3,0x0006          # PCICMD
40       li    r8, 0x0
41       sthbrx    r3,r8,r5
42       lis    r3,0x8000          # ADDR_06
43       ori    r3,r3,0x0006
44       stwbrx    r3,0,r4
45       li     r3,0x00A0          # PCISTAT
46       li    r8, 0x2
47       sthbrx    r3,r8,r5
48       lis    r3,0x8000          # ADDR_08
49       ori    r3,r3,0x0008
50       stwbrx    r3,0,r4
51       li     r3,0x10            # REVID
52       stb    r3,0x0(r5)
53       lis    r3,0x8000          # ADDR_09
54       ori    r3,r3,0x0009
55       stwbrx    r3,0,r4
56       li     r3,0x00            # PROGIR
57       stb    r3,0x1(r5)
58       lis    r3,0x8000          # ADDR_0A
59       ori    r3,r3,0x000A
60       stwbrx    r3,0,r4
61       li     r3,0x00            # SUBCCODE
62       stb    r3,0x2(r5)
63       lis    r3,0x8000          # ADDR_0B
64       ori    r3,r3,0x000B
65       stwbrx    r3,0,r4
66       li     r3,0x06            # PBCCR
67       stb    r3,0x3(r5)
68       lis    r3,0x8000          # ADDR_0C
69       ori    r3,r3,0x000C
70       stwbrx    r3,0,r4
71       li     r3,0x08            # PCLSR
72       stb    r3,0x0(r5)
73       lis    r3,0x8000          # ADDR_0D
74       ori    r3,r3,0x000D
75       stwbrx    r3,0,r4
76       li     r3,0x00            # PLTR
77       stb    r3,0x1(r5)
78       lis    r3,0x8000          # ADDR_0E
79       ori    r3,r3,0x000E
80       stwbrx    r3,0,r4
81       li     r3,0x00            # HEADTYPE
82       stb    r3,0x2(r5)
83       lis    r3,0x8000          # ADDR_0F
84       ori    r3,r3,0x000F
85       stwbrx    r3,0,r4
86       li     r3,0x00            # BISTCTRL
87       stb    r3,0x3(r5)
88       lis    r3,0x8000          # ADDR_10
89       ori    r3,r3,0x0010
90       stwbrx    r3,0,r4
91       lis    r3,0x0000          # LMBAR
92       ori    r3,r3,0x0008
93       li    r8, 0x0
94       stwbrx    r3,r8,r5
95       lis    r3,0x8000          # ADDR_14
96       ori    r3,r3,0x0014
97       stwbrx    r3,0,r4
98       lis    r3,0xF000          # PCSRBAR
99       ori    r3,r3,0x0000
100       li    r8, 0x0
101       stwbrx    r3,r8,r5
102       lis    r3,0x8000          # ADDR_3C
103       ori    r3,r3,0x003C
104       stwbrx    r3,0,r4
105       li     r3,0x00            # ILR
106       stb    r3,0x0(r5)
107       lis    r3,0x8000          # ADDR_3D
108       ori    r3,r3,0x003D
109       stwbrx    r3,0,r4
110       li     r3,0x01            # INTPIN
111       stb    r3,0x1(r5)
112       lis    r3,0x8000          # ADDR_3E
113       ori    r3,r3,0x003E
114       stwbrx    r3,0,r4
115       li     r3,0x00            # MIN_GNT
116       stb    r3,0x2(r5)
117       lis    r3,0x8000          # ADDR_3F
118       ori    r3,r3,0x003F
119       stwbrx    r3,0,r4
120       li     r3,0x00            # MAX_LAT
121       stb    r3,0x3(r5)
122       lis    r3,0x8000          # ADDR_40
123       ori    r3,r3,0x0040
124       stwbrx    r3,0,r4
125       li     r3,0x00            # BUSNB
126       stb    r3,0x0(r5)
127       lis    r3,0x8000          # ADDR_41
128       ori    r3,r3,0x0041
129       stwbrx    r3,0,r4
130       li     r3,0x00            # SBUSNB
131       stb    r3,0x1(r5)
132       lis    r3,0x8000          # ADDR_46
133       ori    r3,r3,0x0046
134       stwbrx    r3,0,r4
135 #      li     r3,0xE080          # PCIARB
136       li     r3,-0x1F80          # PCIARB
137       li    r8, 0x2
138       sthbrx    r3,r8,r5
139       lis    r3,0x8000          # ADDR_70
140       ori    r3,r3,0x0070
141       stwbrx    r3,0,r4
142       li     r3,0x0000          # PMCR1
143       li    r8, 0x0
144       sthbrx    r3,r8,r5
145       lis    r3,0x8000          # ADDR_72
146       ori    r3,r3,0x0072
147       stwbrx    r3,0,r4
148       li     r3,0xC0            # PMCR2
149       stb    r3,0x2(r5)
150       lis    r3,0x8000          # ADDR_73
151       ori    r3,r3,0x0073
152       stwbrx    r3,0,r4
153       li     r3,0xEF            # ODCR
154       stb    r3,0x3(r5)
155       lis    r3,0x8000          # ADDR_74
156       ori    r3,r3,0x0074
157       stwbrx    r3,0,r4
158       li     r3,0x7D00          # CLKDCR
159       li    r8, 0x0
160       sthbrx    r3,r8,r5
161       lis    r3,0x8000          # ADDR_76
162       ori    r3,r3,0x0076
163       stwbrx    r3,0,r4
164       li     r3,0x00            # MDCR
165       stb    r3,0x2(r5)
166       lis    r6,0xFCE0
167       ori    r6,r6,0x0000       # r6 is the EUMBAR Base Address
168       lis    r3,0x8000          # ADDR_78
169       ori    r3,r3,0x0078
170       stwbrx    r3,0,r4
171       lis    r3,0xFCE0          # EUMBBAR
172       ori    r3,r3,0x0000
173       li    r8, 0x0
174       stwbrx    r3,r8,r5
175       lis    r3,0x8000          # ADDR_80
176       ori    r3,r3,0x0080
177       stwbrx    r3,0,r4
178       lis    r3,0xFFFF          # MSADDR1
179       ori    r3,r3,0x4000
180       li    r8, 0x0
181       stwbrx    r3,r8,r5
182       lis    r3,0x8000          # ADDR_84
183       ori    r3,r3,0x0084
184       stwbrx    r3,0,r4
185       lis    r3,0xFFFF          # MSADDR2
186       ori    r3,r3,0xFFFF
187       li    r8, 0x0
188       stwbrx    r3,r8,r5
189       lis    r3,0x8000          # ADDR_88
190       ori    r3,r3,0x0088
191       stwbrx    r3,0,r4
192       lis    r3,0x0303          # EMSADDR1
193       ori    r3,r3,0x0000
194       li    r8, 0x0
195       stwbrx    r3,r8,r5
196       lis    r3,0x8000          # ADDR_8C
197       ori    r3,r3,0x008C
198       stwbrx    r3,0,r4
199       lis    r3,0x0303          # EMSADDR2
200       ori    r3,r3,0x0303
201       li    r8, 0x0
202       stwbrx    r3,r8,r5
203       lis    r3,0x8000          # ADDR_90
204       ori    r3,r3,0x0090
205       stwbrx    r3,0,r4
206       lis    r3,0xFFFF          # EMEADDR1
207       ori    r3,r3,0x7F3F
208       li    r8, 0x0
209       stwbrx    r3,r8,r5
210       lis    r3,0x8000          # ADDR_94
211       ori    r3,r3,0x0094
212       stwbrx    r3,0,r4
213       lis    r3,0xFFFF          # EMEADDR2
214       ori    r3,r3,0xFFFF
215       li    r8, 0x0
216       stwbrx    r3,r8,r5
217       lis    r3,0x8000          # ADDR_98
218       ori    r3,r3,0x0098
219       stwbrx    r3,0,r4
220       lis    r3,0x0303          # EXTEMEM1
221       ori    r3,r3,0x0000
222       li    r8, 0x0
223       stwbrx    r3,r8,r5
224       lis    r3,0x8000          # ADDR_9C
225       ori    r3,r3,0x009C
226       stwbrx    r3,0,r4
227       lis    r3,0x0303          # EXTEMEM2
228       ori    r3,r3,0x0303
229       li    r8, 0x0
230       stwbrx    r3,r8,r5
231       lis    r3,0x8000          # ADDR_A0
232       ori    r3,r3,0x00A0
233       stwbrx    r3,0,r4
234       li     r3,0x03            # MEMBNKEN
235       stb    r3,0x0(r5)
236       lis    r3,0x8000          # ADDR_A3
237       ori    r3,r3,0x00A3
238       stwbrx    r3,0,r4
239       li     r3,0x00            # MEMPMODE
240       stb    r3,0x3(r5)
241       lis    r3,0x8000          # ADDR_B8
242       ori    r3,r3,0x00B8
243       stwbrx    r3,0,r4
244       li     r3,0x00            # ECCCNT
245       stb    r3,0x0(r5)
246       lis    r3,0x8000          # ADDR_B9
247       ori    r3,r3,0x00B9
248       stwbrx    r3,0,r4
249       li     r3,0x00            # ECCTRG
250       stb    r3,0x1(r5)
251       lis    r3,0x8000          # ADDR_C0
252       ori    r3,r3,0x00C0
253       stwbrx    r3,0,r4
254       li     r3,0xFF            # ERRENR1
255       stb    r3,0x0(r5)
256       lis    r3,0x8000          # ADDR_C1
257       ori    r3,r3,0x00C1
258       stwbrx    r3,0,r4
259       li     r3,0x00            # ERRDR1
260       stb    r3,0x1(r5)
261       lis    r3,0x8000          # ADDR_C3
262       ori    r3,r3,0x00C3
263       stwbrx    r3,0,r4
264       li     r3,0x50            # IPBESR
265       stb    r3,0x3(r5)
266       lis    r3,0x8000          # ADDR_C4
267       ori    r3,r3,0x00C4
268       stwbrx    r3,0,r4
269       li     r3,0xBF            # ERRENR2
270       stb    r3,0x0(r5)
271       lis    r3,0x8000          # ADDR_C5
272       ori    r3,r3,0x00C5
273       stwbrx    r3,0,r4
274       li     r3,0x00            # ERRDR2
275       stb    r3,0x1(r5)
276       lis    r3,0x8000          # ADDR_C7
277       ori    r3,r3,0x00C7
278       stwbrx    r3,0,r4
279       li     r3,0x00            # PCIBESR
280       stb    r3,0x3(r5)
281       lis    r3,0x8000          # ADDR_C8
282       ori    r3,r3,0x00C8
283       stwbrx    r3,0,r4
284       lis    r3,0x0000          # BERRADDR
285       ori    r3,r3,0xE0FE
286       li    r8, 0x0
287       stwbrx    r3,r8,r5
288       lis    r3,0x8000          # ADDR_E0
289       ori    r3,r3,0x00E0
290       stwbrx    r3,0,r4
291       li     r3,0xC0            # AMBOR
292       stb    r3,0x0(r5)
293       lis    r3,0x8000          # ADDR_F4
294       ori    r3,r3,0x00F4
295       stwbrx    r3,0,r4
296       lis    r3,0x0000          # MCCR2
297       ori    r3,r3,0x020C
298       li    r8, 0x0
299       stwbrx    r3,r8,r5
300       lis    r3,0x8000          # ADDR_F8
301       ori    r3,r3,0x00F8
302       stwbrx    r3,0,r4
303       lis    r3,0x0230          # MCCR3
304       ori    r3,r3,0x0000
305       li    r8, 0x0
306       stwbrx    r3,r8,r5
307       lis    r3,0x8000          # ADDR_FC
308       ori    r3,r3,0x00FC
309       stwbrx    r3,0,r4
310       lis    r3,0x2532          # MCCR4
311       ori    r3,r3,0x2220
312       li    r8, 0x0
313       stwbrx    r3,r8,r5
314       lis    r3,0x8000          # ADDR_F0
315       ori    r3,r3,0x00F0
316       stwbrx    r3,0,r4
317       lis    r3,0xFFC8          # MCCR1
318       ori    r3,r3,0x0000
319       li    r8, 0x0
320       stwbrx    r3,r8,r5
321       lis    r3,0x8000          # ADDR_A8
322       ori    r3,r3,0x00A8
323       stwbrx    r3,0,r4
324       lis    r3,0xFF14          # PICR1
325       ori    r3,r3,0x1CC8
326       li    r8, 0x0
327       stwbrx    r3,r8,r5
328       lis    r3,0x8000          # ADDR_AC
329       ori    r3,r3,0x00AC
330       stwbrx    r3,0,r4
331       lis    r3,0x0000          # PICR2
332       ori    r3,r3,0x0000
333       li    r8, 0x0
334       stwbrx    r3,r8,r5
335
336       blr