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 71083b2b3SAntonio Nino Diaz #ifndef PLATFORM_DEF_H 81083b2b3SAntonio Nino Diaz #define PLATFORM_DEF_H 9d8e919c7SMasahiro Yamada 10d8e919c7SMasahiro Yamada #include <common_def.h> 11d8e919c7SMasahiro Yamada #include <tbbr/tbbr_img_def.h> 124f557c77SMasahiro Yamada #include <utils_def.h> 13d8e919c7SMasahiro Yamada 14d8e919c7SMasahiro Yamada #define PLATFORM_STACK_SIZE 0x1000 15d8e919c7SMasahiro Yamada 16d8e919c7SMasahiro Yamada #define CACHE_WRITEBACK_SHIFT 6 17d8e919c7SMasahiro Yamada #define CACHE_WRITEBACK_GRANULE (1 << (CACHE_WRITEBACK_SHIFT)) 18d8e919c7SMasahiro Yamada 19d8e919c7SMasahiro Yamada /* topology */ 20d8e919c7SMasahiro Yamada #define UNIPHIER_MAX_CPUS_PER_CLUSTER 4 21d8e919c7SMasahiro Yamada #define UNIPHIER_CLUSTER_COUNT 2 22d8e919c7SMasahiro Yamada 23d8e919c7SMasahiro Yamada #define PLATFORM_CORE_COUNT \ 24d8e919c7SMasahiro Yamada ((UNIPHIER_MAX_CPUS_PER_CLUSTER) * (UNIPHIER_CLUSTER_COUNT)) 25d8e919c7SMasahiro Yamada 261083b2b3SAntonio Nino Diaz #define PLAT_MAX_PWR_LVL U(1) 27d8e919c7SMasahiro Yamada 281083b2b3SAntonio Nino Diaz #define PLAT_MAX_OFF_STATE U(2) 291083b2b3SAntonio Nino Diaz #define PLAT_MAX_RET_STATE U(1) 30d8e919c7SMasahiro Yamada 314f557c77SMasahiro Yamada #define BL2_BASE ULL(0x80000000) 324f557c77SMasahiro Yamada #define BL2_LIMIT ULL(0x80080000) 337e51ca8dSMasahiro Yamada 347e51ca8dSMasahiro Yamada /* 0x80080000-0x81000000: reserved for DSP */ 357e51ca8dSMasahiro Yamada 364f557c77SMasahiro Yamada #define UNIPHIER_SEC_DRAM_BASE 0x81000000ULL 374f557c77SMasahiro Yamada #define UNIPHIER_SEC_DRAM_LIMIT 0x82000000ULL 38d8e919c7SMasahiro Yamada #define UNIPHIER_SEC_DRAM_SIZE ((UNIPHIER_SEC_DRAM_LIMIT) - \ 39d8e919c7SMasahiro Yamada (UNIPHIER_SEC_DRAM_BASE)) 40d8e919c7SMasahiro Yamada 414f557c77SMasahiro Yamada #define BL31_BASE ULL(0x81000000) 424f557c77SMasahiro Yamada #define BL31_LIMIT ULL(0x81080000) 43d8e919c7SMasahiro Yamada 444f557c77SMasahiro Yamada #define BL32_BASE ULL(0x81080000) 454f557c77SMasahiro Yamada #define BL32_LIMIT ULL(0x81180000) 46d8e919c7SMasahiro Yamada 47d8e919c7SMasahiro Yamada #define PLAT_PHY_ADDR_SPACE_SIZE (1ULL << 32) 48d8e919c7SMasahiro Yamada #define PLAT_VIRT_ADDR_SPACE_SIZE (1ULL << 32) 49d8e919c7SMasahiro Yamada 50d8e919c7SMasahiro Yamada #define PLAT_XLAT_TABLES_DYNAMIC 1 51d8e919c7SMasahiro Yamada #define MAX_XLAT_TABLES 7 527e51ca8dSMasahiro Yamada #define MAX_MMAP_REGIONS 7 53d8e919c7SMasahiro Yamada 54d8e919c7SMasahiro Yamada #define MAX_IO_HANDLES 2 55d8e919c7SMasahiro Yamada #define MAX_IO_DEVICES 2 56*b7c6529cSYann Gautier #define MAX_IO_BLOCK_DEVICES U(1) 57d8e919c7SMasahiro Yamada 5863b3a28eSMasahiro Yamada #define TSP_SEC_MEM_BASE (BL32_BASE) 5963b3a28eSMasahiro Yamada #define TSP_SEC_MEM_SIZE ((BL32_LIMIT) - (BL32_BASE)) 6063b3a28eSMasahiro Yamada #define TSP_IRQ_SEC_PHY_TIMER 29 6163b3a28eSMasahiro Yamada 621083b2b3SAntonio Nino Diaz #endif /* PLATFORM_DEF_H */ 63