blob: 88a53b40740c06d53f9b72a6578ceffac2d611a2 [file] [log] [blame]
/* SPDX-License-Identifier: BSD-2-Clause */
/*
* Copyright (C) 2017, Fuzhou Rockchip Electronics Co., Ltd.
* Copyright (C) 2019, Theobroma Systems Design und Consulting GmbH
*/
#ifndef PLATFORM_CONFIG_H
#define PLATFORM_CONFIG_H
#include <mm/generic_ram_layout.h>
/* Make stacks aligned to data cache line length */
#define STACK_ALIGNMENT 64
#define SIZE_K(n) ((n) * 1024)
#define SIZE_M(n) ((n) * 1024 * 1024)
#if defined(PLATFORM_FLAVOR_rk322x)
#define GIC_BASE 0x32010000
#define GIC_SIZE SIZE_K(64)
#define GICD_BASE (GIC_BASE + 0x1000)
#define GICC_BASE (GIC_BASE + 0x2000)
#define SGRF_BASE 0x10140000
#define SGRF_SIZE SIZE_K(64)
#define DDRSGRF_BASE 0x10150000
#define DDRSGRF_SIZE SIZE_K(64)
#define GRF_BASE 0x11000000
#define GRF_SIZE SIZE_K(64)
#define UART2_BASE 0x11030000
#define UART2_SIZE SIZE_K(64)
#define CRU_BASE 0x110e0000
#define CRU_SIZE SIZE_K(64)
/* Internal SRAM */
#define ISRAM_BASE 0x10080000
#define ISRAM_SIZE SIZE_K(8)
#elif defined(PLATFORM_FLAVOR_rk3399)
#define MMIO_BASE 0xF8000000
#define GIC_BASE (MMIO_BASE + 0x06E00000)
#define GIC_SIZE SIZE_M(2)
#define GICD_BASE GIC_BASE
#define GICR_BASE (GIC_BASE + SIZE_M(1))
#define UART0_BASE (MMIO_BASE + 0x07180000)
#define UART0_SIZE SIZE_K(64)
#define UART1_BASE (MMIO_BASE + 0x07190000)
#define UART1_SIZE SIZE_K(64)
#define UART2_BASE (MMIO_BASE + 0x071A0000)
#define UART2_SIZE SIZE_K(64)
#define UART3_BASE (MMIO_BASE + 0x071B0000)
#define UART3_SIZE SIZE_K(64)
#define SGRF_BASE (MMIO_BASE + 0x07330000)
#define SGRF_SIZE SIZE_K(64)
#elif defined(PLATFORM_FLAVOR_px30)
#define GIC_BASE 0xff130000
#define GIC_SIZE SIZE_K(64)
#define GICD_BASE (GIC_BASE + 0x1000)
#define GICC_BASE (GIC_BASE + 0x2000)
#define UART1_BASE 0xff158000
#define UART1_SIZE SIZE_K(64)
#define UART2_BASE 0xff160000
#define UART2_SIZE SIZE_K(64)
#define UART5_BASE 0xff178000
#define UART5_SIZE SIZE_K(64)
#define FIREWALL_DDR_BASE 0xff534000
#define FIREWALL_DDR_SIZE SIZE_K(16)
#else
#error "Unknown platform flavor"
#endif
#ifdef CFG_WITH_LPAE
#define MAX_XLAT_TABLES 5
#endif
#endif