GNU Linux-libre 6.1.90-gnu
[releases.git] / arch / arm / mach-ep93xx / ep93xx-regs.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_ARCH_EP93XX_REGS_H
3 #define __ASM_ARCH_EP93XX_REGS_H
4
5 /*
6  * EP93xx linux memory map:
7  *
8  * virt         phys            size
9  * fe800000                     5M              per-platform mappings
10  * fed00000     80800000        2M              APB
11  * fef00000     80000000        1M              AHB
12  */
13
14 #define EP93XX_AHB_PHYS_BASE            0x80000000
15 #define EP93XX_AHB_VIRT_BASE            0xfef00000
16 #define EP93XX_AHB_SIZE                 0x00100000
17
18 #define EP93XX_AHB_PHYS(x)              (EP93XX_AHB_PHYS_BASE + (x))
19 #define EP93XX_AHB_IOMEM(x)             IOMEM(EP93XX_AHB_VIRT_BASE + (x))
20
21 #define EP93XX_APB_PHYS_BASE            0x80800000
22 #define EP93XX_APB_VIRT_BASE            0xfed00000
23 #define EP93XX_APB_SIZE                 0x00200000
24
25 #define EP93XX_APB_PHYS(x)              (EP93XX_APB_PHYS_BASE + (x))
26 #define EP93XX_APB_IOMEM(x)             IOMEM(EP93XX_APB_VIRT_BASE + (x))
27
28 /* APB UARTs */
29 #define EP93XX_UART1_PHYS_BASE          EP93XX_APB_PHYS(0x000c0000)
30 #define EP93XX_UART1_BASE               EP93XX_APB_IOMEM(0x000c0000)
31
32 #define EP93XX_UART2_PHYS_BASE          EP93XX_APB_PHYS(0x000d0000)
33 #define EP93XX_UART2_BASE               EP93XX_APB_IOMEM(0x000d0000)
34
35 #define EP93XX_UART3_PHYS_BASE          EP93XX_APB_PHYS(0x000e0000)
36 #define EP93XX_UART3_BASE               EP93XX_APB_IOMEM(0x000e0000)
37
38 #endif