1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23#ifndef __LINUX_USB_R8A66597_H
24#define __LINUX_USB_R8A66597_H
25
26#define R8A66597_PLATDATA_XTAL_12MHZ 0x01
27#define R8A66597_PLATDATA_XTAL_24MHZ 0x02
28#define R8A66597_PLATDATA_XTAL_48MHZ 0x03
29
30struct r8a66597_platdata {
31
32 void (*port_power)(int port, int power);
33
34
35 unsigned on_chip:1;
36
37
38 unsigned xtal:2;
39
40
41 unsigned vif:1;
42
43
44 unsigned endian:1;
45};
46
47
48#define SYSCFG0 0x00
49#define SYSCFG1 0x02
50#define SYSSTS0 0x04
51#define SYSSTS1 0x06
52#define DVSTCTR0 0x08
53#define DVSTCTR1 0x0A
54#define TESTMODE 0x0C
55#define PINCFG 0x0E
56#define DMA0CFG 0x10
57#define DMA1CFG 0x12
58#define CFIFO 0x14
59#define D0FIFO 0x18
60#define D1FIFO 0x1C
61#define CFIFOSEL 0x20
62#define CFIFOCTR 0x22
63#define CFIFOSIE 0x24
64#define D0FIFOSEL 0x28
65#define D0FIFOCTR 0x2A
66#define D1FIFOSEL 0x2C
67#define D1FIFOCTR 0x2E
68#define INTENB0 0x30
69#define INTENB1 0x32
70#define INTENB2 0x34
71#define BRDYENB 0x36
72#define NRDYENB 0x38
73#define BEMPENB 0x3A
74#define SOFCFG 0x3C
75#define INTSTS0 0x40
76#define INTSTS1 0x42
77#define INTSTS2 0x44
78#define BRDYSTS 0x46
79#define NRDYSTS 0x48
80#define BEMPSTS 0x4A
81#define FRMNUM 0x4C
82#define UFRMNUM 0x4E
83#define USBADDR 0x50
84#define USBREQ 0x54
85#define USBVAL 0x56
86#define USBINDX 0x58
87#define USBLENG 0x5A
88#define DCPCFG 0x5C
89#define DCPMAXP 0x5E
90#define DCPCTR 0x60
91#define PIPESEL 0x64
92#define PIPECFG 0x68
93#define PIPEBUF 0x6A
94#define PIPEMAXP 0x6C
95#define PIPEPERI 0x6E
96#define PIPE1CTR 0x70
97#define PIPE2CTR 0x72
98#define PIPE3CTR 0x74
99#define PIPE4CTR 0x76
100#define PIPE5CTR 0x78
101#define PIPE6CTR 0x7A
102#define PIPE7CTR 0x7C
103#define PIPE8CTR 0x7E
104#define PIPE9CTR 0x80
105#define PIPE1TRE 0x90
106#define PIPE1TRN 0x92
107#define PIPE2TRE 0x94
108#define PIPE2TRN 0x96
109#define PIPE3TRE 0x98
110#define PIPE3TRN 0x9A
111#define PIPE4TRE 0x9C
112#define PIPE4TRN 0x9E
113#define PIPE5TRE 0xA0
114#define PIPE5TRN 0xA2
115#define DEVADD0 0xD0
116#define DEVADD1 0xD2
117#define DEVADD2 0xD4
118#define DEVADD3 0xD6
119#define DEVADD4 0xD8
120#define DEVADD5 0xDA
121#define DEVADD6 0xDC
122#define DEVADD7 0xDE
123#define DEVADD8 0xE0
124#define DEVADD9 0xE2
125#define DEVADDA 0xE4
126
127
128#define XTAL 0xC000
129#define XTAL48 0x8000
130#define XTAL24 0x4000
131#define XTAL12 0x0000
132#define XCKE 0x2000
133#define PLLC 0x0800
134#define SCKE 0x0400
135#define PCSDIS 0x0200
136#define LPSME 0x0100
137#define HSE 0x0080
138#define DCFM 0x0040
139#define DRPD 0x0020
140#define DPRPU 0x0010
141#define USBE 0x0001
142
143
144#define OVCBIT 0x8000
145#define OVCMON 0xC000
146#define SOFEA 0x0020
147#define IDMON 0x0004
148#define LNST 0x0003
149#define SE1 0x0003
150#define FS_KSTS 0x0002
151#define FS_JSTS 0x0001
152#define LS_JSTS 0x0002
153#define LS_KSTS 0x0001
154#define SE0 0x0000
155
156
157#define EXTLP0 0x0400
158#define VBOUT 0x0200
159#define WKUP 0x0100
160#define RWUPE 0x0080
161#define USBRST 0x0040
162#define RESUME 0x0020
163#define UACT 0x0010
164#define RHST 0x0007
165#define HSPROC 0x0004
166#define HSMODE 0x0003
167#define FSMODE 0x0002
168#define LSMODE 0x0001
169#define UNDECID 0x0000
170
171
172#define UTST 0x000F
173#define H_TST_PACKET 0x000C
174#define H_TST_SE0_NAK 0x000B
175#define H_TST_K 0x000A
176#define H_TST_J 0x0009
177#define H_TST_NORMAL 0x0000
178#define P_TST_PACKET 0x0004
179#define P_TST_SE0_NAK 0x0003
180#define P_TST_K 0x0002
181#define P_TST_J 0x0001
182#define P_TST_NORMAL 0x0000
183
184
185#define LDRV 0x8000
186#define VIF1 0x0000
187#define VIF3 0x8000
188#define INTA 0x0001
189
190
191#define DREQA 0x4000
192#define BURST 0x2000
193#define DACKA 0x0400
194#define DFORM 0x0380
195#define CPU_ADR_RD_WR 0x0000
196#define CPU_DACK_RD_WR 0x0100
197#define CPU_DACK_ONLY 0x0180
198#define SPLIT_DACK_ONLY 0x0200
199#define DENDA 0x0040
200#define PKTM 0x0020
201#define DENDE 0x0010
202#define OBUS 0x0004
203
204
205#define RCNT 0x8000
206#define REW 0x4000
207#define DCLRM 0x2000
208#define DREQE 0x1000
209#define MBW_8 0x0000
210#define MBW_16 0x0400
211#define MBW_32 0x0800
212#define BIGEND 0x0100
213#define BYTE_LITTLE 0x0000
214#define BYTE_BIG 0x0100
215#define ISEL 0x0020
216#define CURPIPE 0x000F
217
218
219#define BVAL 0x8000
220#define BCLR 0x4000
221#define FRDY 0x2000
222#define DTLN 0x0FFF
223
224
225#define VBSE 0x8000
226#define RSME 0x4000
227#define SOFE 0x2000
228#define DVSE 0x1000
229#define CTRE 0x0800
230#define BEMPE 0x0400
231#define NRDYE 0x0200
232#define BRDYE 0x0100
233
234
235#define OVRCRE 0x8000
236#define BCHGE 0x4000
237#define DTCHE 0x1000
238#define ATTCHE 0x0800
239#define EOFERRE 0x0040
240#define SIGNE 0x0020
241#define SACKE 0x0010
242
243
244#define BRDY9 0x0200
245#define BRDY8 0x0100
246#define BRDY7 0x0080
247#define BRDY6 0x0040
248#define BRDY5 0x0020
249#define BRDY4 0x0010
250#define BRDY3 0x0008
251#define BRDY2 0x0004
252#define BRDY1 0x0002
253#define BRDY0 0x0001
254
255
256#define NRDY9 0x0200
257#define NRDY8 0x0100
258#define NRDY7 0x0080
259#define NRDY6 0x0040
260#define NRDY5 0x0020
261#define NRDY4 0x0010
262#define NRDY3 0x0008
263#define NRDY2 0x0004
264#define NRDY1 0x0002
265#define NRDY0 0x0001
266
267
268#define BEMP9 0x0200
269#define BEMP8 0x0100
270#define BEMP7 0x0080
271#define BEMP6 0x0040
272#define BEMP5 0x0020
273#define BEMP4 0x0010
274#define BEMP3 0x0008
275#define BEMP2 0x0004
276#define BEMP1 0x0002
277#define BEMP0 0x0001
278
279
280#define TRNENSEL 0x0100
281#define BRDYM 0x0040
282#define INTL 0x0020
283#define EDGESTS 0x0010
284#define SOFMODE 0x000C
285#define SOF_125US 0x0008
286#define SOF_1MS 0x0004
287#define SOF_DISABLE 0x0000
288
289
290#define VBINT 0x8000
291#define RESM 0x4000
292#define SOFR 0x2000
293#define DVST 0x1000
294#define CTRT 0x0800
295#define BEMP 0x0400
296#define NRDY 0x0200
297#define BRDY 0x0100
298#define VBSTS 0x0080
299#define DVSQ 0x0070
300#define DS_SPD_CNFG 0x0070
301#define DS_SPD_ADDR 0x0060
302#define DS_SPD_DFLT 0x0050
303#define DS_SPD_POWR 0x0040
304#define DS_SUSP 0x0040
305#define DS_CNFG 0x0030
306#define DS_ADDS 0x0020
307#define DS_DFLT 0x0010
308#define DS_POWR 0x0000
309#define DVSQS 0x0030
310#define VALID 0x0008
311#define CTSQ 0x0007
312#define CS_SQER 0x0006
313#define CS_WRND 0x0005
314#define CS_WRSS 0x0004
315#define CS_WRDS 0x0003
316#define CS_RDSS 0x0002
317#define CS_RDDS 0x0001
318#define CS_IDST 0x0000
319
320
321#define OVRCR 0x8000
322#define BCHG 0x4000
323#define DTCH 0x1000
324#define ATTCH 0x0800
325#define EOFERR 0x0040
326#define SIGN 0x0020
327#define SACK 0x0010
328
329
330#define OVRN 0x8000
331#define CRCE 0x4000
332#define FRNM 0x07FF
333
334
335#define UFRNM 0x0007
336
337
338
339#define DEVSEL 0xF000
340#define MAXP 0x007F
341
342
343#define BSTS 0x8000
344#define SUREQ 0x4000
345#define CSCLR 0x2000
346#define CSSTS 0x1000
347#define SUREQCLR 0x0800
348#define SQCLR 0x0100
349#define SQSET 0x0080
350#define SQMON 0x0040
351#define PBUSY 0x0020
352#define PINGE 0x0010
353#define CCPL 0x0004
354#define PID 0x0003
355#define PID_STALL11 0x0003
356#define PID_STALL 0x0002
357#define PID_BUF 0x0001
358#define PID_NAK 0x0000
359
360
361#define PIPENM 0x0007
362
363
364#define R8A66597_TYP 0xC000
365#define R8A66597_ISO 0xC000
366#define R8A66597_INT 0x8000
367#define R8A66597_BULK 0x4000
368#define R8A66597_BFRE 0x0400
369#define R8A66597_DBLB 0x0200
370#define R8A66597_CNTMD 0x0100
371#define R8A66597_SHTNAK 0x0080
372#define R8A66597_DIR 0x0010
373#define R8A66597_EPNUM 0x000F
374
375
376#define BUFSIZE 0x7C00
377#define BUFNMB 0x007F
378#define PIPE0BUF 256
379#define PIPExBUF 64
380
381
382#define MXPS 0x07FF
383
384
385#define IFIS 0x1000
386#define IITV 0x0007
387
388
389#define BSTS 0x8000
390#define INBUFM 0x4000
391#define CSCLR 0x2000
392#define CSSTS 0x1000
393#define ATREPM 0x0400
394#define ACLRM 0x0200
395#define SQCLR 0x0100
396#define SQSET 0x0080
397#define SQMON 0x0040
398#define PBUSY 0x0020
399#define PID 0x0003
400
401
402#define TRENB 0x0200
403#define TRCLR 0x0100
404
405
406#define TRNCNT 0xFFFF
407
408
409#define UPPHUB 0x7800
410#define HUBPORT 0x0700
411#define USBSPD 0x00C0
412#define RTPORT 0x0001
413
414#endif
415
416