1/* 2 * Copyright (c) 2018-2022 Arm Limited 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17#ifndef __REGION_LIMITS_H__ 18#define __REGION_LIMITS_H__ 19 20/* ************************************************************** 21 * WARNING: this file is parsed both by the C/C++ compiler 22 * and the linker. As a result the syntax must be valid not only 23 * for C/C++ but for the linker scripts too. 24 * Beware of the following limitations: 25 * - LD (GCC linker) requires white space around operators. 26 * - UL postfix for macros is not suported by the linker script 27 ****************************************************************/ 28 29/* Secure Code */ 30#define S_ROM_ALIAS (0x10000000) /* ITCM_BASE_S */ 31#define TOTAL_S_ROM_SIZE (0x00080000) /* 512 kB */ 32 33/* Secure Data */ 34#define S_RAM_ALIAS (0x30000000) /* DTCM_BASE_S */ 35#define TOTAL_S_RAM_SIZE (0x00080000) /* 512 kB */ 36 37/* Secure DDR4 */ 38#define S_DDR4_ALIAS (0x70000000) /* DDR4_BLK1_BASE_S */ 39#define TOTAL_S_DDR4_SIZE (0x10000000) /* 256 MB */ 40 41/* Heap and Stack sizes for secure and nonsecure applications */ 42#define HEAP_SIZE (0x00000400) /* 1 KiB */ 43#define STACK_SIZE (0x00000400) /* 1 KiB */ 44 45#endif /* __REGION_LIMITS_H__ */ 46