1d8e919c7SMasahiro Yamada /* 2*247fc043SMasahiro 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*247fc043SMasahiro Yamada #define UNIPHIER_SEC_DRAM_BASE 0x80000000 31d8e919c7SMasahiro Yamada #define UNIPHIER_SEC_DRAM_LIMIT 0x82000000 32d8e919c7SMasahiro Yamada #define UNIPHIER_SEC_DRAM_SIZE ((UNIPHIER_SEC_DRAM_LIMIT) - \ 33d8e919c7SMasahiro Yamada (UNIPHIER_SEC_DRAM_BASE)) 34d8e919c7SMasahiro Yamada 35*247fc043SMasahiro Yamada #define BL2_BASE (UNIPHIER_SEC_DRAM_BASE) 36*247fc043SMasahiro Yamada #define BL2_LIMIT ((BL2_BASE) + 0x00020000) 37d8e919c7SMasahiro Yamada 38*247fc043SMasahiro Yamada #define BL31_BASE (BL2_LIMIT) 39d8e919c7SMasahiro Yamada #define BL31_LIMIT ((BL31_BASE) + 0x00080000) 40d8e919c7SMasahiro Yamada 41d8e919c7SMasahiro Yamada #define BL32_BASE (BL31_LIMIT) 42d8e919c7SMasahiro Yamada #define BL32_LIMIT (UNIPHIER_SEC_DRAM_LIMIT) 43d8e919c7SMasahiro Yamada 44d8e919c7SMasahiro Yamada #define PLAT_PHY_ADDR_SPACE_SIZE (1ULL << 32) 45d8e919c7SMasahiro Yamada #define PLAT_VIRT_ADDR_SPACE_SIZE (1ULL << 32) 46d8e919c7SMasahiro Yamada 47d8e919c7SMasahiro Yamada #define PLAT_XLAT_TABLES_DYNAMIC 1 48d8e919c7SMasahiro Yamada #define MAX_XLAT_TABLES 7 49d8e919c7SMasahiro Yamada #define MAX_MMAP_REGIONS 6 50d8e919c7SMasahiro Yamada 51d8e919c7SMasahiro Yamada #define MAX_IO_HANDLES 2 52d8e919c7SMasahiro Yamada #define MAX_IO_DEVICES 2 53d8e919c7SMasahiro Yamada #define MAX_IO_BLOCK_DEVICES 1 54d8e919c7SMasahiro Yamada 5563b3a28eSMasahiro Yamada #define TSP_SEC_MEM_BASE (BL32_BASE) 5663b3a28eSMasahiro Yamada #define TSP_SEC_MEM_SIZE ((BL32_LIMIT) - (BL32_BASE)) 5763b3a28eSMasahiro Yamada #define TSP_IRQ_SEC_PHY_TIMER 29 5863b3a28eSMasahiro Yamada 59d8e919c7SMasahiro Yamada #endif /* __PLATFORM_DEF_H__ */ 60