blob: 2d9ca0f523669759becedaa97d83613518607f8c [file] [log] [blame]
Inderpal Singha111cd02012-10-23 17:16:08 +05301/*
2 * (C) Copyright 2011 Samsung Electronics Co. Ltd
3 *
4 * See file CREDITS for list of people who contributed to this
5 * project.
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 *
11 */
12
13#ifndef _S5PV310_CPU_H
14#define _S5PV310_CPU_H
15
16#ifdef CONFIG_CPU_EXYNOS5210
17#include "cpu_exynos5210.h"
18#elif CONFIG_CPU_EXYNOS5250
19#include "cpu_exynos5250.h"
20#else
21
22//#define S5PV310_ADDR_BASE 0xE0000000
23/* S5PV310 */
24#define S5PV310_PRO_ID 0x10000000
25#define S5PV310_SYSREG_BASE 0x10010000
26#define S5PV310_POWER_BASE 0x10020000
27#define S5PV310_CLOCK_BASE 0x10030000
28//#define S5PC100_GPIO_BASE 0xE0300000
29//#define S5PC100_VIC0_BASE 0xE4000000
30//#define S5PC100_VIC1_BASE 0xE4100000
31//#define S5PC100_VIC2_BASE 0xE4200000
32//#define S5PC100_DMC_BASE 0xE6000000
33//#define S5PC100_SROMC_BASE 0xE7000000
34//#define S5PC100_ONENAND_BASE 0xE7100000
35#define S5PV310_HSMMC_BASE 0x12510000
36#define S5PV310_PWMTIMER_BASE 0x139D0000
37//#define S5PC100_WATCHDOG_BASE 0xEA200000
38#define S5PV310_UART_BASE 0x13800000
39//#define S5PC100_MMC_BASE 0xED800000
40
41#define BIT0 0x00000001
42#define BIT1 0x00000002
43#define BIT2 0x00000004
44#define BIT3 0x00000008
45#define BIT4 0x00000010
46#define BIT5 0x00000020
47#define BIT6 0x00000040
48#define BIT7 0x00000080
49#define BIT8 0x00000100
50#define BIT9 0x00000200
51#define BIT10 0x00000400
52#define BIT11 0x00000800
53#define BIT12 0x00001000
54#define BIT13 0x00002000
55#define BIT14 0x00004000
56#define BIT15 0x00008000
57#define BIT16 0x00010000
58#define BIT17 0x00020000
59#define BIT18 0x00040000
60#define BIT19 0x00080000
61#define BIT20 0x00100000
62#define BIT21 0x00200000
63#define BIT22 0x00400000
64#define BIT23 0x00800000
65#define BIT24 0x01000000
66#define BIT25 0x02000000
67#define BIT26 0x04000000
68#define BIT27 0x08000000
69#define BIT28 0x10000000
70#define BIT29 0x20000000
71#define BIT30 0x40000000
72#define BIT31 0x80000000
73
74#define __REG(x) (*(unsigned int *)(x))
75
76/*
77 * CHIP ID
78 */
79#define CHIP_ID_BASE 0x10000000
80
81#define PRO_ID_OFFSET 0x0
82#define PRO_ID __REG(CHIP_ID_BASE+PRO_ID_OFFSET)
83
84/*
85 * SYSREG
86 */
87#define GENERAL_CTRL_C2C_OFFSET 0x10C
88#define USB_CFG_OFFSET 0x21C
89#define USB_CFG_REG (S5PV310_SYSREG_BASE+USB_CFG_OFFSET)
90
91/*
92 * POWER
93 */
94#define OMR_OFFSET 0x0
95#define SW_RST_REG_OFFSET 0x400
96#define SW_RST_REG __REG(S5PV310_POWER_BASE+SW_RST_REG_OFFSET)
97
98#define INF_REG_BASE 0x10020800
99
100#define INF_REG0_OFFSET 0x00
101#define INF_REG1_OFFSET 0x04
102#define INF_REG2_OFFSET 0x08
103#define INF_REG3_OFFSET 0x0c
104#define INF_REG4_OFFSET 0x10
105#define INF_REG5_OFFSET 0x14
106#define INF_REG6_OFFSET 0x18
107#define INF_REG7_OFFSET 0x1c
108
109#define C2C_CTRL_OFFSET 0x24
110
111#define INF_REG0_REG __REG(INF_REG_BASE+INF_REG0_OFFSET)
112#define INF_REG1_REG __REG(INF_REG_BASE+INF_REG1_OFFSET)
113#define INF_REG2_REG __REG(INF_REG_BASE+INF_REG2_OFFSET)
114#define INF_REG3_REG __REG(INF_REG_BASE+INF_REG3_OFFSET)
115#define INF_REG4_REG __REG(INF_REG_BASE+INF_REG4_OFFSET)
116#define INF_REG5_REG __REG(INF_REG_BASE+INF_REG5_OFFSET)
117#define INF_REG6_REG __REG(INF_REG_BASE+INF_REG6_OFFSET)
118#define INF_REG7_REG __REG(INF_REG_BASE+INF_REG7_OFFSET)
119
120/* Define Mode */
121#define S5P_CHECK_SLEEP 0x00000BAD
122#define S5P_CHECK_DIDLE 0xBAD00000
123#define S5P_CHECK_LPA 0xABAD0000
124
125/*
126 * CLOCK
127 */
128#define ELFIN_CLOCK_BASE 0x10030000
129
130#define CLK_SRC_LEFTBUS_OFFSET 0x04200
131#define CLK_DIV_LEFTBUS_OFFSET 0x04500
132
133#define CLK_SRC_RIGHTBUS_OFFSET 0x08200
134#define CLK_DIV_RIGHTBUS_OFFSET 0x08500
135
136#define EPLL_LOCK_OFFSET 0x0C010
137#define VPLL_LOCK_OFFSET 0x0C020
138#define EPLL_CON0_OFFSET 0x0C110
139#define EPLL_CON1_OFFSET 0x0C114
140#ifdef CONFIG_SMDKC220
141#define EPLL_CON2_OFFSET 0x0C118
142#endif
143#define VPLL_CON0_OFFSET 0x0C120
144#define VPLL_CON1_OFFSET 0x0C124
145#ifdef CONFIG_SMDKC220
146#define VPLL_CON2_OFFSET 0x0C128
147#endif
148
149#define CLK_SRC_TOP0_OFFSET 0x0C210
150#define CLK_SRC_TOP1_OFFSET 0x0C214
151#define CLK_SRC_FSYS_OFFSET 0x0C240
152#define CLK_SRC_PERIL0_OFFSET 0x0C250
153#define CLK_DIV_TOP_OFFSET 0x0C510
154#define CLK_DIV_FSYS1_OFFSET 0x0C544
155#define CLK_DIV_FSYS2_OFFSET 0x0C548
156#define CLK_DIV_FSYS3_OFFSET 0x0C54C
157#define CLK_DIV_PERIL0_OFFSET 0x0C550
158
159#define CLK_SRC_DMC_OFFSET 0x10200
160#define CLK_DIV_DMC0_OFFSET 0x10500
161#define CLK_DIV_DMC1_OFFSET 0x10504
162
163#define APLL_LOCK_OFFSET 0x14000
164#define MPLL_LOCK_OFFSET 0x14008
165#define APLL_CON0_OFFSET 0x14100
166#define APLL_CON1_OFFSET 0x14104
167#ifdef CONFIG_SMDKC220
168#define MPLL_CON0_OFFSET 0x10108
169#define MPLL_CON1_OFFSET 0x1010C
170#else
171#define MPLL_CON0_OFFSET 0x14108
172#define MPLL_CON1_OFFSET 0x1410C
173#endif
174
175#define CLK_SRC_CPU_OFFSET 0x14200
176#define CLK_DIV_CPU0_OFFSET 0x14500
177#define CLK_DIV_CPU1_OFFSET 0x14504
178
179#define CLK_SRC_FSYS __REG(ELFIN_CLOCK_BASE+CLK_SRC_FSYS_OFFSET)
180#define CLK_DIV_FSYS1 __REG(ELFIN_CLOCK_BASE+CLK_DIV_FSYS1_OFFSET)
181#define CLK_DIV_FSYS2 __REG(ELFIN_CLOCK_BASE+CLK_DIV_FSYS2_OFFSET)
182#define CLK_DIV_FSYS3 __REG(ELFIN_CLOCK_BASE+CLK_DIV_FSYS3_OFFSET)
183#define APLL_CON0_REG __REG(ELFIN_CLOCK_BASE+APLL_CON0_OFFSET)
184#define MPLL_CON0_REG __REG(ELFIN_CLOCK_BASE+MPLL_CON0_OFFSET)
185#define EPLL_CON0_REG __REG(ELFIN_CLOCK_BASE+EPLL_CON0_OFFSET)
186#define VPLL_CON0_REG __REG(ELFIN_CLOCK_BASE+VPLL_CON0_OFFSET)
187
188#define USB_PHY_CONTROL_OFFSET 0x0704
189#define USB_PHY_CONTROL (0x10020000+USB_PHY_CONTROL_OFFSET)//(ELFIN_CLOCK_POWER_BASE+USB_PHY_CONTROL_OFFSET)
190
191/*
192 * TZPC
193 */
194#define ELFIN_TZPC0_BASE 0x10110000
195#define ELFIN_TZPC1_BASE 0x10120000
196#define ELFIN_TZPC2_BASE 0x10130000
197#define ELFIN_TZPC3_BASE 0x10140000
198#define ELFIN_TZPC4_BASE 0x10150000
199#define ELFIN_TZPC5_BASE 0x10160000
200
201#define TZPC_DECPROT0SET_OFFSET 0x804
202#define TZPC_DECPROT1SET_OFFSET 0x810
203#define TZPC_DECPROT2SET_OFFSET 0x81C
204#define TZPC_DECPROT3SET_OFFSET 0x828
205
206/*
207 * Memory controller
208 */
209#define ELFIN_SROM_BASE 0x12570000
210
211#define SROM_BW_REG __REG(ELFIN_SROM_BASE+0x0)
212#define SROM_BC0_REG __REG(ELFIN_SROM_BASE+0x4)
213#define SROM_BC1_REG __REG(ELFIN_SROM_BASE+0x8)
214#define SROM_BC2_REG __REG(ELFIN_SROM_BASE+0xC)
215#define SROM_BC3_REG __REG(ELFIN_SROM_BASE+0x10)
216#define SROM_BC4_REG __REG(ELFIN_SROM_BASE+0x14)
217#define SROM_BC5_REG __REG(ELFIN_SROM_BASE+0x18)
218
219/*
220 * SDRAM Controller
221 */
222#ifdef CONFIG_SMDKC220
223#define APB_DMC_0_BASE 0x10600000
224#define APB_DMC_1_BASE 0x10610000
225#else
226#define APB_DMC_0_BASE 0x10400000
227#define APB_DMC_1_BASE 0x10410000
228#endif
229
230#define DMC_CONCONTROL 0x00
231#define DMC_MEMCONTROL 0x04
232#define DMC_MEMCONFIG0 0x08
233#define DMC_MEMCONFIG1 0x0C
234#define DMC_DIRECTCMD 0x10
235#define DMC_PRECHCONFIG 0x14
236#define DMC_PHYCONTROL0 0x18
237#define DMC_PHYCONTROL1 0x1C
238#define DMC_PHYCONTROL2 0x20
239#define DMC_PWRDNCONFIG 0x28
240#define DMC_TIMINGAREF 0x30
241#define DMC_TIMINGROW 0x34
242#define DMC_TIMINGDATA 0x38
243#define DMC_TIMINGPOWER 0x3C
244#define DMC_PHYSTATUS 0x40
245#define DMC_PHYZQCONTROL 0x44
246#define DMC_CHIP0STATUS 0x48
247#define DMC_CHIP1STATUS 0x4C
248#define DMC_AREFSTATUS 0x50
249#define DMC_MRSTATUS 0x54
250#define DMC_PHYTEST0 0x58
251#define DMC_PHYTEST1 0x5C
252#define DMC_QOSCONTROL0 0x60
253#define DMC_QOSCONFIG0 0x64
254#define DMC_QOSCONTROL1 0x68
255#define DMC_QOSCONFIG1 0x6C
256#define DMC_QOSCONTROL2 0x70
257#define DMC_QOSCONFIG2 0x74
258#define DMC_QOSCONTROL3 0x78
259#define DMC_QOSCONFIG3 0x7C
260#define DMC_QOSCONTROL4 0x80
261#define DMC_QOSCONFIG4 0x84
262#define DMC_QOSCONTROL5 0x88
263#define DMC_QOSCONFIG5 0x8C
264#define DMC_QOSCONTROL6 0x90
265#define DMC_QOSCONFIG6 0x94
266#define DMC_QOSCONTROL7 0x98
267#define DMC_QOSCONFIG7 0x9C
268#define DMC_QOSCONTROL8 0xA0
269#define DMC_QOSCONFIG8 0xA4
270#define DMC_QOSCONTROL9 0xA8
271#define DMC_QOSCONFIG9 0xAC
272#define DMC_QOSCONTROL10 0xB0
273#define DMC_QOSCONFIG10 0xB4
274#define DMC_QOSCONTROL11 0xB8
275#define DMC_QOSCONFIG11 0xBC
276#define DMC_QOSCONTROL12 0xC0
277#define DMC_QOSCONFIG12 0xC4
278#define DMC_QOSCONTROL13 0xC8
279#define DMC_QOSCONFIG13 0xCC
280#define DMC_QOSCONTROL14 0xD0
281#define DMC_QOSCONFIG14 0xD4
282#define DMC_QOSCONTROL15 0xD8
283#define DMC_QOSCONFIG15 0xDC
284#ifdef CONFIG_SMDKC220
285#define DMC_IVCONTROL 0xF0
286#endif
287
288/*
289 * MIU
290 */
291#define MIU_BASE 0x10600000
292#define MIU_INTLV_CONFIG 0x400
293#define MIU_INTLV_START_ADDR 0x808
294#define MIU_MAPPING_UPDATE 0x800
295#define MIU_INTLV_END_ADDR 0x810
296
297#define MIU_SINGLE_MAPPING0_START_ADDR 0x818
298#define MIU_SINGLE_MAPPING0_END_ADDR 0x820
299#define MIU_SINGLE_MAPPING1_START_ADDR 0x828
300#define MIU_SINGLE_MAPPING1_END_ADDR 0x830
301
302/*
303 * UART
304 */
305
306#define S5PV310_UART0_OFFSET 0x00000
307#define S5PV310_UART1_OFFSET 0x10000
308#define S5PV310_UART2_OFFSET 0x20000
309#define S5PV310_UART3_OFFSET 0x30000
310
311#if defined(CONFIG_SERIAL0)
312#define S5PV310_UART_CONSOLE_BASE (S5PV310_UART_BASE + S5PV310_UART0_OFFSET)
313#elif defined(CONFIG_SERIAL1)
314#define S5PV310_UART_CONSOLE_BASE (S5PV310_UART_BASE + S5PV310_UART1_OFFSET)
315#elif defined(CONFIG_SERIAL2)
316#define S5PV310_UART_CONSOLE_BASE (S5PV310_UART_BASE + S5PV310_UART2_OFFSET)
317#elif defined(CONFIG_SERIAL3)
318#define S5PV310_UART_CONSOLE_BASE (S5PV310_UART_BASE + S5PV310_UART3_OFFSET)
319#else
320#define S5PV310_UART_CONSOLE_BASE (S5PV310_UART_BASE + S5PV310_UART0_OFFSET)
321#endif
322
323#define ULCON_OFFSET 0x00
324#define UCON_OFFSET 0x04
325#define UFCON_OFFSET 0x08
326#define UMCON_OFFSET 0x0C
327#define UTRSTAT_OFFSET 0x10
328#define UERSTAT_OFFSET 0x14
329#define UFSTAT_OFFSET 0x18
330#define UMSTAT_OFFSET 0x1C
331#define UTXH_OFFSET 0x20
332#define URXH_OFFSET 0x24
333#define UBRDIV_OFFSET 0x28
334#define UDIVSLOT_OFFSET 0x2C
335#define UINTP_OFFSET 0x30
336#define UINTSP_OFFSET 0x34
337#define UINTM_OFFSET 0x38
338//#define UTRSTAT_TX_EMPTY BIT2
339//#define UTRSTAT_RX_READY BIT0
340#define UART_ERR_MASK 0xF
341
342/*
343 * HS MMC
344 */
345#define ELFIN_HSMMC_0_BASE 0x12510000
346#define ELFIN_HSMMC_1_BASE 0x12520000
347#define ELFIN_HSMMC_2_BASE 0x12530000
348#define ELFIN_HSMMC_3_BASE 0x12540000
349#define ELFIN_HSMMC_4_BASE 0x12550000
350
351#define HM_SYSAD (0x00)
352#define HM_BLKSIZE (0x04)
353#define HM_BLKCNT (0x06)
354#define HM_ARGUMENT (0x08)
355#define HM_TRNMOD (0x0c)
356#define HM_CMDREG (0x0e)
357#define HM_RSPREG0 (0x10)
358#define HM_RSPREG1 (0x14)
359#define HM_RSPREG2 (0x18)
360#define HM_RSPREG3 (0x1c)
361#define HM_BDATA (0x20)
362#define HM_PRNSTS (0x24)
363#define HM_HOSTCTL (0x28)
364#define HM_PWRCON (0x29)
365#define HM_BLKGAP (0x2a)
366#define HM_WAKCON (0x2b)
367#define HM_CLKCON (0x2c)
368#define HM_TIMEOUTCON (0x2e)
369#define HM_SWRST (0x2f)
370#define HM_NORINTSTS (0x30)
371#define HM_ERRINTSTS (0x32)
372#define HM_NORINTSTSEN (0x34)
373#define HM_ERRINTSTSEN (0x36)
374#define HM_NORINTSIGEN (0x38)
375#define HM_ERRINTSIGEN (0x3a)
376#define HM_ACMD12ERRSTS (0x3c)
377#define HM_CAPAREG (0x40)
378#define HM_MAXCURR (0x48)
379#define HM_CONTROL2 (0x80)
380#define HM_CONTROL3 (0x84)
381#define HM_CONTROL4 (0x8c)
382#define HM_HCVER (0xfe)
383
384/* USBD 2.0 SFR */
385#define USBOTG_LINK_BASE (0x12480000) //(0xEC000000)
386#define USBOTG_PHY_BASE (0x125B0000) //(0xEC100000)
387
388/* PENDING BIT */
389#define BIT_EINT0 (0x1)
390#define BIT_EINT1 (0x1<<1)
391#define BIT_EINT2 (0x1<<2)
392#define BIT_EINT3 (0x1<<3)
393#define BIT_EINT4_7 (0x1<<4)
394#define BIT_EINT8_23 (0x1<<5)
395#define BIT_BAT_FLT (0x1<<7)
396#define BIT_TICK (0x1<<8)
397#define BIT_WDT (0x1<<9)
398#define BIT_TIMER0 (0x1<<10)
399#define BIT_TIMER1 (0x1<<11)
400#define BIT_TIMER2 (0x1<<12)
401#define BIT_TIMER3 (0x1<<13)
402#define BIT_TIMER4 (0x1<<14)
403#define BIT_UART2 (0x1<<15)
404#define BIT_LCD (0x1<<16)
405#define BIT_DMA0 (0x1<<17)
406#define BIT_DMA1 (0x1<<18)
407#define BIT_DMA2 (0x1<<19)
408#define BIT_DMA3 (0x1<<20)
409#define BIT_SDI (0x1<<21)
410#define BIT_SPI0 (0x1<<22)
411#define BIT_UART1 (0x1<<23)
412#define BIT_USBH (0x1<<26)
413#define BIT_IIC (0x1<<27)
414#define BIT_UART0 (0x1<<28)
415#define BIT_SPI1 (0x1<<29)
416#define BIT_RTC (0x1<<30)
417#define BIT_ADC (0x1<<31)
418#define BIT_ALLMSK (0xFFFFFFFF)
419
420#ifndef __ASSEMBLY__
421#include <asm/io.h>
422/* CPU detection macros */
423//extern unsigned int s5p_cpu_id;
424
425//static inline void s5p_set_cpu_id(void)
426//{
427// s5p_cpu_id = readl(S5PC100_PRO_ID);
428// s5p_cpu_id = 0xC000 | ((s5p_cpu_id & 0x00FFF000) >> 12);
429//}
430
431//#define IS_SAMSUNG_TYPE(type, id) \
432//static inline int cpu_is_##type(void) \
433//{ \
434// return s5p_cpu_id == id ? 1 : 0; \
435//}
436
437//IS_SAMSUNG_TYPE(s5pc100, 0xc100)
438//IS_SAMSUNG_TYPE(s5pc110, 0xc110)
439
440/*#define SAMSUNG_BASE(device, base) \
441static inline unsigned int samsung_get_base_##device(void) \
442{ \
443 return S5PV310_##base; \
444}
445*/
446//SAMSUNG_BASE(clock, CLOCK_BASE)
447//SAMSUNG_BASE(gpio, GPIO_BASE)
448//SAMSUNG_BASE(pro_id, PRO_ID)
449//SAMSUNG_BASE(mmc, MMC_BASE)
450//SAMSUNG_BASE(sromc, SROMC_BASE)
451//SAMSUNG_BASE(timer, PWMTIMER_BASE)
452//SAMSUNG_BASE(uart, UART_CONSOLE_BASE)
453#endif
454#endif /* !CONFIG_EXYNOS5210 */
455/*
456 * USB2.0 HS OTG (Chapter 26)
457 */
458
459#define S5P_OTG_PHYPWR (USBOTG_PHY_BASE + 0x000) /* R/W OTG PHY Power Control Register */
460#define S5P_OTG_PHYCLK (USBOTG_PHY_BASE + 0x004) /* R/W OTG PHY Clock Control Register */
461#define S5P_OTG_RSTCON (USBOTG_PHY_BASE + 0x008) /* R/W OTG Reset Control Register */
462#define S5P_OTG_PHYTUNE0 (USBOTG_PHY_BASE + 0x020) /* R/W OTG PHY0 Tuning Register */
463#define S5P_OTG_PHYTUNE1 (USBOTG_PHY_BASE + 0x024) /* R/W OTG PHY1 Tuning Register */
464
465/* Core Global Register */
466#define S5P_OTG_GOTGCTL (USBOTG_LINK_BASE + 0x000) /* R/W OTG Control and Status Register */
467#define S5P_OTG_GOTGINT (USBOTG_LINK_BASE + 0x004) /* R/W OTG Interrupt Register */
468#define S5P_OTG_GAHBCFG (USBOTG_LINK_BASE + 0x008) /* R/W Core AHB Configuration Register */
469#define S5P_OTG_GUSBCFG (USBOTG_LINK_BASE + 0x00C) /* R/W Core USB Configuration Register */
470#define S5P_OTG_GRSTCTL (USBOTG_LINK_BASE + 0x010) /* R/W Core Reset Register */
471#define S5P_OTG_GINTSTS (USBOTG_LINK_BASE + 0x014) /* R/W Core Interrupt Register */
472#define S5P_OTG_GINTMSK (USBOTG_LINK_BASE + 0x018) /* R/W Core Interrupt Mask Register */
473#define S5P_OTG_GRXSTSR (USBOTG_LINK_BASE + 0x01C) /* R Receive Status Debug Read Register */
474#define S5P_OTG_GRXSTSP (USBOTG_LINK_BASE + 0x020) /* R Receive Status Read/Pop Register */
475#define S5P_OTG_GRXFSIZ (USBOTG_LINK_BASE + 0x024) /* R/W Receive FIFO Size Register */
476#define S5P_OTG_GNPTXFSIZ (USBOTG_LINK_BASE + 0x028) /* R/W Non-Periodic Transmit FIFO Size Register */
477#define S5P_OTG_GNPTXSTS (USBOTG_LINK_BASE + 0x02C) /* R Non-Periodic Transmit FIFO/Queue Status Register */
478#define S5P_OTG_HPTXFSIZ (USBOTG_LINK_BASE + 0x100) /* R/W Host Periodic Transmit FIFO Size Register */
479#define S5P_OTG_DPTXFSIZ1 (USBOTG_LINK_BASE + 0x104) /* R/W Device Periodic Transmit FIFO-1 Size Register */
480#define S5P_OTG_DPTXFSIZ2 (USBOTG_LINK_BASE + 0x108) /* R/W Device Periodic Transmit FIFO-2 Size Register */
481#define S5P_OTG_DPTXFSIZ3 (USBOTG_LINK_BASE + 0x10C) /* R/W Device Periodic Transmit FIFO-3 Size Register */
482#define S5P_OTG_DPTXFSIZ4 (USBOTG_LINK_BASE + 0x110) /* R/W Device Periodic Transmit FIFO-4 Size Register */
483#define S5P_OTG_DPTXFSIZ5 (USBOTG_LINK_BASE + 0x114) /* R/W Device Periodic Transmit FIFO-5 Size Register */
484#define S5P_OTG_DPTXFSIZ6 (USBOTG_LINK_BASE + 0x118) /* R/W Device Periodic Transmit FIFO-6 Size Register */
485#define S5P_OTG_DPTXFSIZ7 (USBOTG_LINK_BASE + 0x11C) /* R/W Device Periodic Transmit FIFO-7 Size Register */
486#define S5P_OTG_DPTXFSIZ8 (USBOTG_LINK_BASE + 0x120) /* R/W Device Periodic Transmit FIFO-8 Size Register */
487#define S5P_OTG_DPTXFSIZ9 (USBOTG_LINK_BASE + 0x124) /* R/W Device Periodic Transmit FIFO-9 Size Register */
488#define S5P_OTG_DPTXFSIZ10 (USBOTG_LINK_BASE + 0x128) /* R/W Device Periodic Transmit FIFO-10 Size Register */
489#define S5P_OTG_DPTXFSIZ11 (USBOTG_LINK_BASE + 0x12C) /* R/W Device Periodic Transmit FIFO-11 Size Register */
490#define S5P_OTG_DPTXFSIZ12 (USBOTG_LINK_BASE + 0x130) /* R/W Device Periodic Transmit FIFO-12 Size Register */
491#define S5P_OTG_DPTXFSIZ13 (USBOTG_LINK_BASE + 0x134) /* R/W Device Periodic Transmit FIFO-13 Size Register */
492#define S5P_OTG_DPTXFSIZ14 (USBOTG_LINK_BASE + 0x138) /* R/W Device Periodic Transmit FIFO-14 Size Register */
493#define S5P_OTG_DPTXFSIZ15 (USBOTG_LINK_BASE + 0x13C) /* R/W Device Periodic Transmit FIFO-15 Size Register */
494
495/* Host Mode Register */
496/* Host Global Register */
497#define S5P_OTG_HCFG (USBOTG_LINK_BASE + 0x400) /* R/W Host Configuration Register */
498#define S5P_OTG_HFIR (USBOTG_LINK_BASE + 0x404) /* R/W Host Frame Interval Register */
499#define S5P_OTG_HFNUM (USBOTG_LINK_BASE + 0x408) /* R Host Frame Number/Frame Time Remaining Register */
500
501#define S5P_OTG_HPTXSTS (USBOTG_LINK_BASE + 0x410) /* R Host Periodic Transmit FIFO/Queue Status Register */
502#define S5P_OTG_HAINT (USBOTG_LINK_BASE + 0x414) /* R Host All Channels Interrupt Register */
503#define S5P_OTG_HAINTMSK (USBOTG_LINK_BASE + 0x418) /* R/W Host All Channels Interrupt Mask Register */
504
505/*Host Port Control and Status Register */
506#define S5P_OTG_HPRT (USBOTG_LINK_BASE + 0x440) /* R/W Host Port Control and Status Register */
507
508/*Host Channel-Specific Register */
509#define S5P_OTG_HCCHAR0 (USBOTG_LINK_BASE + 0x500) /* R/W Host Channel 0 Characteristics Register */
510#define S5P_OTG_HCSPLT0 (USBOTG_LINK_BASE + 0x504) /* R/W Host Channel 0 Spilt Control Register */
511#define S5P_OTG_HCINT0 (USBOTG_LINK_BASE + 0x508) /* R/W Host Channel 0 Interrupt Register */
512#define S5P_OTG_HCINTMSK0 (USBOTG_LINK_BASE + 0x50C) /* R/W Host Channel 0 Interrupt Mask Register */
513#define S5P_OTG_HCTSIZ0 (USBOTG_LINK_BASE + 0x510) /* R/W Host Channel 0 Transfer Size Register */
514#define S5P_OTG_HCDMA0 (USBOTG_LINK_BASE + 0x514) /* R/W Host Channel 0 DMA Address Register */
515#define S5P_OTG_HCCHAR1 (USBOTG_LINK_BASE + 0x520) /* R/W Host Channel 1 Characteristics Register */
516#define S5P_OTG_HCSPLT1 (USBOTG_LINK_BASE + 0x524) /* R/W Host Channel 1 Spilt Control Register */
517#define S5P_OTG_HCINT1 (USBOTG_LINK_BASE + 0x528) /* R/W Host Channel 1 Interrupt Register */
518#define S5P_OTG_HCINTMSK1 (USBOTG_LINK_BASE + 0x52C) /* R/W Host Channel 1 Interrupt Mask Register */
519#define S5P_OTG_HCTSIZ1 (USBOTG_LINK_BASE + 0x530) /* R/W Host Channel 1 Transfer Size Register */
520#define S5P_OTG_HCDMA1 (USBOTG_LINK_BASE + 0x534) /* R/W Host Channel 1 DMA Address Register */
521#define S5P_OTG_HCCHAR2 (USBOTG_LINK_BASE + 0x540) /* R/W Host Channel 2 Characteristics Register */
522#define S5P_OTG_HCSPLT2 (USBOTG_LINK_BASE + 0x544) /* R/W Host Channel 2 Spilt Control Register */
523#define S5P_OTG_HCINT2 (USBOTG_LINK_BASE + 0x548) /* R/W Host Channel 2 Interrupt Register */
524#define S5P_OTG_HCINTMSK2 (USBOTG_LINK_BASE + 0x54C) /* R/W Host Channel 2 Interrupt Mask Register */
525#define S5P_OTG_HCTSIZ2 (USBOTG_LINK_BASE + 0x550) /* R/W Host Channel 2 Transfer Size Register */
526#define S5P_OTG_HCDMA2 (USBOTG_LINK_BASE + 0x554) /* R/W Host Channel 2 DMA Address Register */
527#define S5P_OTG_HCCHAR3 (USBOTG_LINK_BASE + 0x560) /* R/W Host Channel 3 Characteristics Register */
528#define S5P_OTG_HCSPLT3 (USBOTG_LINK_BASE + 0x564) /* R/W Host Channel 3 Spilt Control Register */
529#define S5P_OTG_HCINT3 (USBOTG_LINK_BASE + 0x568) /* R/W Host Channel 3 Interrupt Register */
530#define S5P_OTG_HCINTMSK3 (USBOTG_LINK_BASE + 0x56C) /* R/W Host Channel 3 Interrupt Mask Register */
531#define S5P_OTG_HCTSIZ3 (USBOTG_LINK_BASE + 0x570) /* R/W Host Channel 3 Transfer Size Register */
532#define S5P_OTG_HCDMA3 (USBOTG_LINK_BASE + 0x574) /* R/W Host Channel 3 DMA Address Register */
533#define S5P_OTG_HCCHAR4 (USBOTG_LINK_BASE + 0x580) /* R/W Host Channel 4 Characteristics Register */
534#define S5P_OTG_HCSPLT4 (USBOTG_LINK_BASE + 0x584) /* R/W Host Channel 4 Spilt Control Register */
535#define S5P_OTG_HCINT4 (USBOTG_LINK_BASE + 0x588) /* R/W Host Channel 4 Interrupt Register */
536#define S5P_OTG_HCINTMSK4 (USBOTG_LINK_BASE + 0x58C) /* R/W Host Channel 4 Interrupt Mask Register */
537#define S5P_OTG_HCTSIZ4 (USBOTG_LINK_BASE + 0x580) /* R/W Host Channel 4 Transfer Size Register */
538#define S5P_OTG_HCDMA4 (USBOTG_LINK_BASE + 0x584) /* R/W Host Channel 4 DMA Address Register */
539#define S5P_OTG_HCCHAR5 (USBOTG_LINK_BASE + 0x5A0) /* R/W Host Channel 5 Characteristics Register */
540#define S5P_OTG_HCSPLT5 (USBOTG_LINK_BASE + 0x5A4) /* R/W Host Channel 5 Spilt Control Register */
541#define S5P_OTG_HCINT5 (USBOTG_LINK_BASE + 0x5A8) /* R/W Host Channel 5 Interrupt Register */
542#define S5P_OTG_HCINTMSK5 (USBOTG_LINK_BASE + 0x5AC) /* R/W Host Channel 5 Interrupt Mask Register */
543#define S5P_OTG_HCTSIZ5 (USBOTG_LINK_BASE + 0x5B0) /* R/W Host Channel 5 Transfer Size Register */
544#define S5P_OTG_HCDMA5 (USBOTG_LINK_BASE + 0x5B4) /* R/W Host Channel 5 DMA Address Register */
545#define S5P_OTG_HCCHAR6 (USBOTG_LINK_BASE + 0x5C0) /* R/W Host Channel 6 Characteristics Register */
546#define S5P_OTG_HCSPLT6 (USBOTG_LINK_BASE + 0x5C4) /* R/W Host Channel 6 Spilt Control Register */
547#define S5P_OTG_HCINT6 (USBOTG_LINK_BASE + 0x5C8) /* R/W Host Channel 6 Interrupt Register */
548#define S5P_OTG_HCINTMSK6 (USBOTG_LINK_BASE + 0x5CC) /* R/W Host Channel 6 Interrupt Mask Register */
549#define S5P_OTG_HCTSIZ6 (USBOTG_LINK_BASE + 0x5D0) /* R/W Host Channel 6 Transfer Size Register */
550#define S5P_OTG_HCDMA6 (USBOTG_LINK_BASE + 0x5D4) /* R/W Host Channel 6 DMA Address Register */
551#define S5P_OTG_HCCHAR7 (USBOTG_LINK_BASE + 0x5E0) /* R/W Host Channel 7 Characteristics Register */
552#define S5P_OTG_HCSPLT7 (USBOTG_LINK_BASE + 0x5E4) /* R/W Host Channel 7 Spilt Control Register */
553#define S5P_OTG_HCINT7 (USBOTG_LINK_BASE + 0x5E8) /* R/W Host Channel 7 Interrupt Register */
554#define S5P_OTG_HCINTMSK7 (USBOTG_LINK_BASE + 0x5EC) /* R/W Host Channel 7 Interrupt Mask Register */
555#define S5P_OTG_HCTSIZ7 (USBOTG_LINK_BASE + 0x5F0) /* R/W Host Channel 7 Transfer Size Register */
556#define S5P_OTG_HCDMA7 (USBOTG_LINK_BASE + 0x5F4) /* R/W Host Channel 7 DMA Address Register */
557#define S5P_OTG_HCCHAR8 (USBOTG_LINK_BASE + 0x600) /* R/W Host Channel 8 Characteristics Register */
558#define S5P_OTG_HCSPLT8 (USBOTG_LINK_BASE + 0x604) /* R/W Host Channel 8 Spilt Control Register */
559#define S5P_OTG_HCINT8 (USBOTG_LINK_BASE + 0x608) /* R/W Host Channel 8 Interrupt Register */
560#define S5P_OTG_HCINTMSK8 (USBOTG_LINK_BASE + 0x60C) /* R/W Host Channel 8 Interrupt Mask Register */
561#define S5P_OTG_HCTSIZ8 (USBOTG_LINK_BASE + 0x610) /* R/W Host Channel 8 Transfer Size Register */
562#define S5P_OTG_HCDMA8 (USBOTG_LINK_BASE + 0x614) /* R/W Host Channel 8 DMA Address Register */
563#define S5P_OTG_HCCHAR9 (USBOTG_LINK_BASE + 0x620) /* R/W Host Channel 9 Characteristics Register */
564#define S5P_OTG_HCSPLT9 (USBOTG_LINK_BASE + 0x624) /* R/W Host Channel 9 Spilt Control Register */
565#define S5P_OTG_HCINT9 (USBOTG_LINK_BASE + 0x628) /* R/W Host Channel 9 Interrupt Register */
566#define S5P_OTG_HCINTMSK9 (USBOTG_LINK_BASE + 0x62C) /* R/W Host Channel 9 Interrupt Mask Register */
567#define S5P_OTG_HCTSIZ9 (USBOTG_LINK_BASE + 0x630) /* R/W Host Channel 9 Transfer Size Register */
568#define S5P_OTG_HCDMA9 (USBOTG_LINK_BASE + 0x634) /* R/W Host Channel 9 DMA Address Register */
569#define S5P_OTG_HCCHAR10 (USBOTG_LINK_BASE + 0x640) /* R/W Host Channel 10 Characteristics Register */
570#define S5P_OTG_HCSPLT10 (USBOTG_LINK_BASE + 0x644) /* R/W Host Channel 10 Spilt Control Register */
571#define S5P_OTG_HCINT10 (USBOTG_LINK_BASE + 0x648) /* R/W Host Channel 10 Interrupt Register */
572#define S5P_OTG_HCINTMSK10 (USBOTG_LINK_BASE + 0x64C) /* R/W Host Channel 10 Interrupt Mask Register */
573#define S5P_OTG_HCTSIZ10 (USBOTG_LINK_BASE + 0x650) /* R/W Host Channel 10 Transfer Size Register */
574#define S5P_OTG_HCDMA10 (USBOTG_LINK_BASE + 0x654) /* R/W Host Channel 10 DMA Address Register */
575#define S5P_OTG_HCCHAR11 (USBOTG_LINK_BASE + 0x660) /* R/W Host Channel 11 Characteristics Register */
576#define S5P_OTG_HCSPLT11 (USBOTG_LINK_BASE + 0x664) /* R/W Host Channel 11 Spilt Control Register */
577#define S5P_OTG_HCINT11 (USBOTG_LINK_BASE + 0x668) /* R/W Host Channel 11 Interrupt Register */
578#define S5P_OTG_HCINTMSK11 (USBOTG_LINK_BASE + 0x66C) /* R/W Host Channel 11 Interrupt Mask Register */
579#define S5P_OTG_HCTSIZ11 (USBOTG_LINK_BASE + 0x670) /* R/W Host Channel 11 Transfer Size Register */
580#define S5P_OTG_HCDMA11 (USBOTG_LINK_BASE + 0x674) /* R/W Host Channel 11 DMA Address Register */
581#define S5P_OTG_HCCHAR12 (USBOTG_LINK_BASE + 0x680) /* R/W Host Channel 12 Characteristics Register */
582#define S5P_OTG_HCSPLT12 (USBOTG_LINK_BASE + 0x684) /* R/W Host Channel 12 Spilt Control Register */
583#define S5P_OTG_HCINT12 (USBOTG_LINK_BASE + 0x688) /* R/W Host Channel 12 Interrupt Register */
584#define S5P_OTG_HCINTMSK12 (USBOTG_LINK_BASE + 0x68C) /* R/W Host Channel 12 Interrupt Mask Register */
585#define S5P_OTG_HCTSIZ12 (USBOTG_LINK_BASE + 0x690) /* R/W Host Channel 12 Transfer Size Register */
586#define S5P_OTG_HCDMA12 (USBOTG_LINK_BASE + 0x694) /* R/W Host Channel 12 DMA Address Register */
587#define S5P_OTG_HCCHAR13 (USBOTG_LINK_BASE + 0x6A0) /* R/W Host Channel 13 Characteristics Register */
588#define S5P_OTG_HCSPLT13 (USBOTG_LINK_BASE + 0x6A4) /* R/W Host Channel 13 Spilt Control Register */
589#define S5P_OTG_HCINT13 (USBOTG_LINK_BASE + 0x6A8) /* R/W Host Channel 13 Interrupt Register */
590#define S5P_OTG_HCINTMSK13 (USBOTG_LINK_BASE + 0x6AC) /* R/W Host Channel 13 Interrupt Mask Register */
591#define S5P_OTG_HCTSIZ13 (USBOTG_LINK_BASE + 0x6B0) /* R/W Host Channel 13 Transfer Size Register */
592#define S5P_OTG_HCDMA13 (USBOTG_LINK_BASE + 0x6B4) /* R/W Host Channel 13 DMA Address Register */
593#define S5P_OTG_HCCHAR14 (USBOTG_LINK_BASE + 0x6C0) /* R/W Host Channel 14 Characteristics Register */
594#define S5P_OTG_HCSPLT14 (USBOTG_LINK_BASE + 0x6C4) /* R/W Host Channel 14 Spilt Control Register */
595#define S5P_OTG_HCINT14 (USBOTG_LINK_BASE + 0x6C8) /* R/W Host Channel 14 Interrupt Register */
596#define S5P_OTG_HCINTMSK14 (USBOTG_LINK_BASE + 0x6CC) /* R/W Host Channel 14 Interrupt Mask Register */
597#define S5P_OTG_HCTSIZ14 (USBOTG_LINK_BASE + 0x6D0) /* R/W Host Channel 14 Transfer Size Register */
598#define S5P_OTG_HCDMA14 (USBOTG_LINK_BASE + 0x6D4) /* R/W Host Channel 14 DMA Address Register */
599#define S5P_OTG_HCCHAR15 (USBOTG_LINK_BASE + 0x6E0) /* R/W Host Channel 15 Characteristics Register */
600#define S5P_OTG_HCSPLT15 (USBOTG_LINK_BASE + 0x6E4) /* R/W Host Channel 15 Spilt Control Register */
601#define S5P_OTG_HCINT15 (USBOTG_LINK_BASE + 0x6E8) /* R/W Host Channel 15 Interrupt Register */
602#define S5P_OTG_HCINTMSK15 (USBOTG_LINK_BASE + 0x6EC) /* R/W Host Channel 15 Interrupt Mask Register */
603#define S5P_OTG_HCTSIZ15 (USBOTG_LINK_BASE + 0x6F0) /* R/W Host Channel 15 Transfer Size Register */
604#define S5P_OTG_HCDMA15 (USBOTG_LINK_BASE + 0x6F4) /* R/W Host Channel 15 DMA Address Register */
605
606/* Device Global Register */
607#define S5P_OTG_DCFG (USBOTG_LINK_BASE + 0x800) /* R/W Device Configuration Register */
608#define S5P_OTG_DCTL (USBOTG_LINK_BASE + 0x804) /* R/W Device Control Register */
609#define S5P_OTG_DSTS (USBOTG_LINK_BASE + 0x808) /* R Device Status Register */
610#define S5P_OTG_DIEPMSK (USBOTG_LINK_BASE + 0x810) /* R/W Device IN Endpoint Common Interrupt Mask Register */
611#define S5P_OTG_DOEPMSK (USBOTG_LINK_BASE + 0x814) /* R/W Device OUT Endpoint Common Interrupt Mask Register */
612#define S5P_OTG_DAINT (USBOTG_LINK_BASE + 0x818) /* R Device ALL Endpoints Interrupt Register */
613#define S5P_OTG_DAINTMSK (USBOTG_LINK_BASE + 0x81C) /* R/W Device ALL Endpoints Interrupt Mask Register */
614#define S5P_OTG_DTKNQR1 (USBOTG_LINK_BASE + 0x820) /* R Device IN Token Sequence Learning Queue Read Register */
615#define S5P_OTG_DTKNQR2 (USBOTG_LINK_BASE + 0x824) /* R Device IN Token Sequence Learning Queue Read Register */
616#define S5P_OTG_DVBUSDIS (USBOTG_LINK_BASE + 0x828) /* R/W Device VBUS Discharge Time Register */
617#define S5P_OTG_DVBUSPULSE (USBOTG_LINK_BASE + 0x82C) /* R/W Device VBUS Pulsing Time Register */
618#define S5P_OTG_DTKNQR3 (USBOTG_LINK_BASE + 0x830) /* R Device IN Token Sequence Learning Queue Read Register */
619#define S5P_OTG_DTKNQR4 (USBOTG_LINK_BASE + 0x834) /* R Device IN Token Sequence Learning Queue Read Register */
620
621/* Device Logical IN Endpo int-Specific Registers */
622#define S5P_OTG_DIEPCTL0 (USBOTG_LINK_BASE + 0x900) /* R/W Device Control IN Endpoint 0 Control Register */
623#define S5P_OTG_DIEPINT0 (USBOTG_LINK_BASE + 0x908) /* R/W Device IN Endpoint 0 Interrupt Register */
624#define S5P_OTG_DIEPTSIZ0 (USBOTG_LINK_BASE + 0x910) /* R/W Device IN Endpoint 0 Transfer Size Register */
625#define S5P_OTG_DIEPDMA0 (USBOTG_LINK_BASE + 0x914) /* R/W Device IN Endpoint 0 DMA Address Register */
626#define S5P_OTG_DIEPCTL1 (USBOTG_LINK_BASE + 0x920) /* R/W Device Control IN Endpoint 1 Control Register */
627#define S5P_OTG_DIEPINT1 (USBOTG_LINK_BASE + 0x928) /* R/W Device IN Endpoint 1 Interrupt Register */
628#define S5P_OTG_DIEPTSIZ1 (USBOTG_LINK_BASE + 0x930) /* R/W Device IN Endpoint 1 Transfer Size Register */
629#define S5P_OTG_DIEPDMA1 (USBOTG_LINK_BASE + 0x934) /* R/W Device IN Endpoint 1 DMA Address Register */
630#define S5P_OTG_DIEPCTL2 (USBOTG_LINK_BASE + 0x940) /* R/W Device Control IN Endpoint 2 Control Register */
631#define S5P_OTG_DIEPINT2 (USBOTG_LINK_BASE + 0x948) /* R/W Device IN Endpoint 2 Interrupt Register */
632#define S5P_OTG_DIEPTSIZ2 (USBOTG_LINK_BASE + 0x950) /* R/W Device IN Endpoint 2 Transfer Size Register */
633#define S5P_OTG_DIEPDMA2 (USBOTG_LINK_BASE + 0x954) /* R/W Device IN Endpoint 2 DMA Address Register */
634#define S5P_OTG_DIEPCTL3 (USBOTG_LINK_BASE + 0x960) /* R/W Device Control IN Endpoint 3 Control Register */
635#define S5P_OTG_DIEPINT3 (USBOTG_LINK_BASE + 0x968) /* R/W Device IN Endpoint 3 Interrupt Register */
636#define S5P_OTG_DIEPTSIZ3 (USBOTG_LINK_BASE + 0x970) /* R/W Device IN Endpoint 3 Transfer Size Register */
637#define S5P_OTG_DIEPDMA3 (USBOTG_LINK_BASE + 0x974) /* R/W Device IN Endpoint 3 DMA Address Register */
638#define S5P_OTG_DIEPCTL4 (USBOTG_LINK_BASE + 0x980) /* R/W Device Control IN Endpoint 0 Control Register */
639#define S5P_OTG_DIEPINT4 (USBOTG_LINK_BASE + 0x988) /* R/W Device IN Endpoint 4 Interrupt Register */
640#define S5P_OTG_DIEPTSIZ4 (USBOTG_LINK_BASE + 0x990) /* R/W Device IN Endpoint 4 Transfer Size Register */
641#define S5P_OTG_DIEPDMA4 (USBOTG_LINK_BASE + 0x994) /* R/W Device IN Endpoint 4 DMA Address Register */
642#define S5P_OTG_DIEPCTL5 (USBOTG_LINK_BASE + 0x9A0) /* R/W Device Control IN Endpoint 5 Control Register */
643#define S5P_OTG_DIEPINT5 (USBOTG_LINK_BASE + 0x9A8) /* R/W Device IN Endpoint 5 Interrupt Register */
644#define S5P_OTG_DIEPTSIZ5 (USBOTG_LINK_BASE + 0x9B0) /* R/W Device IN Endpoint 5 Transfer Size Register */
645#define S5P_OTG_DIEPDMA5 (USBOTG_LINK_BASE + 0x9B4) /* R/W Device IN Endpoint 5 DMA Address Register */
646#define S5P_OTG_DIEPCTL6 (USBOTG_LINK_BASE + 0x9C0) /* R/W Device Control IN Endpoint 6 Control Register */
647#define S5P_OTG_DIEPINT6 (USBOTG_LINK_BASE + 0x9C8) /* R/W Device IN Endpoint 6 Interrupt Register */
648#define S5P_OTG_DIEPTSIZ6 (USBOTG_LINK_BASE + 0x9D0) /* R/W Device IN Endpoint 6 Transfer Size Register */
649#define S5P_OTG_DIEPDMA6 (USBOTG_LINK_BASE + 0x9D4) /* R/W Device IN Endpoint 6 DMA Address Register */
650#define S5P_OTG_DIEPCTL7 (USBOTG_LINK_BASE + 0x9E0) /* R/W Device Control IN Endpoint 7 Control Register */
651#define S5P_OTG_DIEPINT7 (USBOTG_LINK_BASE + 0x9E8) /* R/W Device IN Endpoint 7 Interrupt Register */
652#define S5P_OTG_DIEPTSIZ7 (USBOTG_LINK_BASE + 0x9F0) /* R/W Device IN Endpoint 7 Transfer Size Register */
653#define S5P_OTG_DIEPDMA7 (USBOTG_LINK_BASE + 0x9F4) /* R/W Device IN Endpoint 7 DMA Address Register */
654#define S5P_OTG_DIEPCTL8 (USBOTG_LINK_BASE + 0xA00) /* R/W Device Control IN Endpoint 8 Control Register */
655#define S5P_OTG_DIEPINT8 (USBOTG_LINK_BASE + 0xA08) /* R/W Device IN Endpoint 8 Interrupt Register */
656#define S5P_OTG_DIEPTSIZ8 (USBOTG_LINK_BASE + 0xA10) /* R/W Device IN Endpoint 8 Transfer Size Register */
657#define S5P_OTG_DIEPDMA8 (USBOTG_LINK_BASE + 0xA14) /* R/W Device IN Endpoint 8 DMA Address Register */
658#define S5P_OTG_DIEPCTL9 (USBOTG_LINK_BASE + 0xA20) /* R/W Device Control IN Endpoint 9 Control Register */
659#define S5P_OTG_DIEPINT9 (USBOTG_LINK_BASE + 0xA28) /* R/W Device IN Endpoint 9 Interrupt Register */
660#define S5P_OTG_DIEPTSIZ9 (USBOTG_LINK_BASE + 0xA30) /* R/W Device IN Endpoint 9 Transfer Size Register */
661#define S5P_OTG_DIEPDMA9 (USBOTG_LINK_BASE + 0xA34) /* R/W Device IN Endpoint 9 DMA Address Register */
662#define S5P_OTG_DIEPCTL10 (USBOTG_LINK_BASE + 0xA40) /* R/W Device Control IN Endpoint 10 Control Register */
663#define S5P_OTG_DIEPINT10 (USBOTG_LINK_BASE + 0xA48) /* R/W Device IN Endpoint 10 Interrupt Register */
664#define S5P_OTG_DIEPTSIZ10 (USBOTG_LINK_BASE + 0xA50) /* R/W Device IN Endpoint 10 Transfer Size Register */
665#define S5P_OTG_DIEPDMA10 (USBOTG_LINK_BASE + 0xA54) /* R/W Device IN Endpoint 10 DMA Address Register */
666#define S5P_OTG_DIEPCTL11 (USBOTG_LINK_BASE + 0xA60) /* R/W Device Control IN Endpoint 11 Control Register */
667#define S5P_OTG_DIEPINT11 (USBOTG_LINK_BASE + 0xA68) /* R/W Device IN Endpoint 11 Interrupt Register */
668#define S5P_OTG_DIEPTSIZ11 (USBOTG_LINK_BASE + 0xA70) /* R/W Device IN Endpoint 11 Transfer Size Register */
669#define S5P_OTG_DIEPDMA11 (USBOTG_LINK_BASE + 0xA74) /* R/W Device IN Endpoint 11 DMA Address Register */
670#define S5P_OTG_DIEPCTL12 (USBOTG_LINK_BASE + 0xA80) /* R/W Device Control IN Endpoint 12 Control Register */
671#define S5P_OTG_DIEPINT12 (USBOTG_LINK_BASE + 0xA88) /* R/W Device IN Endpoint 12 Interrupt Register */
672#define S5P_OTG_DIEPTSIZ12 (USBOTG_LINK_BASE + 0xA90) /* R/W Device IN Endpoint 12 Transfer Size Register */
673#define S5P_OTG_DIEPDMA12 (USBOTG_LINK_BASE + 0xA94) /* R/W Device IN Endpoint 12 DMA Address Register */
674#define S5P_OTG_DIEPCTL13 (USBOTG_LINK_BASE + 0xAA0) /* R/W Device Control IN Endpoint 13 Control Register */
675#define S5P_OTG_DIEPINT13 (USBOTG_LINK_BASE + 0xAA8) /* R/W Device IN Endpoint 13 Interrupt Register */
676#define S5P_OTG_DIEPTSIZ13 (USBOTG_LINK_BASE + 0xAB0) /* R/W Device IN Endpoint 13 Transfer Size Register */
677#define S5P_OTG_DIEPDMA13 (USBOTG_LINK_BASE + 0xAB4) /* R/W Device IN Endpoint 13 DMA Address Register */
678#define S5P_OTG_DIEPCTL14 (USBOTG_LINK_BASE + 0xAC0) /* R/W Device Control IN Endpoint 14 Control Register */
679#define S5P_OTG_DIEPINT14 (USBOTG_LINK_BASE + 0xAC8) /* R/W Device IN Endpoint 14 Interrupt Register */
680#define S5P_OTG_DIEPTSIZ14 (USBOTG_LINK_BASE + 0xAD0) /* R/W Device IN Endpoint 14 Transfer Size Register */
681#define S5P_OTG_DIEPDMA14 (USBOTG_LINK_BASE + 0xAD4) /* R/W Device IN Endpoint 14 DMA Address Register */
682#define S5P_OTG_DIEPCTL15 (USBOTG_LINK_BASE + 0xAE0) /* R/W Device Control IN Endpoint 15 Control Register */
683#define S5P_OTG_DIEPINT15 (USBOTG_LINK_BASE + 0xAE8) /* R/W Device IN Endpoint 15 Interrupt Register */
684#define S5P_OTG_DIEPTSIZ15 (USBOTG_LINK_BASE + 0xAF0) /* R/W Device IN Endpoint 15 Transfer Size Register */
685#define S5P_OTG_DIEPDMA15 (USBOTG_LINK_BASE + 0xAF4) /* R/W Device IN Endpoint 15 DMA Address Register */
686
687/* Device Logical OUT Endpoint-Specific Register */
688#define S5P_OTG_DOEPCTL0 (USBOTG_LINK_BASE + 0xB00) /* R/W Device Control OUT Endpoint 0 Control Register */
689#define S5P_OTG_DOEPINT0 (USBOTG_LINK_BASE + 0xB08) /* R/W Device OUT Endpoint 0 Interrupt Register */
690#define S5P_OTG_DOEPTSIZ0 (USBOTG_LINK_BASE + 0xB10) /* R/W Device OUT Endpoint 0 Transfer Size Register */
691#define S5P_OTG_DOEPDMA0 (USBOTG_LINK_BASE + 0xB14) /* R/W Device OUT Endpoint 0 DMA Address Register */
692#define S5P_OTG_DOEPCTL1 (USBOTG_LINK_BASE + 0xB20) /* R/W Device Control OUT Endpoint 1 Control Register */
693#define S5P_OTG_DOEPINT1 (USBOTG_LINK_BASE + 0xB28) /* R/W Device OUT Endpoint 1 Interrupt Register */
694#define S5P_OTG_DOEPTSIZ1 (USBOTG_LINK_BASE + 0xB30) /* R/W Device OUT Endpoint 1 Transfer Size Register */
695#define S5P_OTG_DOEPDMA1 (USBOTG_LINK_BASE + 0xB34) /* R/W Device OUT Endpoint 1 DMA Address Register */
696#define S5P_OTG_DOEPCTL2 (USBOTG_LINK_BASE + 0xB40) /* R/W Device Control OUT Endpoint 2 Control Register */
697#define S5P_OTG_DOEPINT2 (USBOTG_LINK_BASE + 0xB48) /* R/W Device OUT Endpoint 2 Interrupt Register */
698#define S5P_OTG_DOEPTSIZ2 (USBOTG_LINK_BASE + 0xB50) /* R/W Device OUT Endpoint 2 Transfer Size Register */
699#define S5P_OTG_DOEPDMA2 (USBOTG_LINK_BASE + 0xB54) /* R/W Device OUT Endpoint 2 DMA Address Register */
700#define S5P_OTG_DOEPCTL3 (USBOTG_LINK_BASE + 0xB60) /* R/W Device Control OUT Endpoint 3 Control Register */
701#define S5P_OTG_DOEPINT3 (USBOTG_LINK_BASE + 0xB68) /* R/W Device OUT Endpoint 3 Interrupt Register */
702#define S5P_OTG_DOEPTSIZ3 (USBOTG_LINK_BASE + 0xB70) /* R/W Device OUT Endpoint 3 Transfer Size Register */
703#define S5P_OTG_DOEPDMA3 (USBOTG_LINK_BASE + 0xB74) /* R/W Device OUT Endpoint 3 DMA Address Register */
704#define S5P_OTG_DOEPCTL4 (USBOTG_LINK_BASE + 0xB80) /* R/W Device Control OUT Endpoint 4 Control Register */
705#define S5P_OTG_DOEPINT4 (USBOTG_LINK_BASE + 0xB88) /* R/W Device OUT Endpoint 4 Interrupt Register */
706#define S5P_OTG_DOEPTSIZ4 (USBOTG_LINK_BASE + 0xB90) /* R/W Device OUT Endpoint 4 Transfer Size Register */
707#define S5P_OTG_DOEPDMA4 (USBOTG_LINK_BASE + 0xB94) /* R/W Device OUT Endpoint 4 DMA Address Register */
708#define S5P_OTG_DOEPCTL5 (USBOTG_LINK_BASE + 0xBA0) /* R/W Device Control OUT Endpoint 5 Control Register */
709#define S5P_OTG_DOEPINT5 (USBOTG_LINK_BASE + 0xBA8) /* R/W Device OUT Endpoint 5 Interrupt Register */
710#define S5P_OTG_DOEPTSIZ5 (USBOTG_LINK_BASE + 0xBB0) /* R/W Device OUT Endpoint 5 Transfer Size Register */
711#define S5P_OTG_DOEPDMA5 (USBOTG_LINK_BASE + 0xBB4) /* R/W Device OUT Endpoint 5 DMA Address Register */
712#define S5P_OTG_DOEPCTL6 (USBOTG_LINK_BASE + 0xBC0) /* R/W Device Control OUT Endpoint 6 Control Register */
713#define S5P_OTG_DOEPINT6 (USBOTG_LINK_BASE + 0xBC8) /* R/W Device OUT Endpoint 6 Interrupt Register */
714#define S5P_OTG_DOEPTSIZ6 (USBOTG_LINK_BASE + 0xBD0) /* R/W Device OUT Endpoint 6 Transfer Size Register */
715#define S5P_OTG_DOEPDMA6 (USBOTG_LINK_BASE + 0xBD4) /* R/W Device OUT Endpoint 6 DMA Address Register */
716#define S5P_OTG_DOEPCTL7 (USBOTG_LINK_BASE + 0xBE0) /* R/W Device Control OUT Endpoint 7 Control Register */
717#define S5P_OTG_DOEPINT7 (USBOTG_LINK_BASE + 0xBE8) /* R/W Device OUT Endpoint 7 Interrupt Register */
718#define S5P_OTG_DOEPTSIZ7 (USBOTG_LINK_BASE + 0xBF0) /* R/W Device OUT Endpoint 7 Transfer Size Register */
719#define S5P_OTG_DOEPDMA7 (USBOTG_LINK_BASE + 0xBF4) /* R/W Device OUT Endpoint 7 DMA Address Register */
720#define S5P_OTG_DOEPCTL8 (USBOTG_LINK_BASE + 0xC00) /* R/W Device Control OUT Endpoint 8 Control Register */
721#define S5P_OTG_DOEPINT8 (USBOTG_LINK_BASE + 0xC08) /* R/W Device OUT Endpoint 8 Interrupt Register */
722#define S5P_OTG_DOEPTSIZ8 (USBOTG_LINK_BASE + 0xC10) /* R/W Device OUT Endpoint 8 Transfer Size Register */
723#define S5P_OTG_DOEPDMA8 (USBOTG_LINK_BASE + 0xC14) /* R/W Device OUT Endpoint 8 DMA Address Register */
724#define S5P_OTG_DOEPCTL9 (USBOTG_LINK_BASE + 0xC20) /* R/W Device Control OUT Endpoint 9 Control Register */
725#define S5P_OTG_DOEPINT9 (USBOTG_LINK_BASE + 0xC28) /* R/W Device OUT Endpoint 9 Interrupt Register */
726#define S5P_OTG_DOEPTSIZ9 (USBOTG_LINK_BASE + 0xC30) /* R/W Device OUT Endpoint 9 Transfer Size Register */
727#define S5P_OTG_DOEPDMA9 (USBOTG_LINK_BASE + 0xC34) /* R/W Device OUT Endpoint 9 DMA Address Register */
728#define S5P_OTG_DOEPCTL10 (USBOTG_LINK_BASE + 0xC40) /* R/W Device Control OUT Endpoint 10 Control Register */
729#define S5P_OTG_DOEPINT10 (USBOTG_LINK_BASE + 0xC48) /* R/W Device OUT Endpoint 10 Interrupt Register */
730#define S5P_OTG_DOEPTSIZ10 (USBOTG_LINK_BASE + 0xC50) /* R/W Device OUT Endpoint 10 Transfer Size Register */
731#define S5P_OTG_DOEPDMA10 (USBOTG_LINK_BASE + 0xC54) /* R/W Device OUT Endpoint 10 DMA Address Register */
732#define S5P_OTG_DOEPCTL11 (USBOTG_LINK_BASE + 0xC60) /* R/W Device Control OUT Endpoint 11 Control Register */
733#define S5P_OTG_DOEPINT11 (USBOTG_LINK_BASE + 0xC68) /* R/W Device OUT Endpoint 11 Interrupt Register */
734#define S5P_OTG_DOEPTSIZ11 (USBOTG_LINK_BASE + 0xC70) /* R/W Device OUT Endpoint 11 Transfer Size Register */
735#define S5P_OTG_DOEPDMA11 (USBOTG_LINK_BASE + 0xC74) /* R/W Device OUT Endpoint 11 DMA Address Register */
736#define S5P_OTG_DOEPCTL12 (USBOTG_LINK_BASE + 0xC80) /* R/W Device Control OUT Endpoint 12 Control Register */
737#define S5P_OTG_DOEPINT12 (USBOTG_LINK_BASE + 0xC88) /* R/W Device OUT Endpoint 12 Interrupt Register */
738#define S5P_OTG_DOEPTSIZ12 (USBOTG_LINK_BASE + 0xC90) /* R/W Device OUT Endpoint 12 Transfer Size Register */
739#define S5P_OTG_DOEPDMA12 (USBOTG_LINK_BASE + 0xC94) /* R/W Device OUT Endpoint 12 DMA Address Register */
740#define S5P_OTG_DOEPCTL13 (USBOTG_LINK_BASE + 0xCA0) /* R/W Device Control OUT Endpoint 13 Control Register */
741#define S5P_OTG_DOEPINT13 (USBOTG_LINK_BASE + 0xCA8) /* R/W Device OUT Endpoint 13 Interrupt Register */
742#define S5P_OTG_DOEPTSIZ13 (USBOTG_LINK_BASE + 0xCB0) /* R/W Device OUT Endpoint 13 Transfer Size Register */
743#define S5P_OTG_DOEPDMA13 (USBOTG_LINK_BASE + 0xCB4) /* R/W Device OUT Endpoint 13 DMA Address Register */
744#define S5P_OTG_DOEPCTL14 (USBOTG_LINK_BASE + 0xCC0) /* R/W Device Control OUT Endpoint 14 Control Register */
745#define S5P_OTG_DOEPINT14 (USBOTG_LINK_BASE + 0xCC8) /* R/W Device OUT Endpoint 14 Interrupt Register */
746#define S5P_OTG_DOEPTSIZ14 (USBOTG_LINK_BASE + 0xCD0) /* R/W Device OUT Endpoint 14 Transfer Size Register */
747#define S5P_OTG_DOEPDMA14 (USBOTG_LINK_BASE + 0xCD4) /* R/W Device OUT Endpoint 14 DMA Address Register */
748#define S5P_OTG_DOEPCTL15 (USBOTG_LINK_BASE + 0xCE0) /* R/W Device Control OUT Endpoint 15 Control Register */
749#define S5P_OTG_OTG_DOEPINT15 (USBOTG_LINK_BASE + 0xCE8) /* R/W Device OUT Endpoint 15 Interrupt Register */
750#define S5P_OTG_DOEPTSIZ15 (USBOTG_LINK_BASE + 0xCF0) /* R/W Device OUT Endpoint 15 Transfer Size Register */
751#define S5P_OTG_DOEPDMA15 (USBOTG_LINK_BASE + 0xCF4) /* R/W Device OUT Endpoint 15 DMA Address Register */
752
753/* Power and Clock Gating Register */
754#define S5P_OTG_PCGCCTL (USBOTG_LINK_BASE + 0xE00) /* R/W Power and Clock Gating Control Register */
755
756/* Endpoint FIFO address */
757#define S5P_OTG_EP0_FIFO (USBOTG_LINK_BASE + 0x1000)
758
759/* USB Global Interrupt Status register(GINTSTS) setting value */
760#define GINTSTS_WkUpInt (1<<31)
761#define GINTSTS_OEPInt (1<<19)
762#define GINTSTS_IEPInt (1<<18)
763#define GINTSTS_EnumDone (1<<13)
764#define GINTSTS_USBRst (1<<12)
765#define GINTSTS_USBSusp (1<<11)
766#define GINTSTS_RXFLvl (1<<4)
767
768#endif /* _S5PV310_CPU_H */