| /* |
| * Copyright (c) 2017 Linaro Limited |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| #ifndef _SOC_MEMORY_MAP_H_ |
| #define _SOC_MEMORY_MAP_H_ |
| |
| /* |
| * Address space definitions |
| */ |
| |
| /* MPS2 Address space definition */ |
| #define MPS2_APB_BASE_ADDR 0x40000000 |
| #define MPS2_AHB_BASE_ADDR 0x40010000 |
| #define MPS2_FPGA_APB_BASE_ADDR 0x40020000 |
| |
| /* MPS2 AHB peripherals */ |
| #define GPIO_0_BASE_ADDR (MPS2_AHB_BASE_ADDR + 0x0000) |
| #define GPIO_1_BASE_ADDR (MPS2_AHB_BASE_ADDR + 0x1000) |
| #define GPIO_2_BASE_ADDR (MPS2_AHB_BASE_ADDR + 0x2000) |
| #define GPIO_3_BASE_ADDR (MPS2_AHB_BASE_ADDR + 0x3000) |
| #define SYSCON_BASE_ADDR (MPS2_AHB_BASE_ADDR + 0xF000) |
| |
| /* MPS2 APB peripherals */ |
| #define TIMER_0_BASE_ADDR (MPS2_APB_BASE_ADDR + 0x0000) |
| #define TIMER_1_BASE_ADDR (MPS2_APB_BASE_ADDR + 0x1000) |
| #define DTIMER_BASE_ADDR (MPS2_APB_BASE_ADDR + 0x2000) |
| #define UART_0_BASE_ADDR (MPS2_APB_BASE_ADDR + 0x4000) |
| #define UART_1_BASE_ADDR (MPS2_APB_BASE_ADDR + 0x5000) |
| #define UART_2_BASE_ADDR (MPS2_APB_BASE_ADDR + 0x6000) |
| #define UART_3_BASE_ADDR (MPS2_APB_BASE_ADDR + 0x7000) |
| #define WDOG_BASE_ADDR (MPS2_APB_BASE_ADDR + 0x8000) |
| #define UART_4_BASE_ADDR (MPS2_APB_BASE_ADDR + 0x9000) |
| |
| /* MPS2 peripherals in FPGA APB subsystem */ |
| #define I2C_TOUCH_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0x2000) |
| #define I2C_AUDIO_CONF_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0x3000) |
| #define FPGAIO_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0x8000) |
| #define I2C_SHIELD0_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0x9000) |
| #define I2C_SHIELD1_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0xa000) |
| |
| #endif /* _SOC_MEMORY_MAP_H_ */ |