]> Pileus Git - ~andy/linux/blob - arch/arm/mach-s5p6440/include/mach/map.h
ARM: S5P6440: Add new CPU initialization support
[~andy/linux] / arch / arm / mach-s5p6440 / include / mach / map.h
1 /* linux/arch/arm/mach-s5p6440/include/mach/map.h
2  *
3  * Copyright (c) 2009 Samsung Electronics Co., Ltd.
4  *              http://www.samsung.com/
5  *
6  * S5P6440 - Memory map definitions
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as
10  * published by the Free Software Foundation.
11 */
12
13 #ifndef __ASM_ARCH_MAP_H
14 #define __ASM_ARCH_MAP_H __FILE__
15
16 #include <plat/map-base.h>
17
18 /* SYSCON */
19 #define S5P6440_PA_SYSCON       (0xE0100000)
20 #define S5P_PA_SYSCON           S5P6440_PA_SYSCON
21 #define S5P_VA_SYSCON           S3C_VA_SYS
22
23 #define S5P6440_PA_CLK          (S5P6440_PA_SYSCON + 0x0)
24 #define S5P_PA_CLK              S5P6440_PA_CLK
25 #define S5P_VA_CLK              (S5P_VA_SYSCON + 0x0)
26
27 /* GPIO */
28 #define S5P6440_PA_GPIO         (0xE0308000)
29 #define S5P_PA_GPIO             S5P6440_PA_GPIO
30 #define S5P_VA_GPIO             S3C_ADDR(0x00500000)
31
32 /* VIC0 */
33 #define S5P6440_PA_VIC0         (0xE4000000)
34 #define S5P_PA_VIC0             S5P6440_PA_VIC0
35 #define S5P_VA_VIC0             (S3C_VA_IRQ + 0x0)
36 #define VA_VIC0                 S5P_VA_VIC0
37
38 /* VIC1 */
39 #define S5P6440_PA_VIC1         (0xE4100000)
40 #define S5P_PA_VIC1             S5P6440_PA_VIC1
41 #define S5P_VA_VIC1             (S3C_VA_IRQ + 0x10000)
42 #define VA_VIC1                 S5P_VA_VIC1
43
44 /* Timer */
45 #define S5P6440_PA_TIMER        (0xEA000000)
46 #define S5P_PA_TIMER            S5P6440_PA_TIMER
47 #define S5P_VA_TIMER            S3C_VA_TIMER
48
49 /* RTC */
50 #define S5P6440_PA_RTC          (0xEA100000)
51 #define S5P_PA_RTC              S5P6440_PA_RTC
52 #define S5P_VA_RTC              S3C_ADDR(0x00600000)
53
54 /* WDT */
55 #define S5P6440_PA_WDT          (0xEA200000)
56 #define S5P_PA_WDT              S5P6440_PA_WDT
57 #define S5p_VA_WDT              S3C_VA_WATCHDOG
58
59 /* UART */
60 #define S5P6440_PA_UART         (0xEC000000)
61 #define S5P_PA_UART             S5P6440_PA_UART
62 #define S5P_VA_UART             S3C_VA_UART
63
64 #define S5P_PA_UART0            (S5P_PA_UART + 0x0)
65 #define S5P_PA_UART1            (S5P_PA_UART + 0x400)
66 #define S5P_PA_UART2            (S5P_PA_UART + 0x800)
67 #define S5P_PA_UART3            (S5P_PA_UART + 0xC00)
68 #define S5P_UART_OFFSET         (0x400)
69
70 #define S5P_VA_UARTx(x)         (S5P_VA_UART + (S5P_PA_UART & 0xfffff) \
71                                 + ((x) * S5P_UART_OFFSET))
72
73 #define S5P_VA_UART0            S5P_VA_UARTx(0)
74 #define S5P_VA_UART1            S5P_VA_UARTx(1)
75 #define S5P_VA_UART2            S5P_VA_UARTx(2)
76 #define S5P_VA_UART3            S5P_VA_UARTx(3)
77 #define S5P_SZ_UART             SZ_256
78
79 /* I2C */
80 #define S5P6440_PA_IIC0         (0xEC104000)
81 #define S5P_PA_IIC0             S5P6440_PA_IIC0
82 #define S5p_VA_IIC0             S3C_ADDR(0x00700000)
83
84 /* SDRAM */
85 #define S5P6440_PA_SDRAM        (0x20000000)
86 #define S5P_PA_SDRAM            S5P6440_PA_SDRAM
87
88 /* compatibiltiy defines. */
89 #define S3C_PA_UART             S5P_PA_UART
90 #define S3C_UART_OFFSET         S5P_UART_OFFSET
91 #define S3C_PA_TIMER            S5P_PA_TIMER
92 #define S3C_PA_IIC              S5P_PA_IIC0
93
94 #endif /* __ASM_ARCH_MAP_H */