Linux 5.7.6
[linux/fpc-iii.git] / arch / arm / mach-mmp / addr-map.h
blob3dc2f0b0ecba54f3547aed94484196c6ad93f4a0
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3 * Common address map definitions
4 */
6 #ifndef __ASM_MACH_ADDR_MAP_H
7 #define __ASM_MACH_ADDR_MAP_H
9 /* APB - Application Subsystem Peripheral Bus
11 * NOTE: the DMA controller registers are actually on the AXI fabric #1
12 * slave port to AHB/APB bridge, due to its close relationship to those
13 * peripherals on APB, let's count it into the ABP mapping area.
15 #define APB_PHYS_BASE 0xd4000000
16 #define APB_VIRT_BASE IOMEM(0xfe000000)
17 #define APB_PHYS_SIZE 0x00200000
19 #define AXI_PHYS_BASE 0xd4200000
20 #define AXI_VIRT_BASE IOMEM(0xfe200000)
21 #define AXI_PHYS_SIZE 0x00200000
23 #define PGU_PHYS_BASE 0xe0000000
24 #define PGU_VIRT_BASE IOMEM(0xfe400000)
25 #define PGU_PHYS_SIZE 0x00100000
27 /* Static Memory Controller - Chip Select 0 and 1 */
28 #define SMC_CS0_PHYS_BASE 0x80000000
29 #define SMC_CS0_PHYS_SIZE 0x10000000
30 #define SMC_CS1_PHYS_BASE 0x90000000
31 #define SMC_CS1_PHYS_SIZE 0x10000000
33 #define APMU_VIRT_BASE (AXI_VIRT_BASE + 0x82800)
34 #define APMU_REG(x) (APMU_VIRT_BASE + (x))
36 #define APBC_VIRT_BASE (APB_VIRT_BASE + 0x015000)
37 #define APBC_REG(x) (APBC_VIRT_BASE + (x))
39 #define MPMU_VIRT_BASE (APB_VIRT_BASE + 0x50000)
40 #define MPMU_REG(x) (MPMU_VIRT_BASE + (x))
42 #define CIU_VIRT_BASE (AXI_VIRT_BASE + 0x82c00)
43 #define CIU_REG(x) (CIU_VIRT_BASE + (x))
45 #define SCU_VIRT_BASE (PGU_VIRT_BASE)
46 #define SCU_REG(x) (SCU_VIRT_BASE + (x))
48 #endif /* __ASM_MACH_ADDR_MAP_H */