1d8e919c7SMasahiro Yamada /* 2247fc043SMasahiro Yamada * Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved. 3d8e919c7SMasahiro Yamada * 4d8e919c7SMasahiro Yamada * SPDX-License-Identifier: BSD-3-Clause 5d8e919c7SMasahiro Yamada */ 6d8e919c7SMasahiro Yamada 7d8e919c7SMasahiro Yamada #ifndef __PLATFORM_DEF_H__ 8d8e919c7SMasahiro Yamada #define __PLATFORM_DEF_H__ 9d8e919c7SMasahiro Yamada 10d8e919c7SMasahiro Yamada #include <common_def.h> 11d8e919c7SMasahiro Yamada #include <tbbr/tbbr_img_def.h> 12d8e919c7SMasahiro Yamada 13d8e919c7SMasahiro Yamada #define PLATFORM_STACK_SIZE 0x1000 14d8e919c7SMasahiro Yamada 15d8e919c7SMasahiro Yamada #define CACHE_WRITEBACK_SHIFT 6 16d8e919c7SMasahiro Yamada #define CACHE_WRITEBACK_GRANULE (1 << (CACHE_WRITEBACK_SHIFT)) 17d8e919c7SMasahiro Yamada 18d8e919c7SMasahiro Yamada /* topology */ 19d8e919c7SMasahiro Yamada #define UNIPHIER_MAX_CPUS_PER_CLUSTER 4 20d8e919c7SMasahiro Yamada #define UNIPHIER_CLUSTER_COUNT 2 21d8e919c7SMasahiro Yamada 22d8e919c7SMasahiro Yamada #define PLATFORM_CORE_COUNT \ 23d8e919c7SMasahiro Yamada ((UNIPHIER_MAX_CPUS_PER_CLUSTER) * (UNIPHIER_CLUSTER_COUNT)) 24d8e919c7SMasahiro Yamada 25d8e919c7SMasahiro Yamada #define PLAT_MAX_PWR_LVL 1 26d8e919c7SMasahiro Yamada 27d8e919c7SMasahiro Yamada #define PLAT_MAX_OFF_STATE 2 28d8e919c7SMasahiro Yamada #define PLAT_MAX_RET_STATE 1 29d8e919c7SMasahiro Yamada 30*7e51ca8dSMasahiro Yamada #define BL2_BASE 0x80000000 31*7e51ca8dSMasahiro Yamada #define BL2_LIMIT 0x80080000 32*7e51ca8dSMasahiro Yamada 33*7e51ca8dSMasahiro Yamada /* 0x80080000-0x81000000: reserved for DSP */ 34*7e51ca8dSMasahiro Yamada 35*7e51ca8dSMasahiro Yamada #define UNIPHIER_SEC_DRAM_BASE 0x81000000 36d8e919c7SMasahiro Yamada #define UNIPHIER_SEC_DRAM_LIMIT 0x82000000 37d8e919c7SMasahiro Yamada #define UNIPHIER_SEC_DRAM_SIZE ((UNIPHIER_SEC_DRAM_LIMIT) - \ 38d8e919c7SMasahiro Yamada (UNIPHIER_SEC_DRAM_BASE)) 39d8e919c7SMasahiro Yamada 40*7e51ca8dSMasahiro Yamada #define BL31_BASE 0x81000000 41*7e51ca8dSMasahiro Yamada #define BL31_LIMIT 0x81080000 42d8e919c7SMasahiro Yamada 43*7e51ca8dSMasahiro Yamada #define BL32_BASE 0x81080000 44*7e51ca8dSMasahiro Yamada #define BL32_LIMIT 0x81180000 45d8e919c7SMasahiro Yamada 46d8e919c7SMasahiro Yamada #define PLAT_PHY_ADDR_SPACE_SIZE (1ULL << 32) 47d8e919c7SMasahiro Yamada #define PLAT_VIRT_ADDR_SPACE_SIZE (1ULL << 32) 48d8e919c7SMasahiro Yamada 49d8e919c7SMasahiro Yamada #define PLAT_XLAT_TABLES_DYNAMIC 1 50d8e919c7SMasahiro Yamada #define MAX_XLAT_TABLES 7 51*7e51ca8dSMasahiro Yamada #define MAX_MMAP_REGIONS 7 52d8e919c7SMasahiro Yamada 53d8e919c7SMasahiro Yamada #define MAX_IO_HANDLES 2 54d8e919c7SMasahiro Yamada #define MAX_IO_DEVICES 2 55d8e919c7SMasahiro Yamada #define MAX_IO_BLOCK_DEVICES 1 56d8e919c7SMasahiro Yamada 5763b3a28eSMasahiro Yamada #define TSP_SEC_MEM_BASE (BL32_BASE) 5863b3a28eSMasahiro Yamada #define TSP_SEC_MEM_SIZE ((BL32_LIMIT) - (BL32_BASE)) 5963b3a28eSMasahiro Yamada #define TSP_IRQ_SEC_PHY_TIMER 29 6063b3a28eSMasahiro Yamada 61d8e919c7SMasahiro Yamada #endif /* __PLATFORM_DEF_H__ */ 62