1 /* 2 * Copyright (c) 2020-2021, Arm Limited. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 * 6 */ 7 8 #ifndef __REGION_H__ 9 #define __REGION_H__ 10 11 #include <stdint.h> 12 13 /* Macros to pick linker symbols */ 14 #define REGION(a, b, c) a##b##c 15 #define REGION_NAME(a, b, c) REGION(a, b, c) 16 #define REGION_DECLARE(a, b, c) extern uint32_t REGION_NAME(a, b, c) 17 #define REGION_DECLARE_T(a, b, c, t) extern t REGION_NAME(a, b, c) 18 19 #ifdef __ICCARM__ 20 /* 21 * ARMCLANG - IAR linker compatibility 22 */ 23 #define Image$$ 24 #define Load$$LR$$ 25 #define $$ZI$$Base $$Base 26 #define $$ZI$$Limit $$Limit 27 #define $$RO$$Base $$Base 28 #define $$RO$$Limit $$Limit 29 #define $$RW$$Base $$Base 30 #define $$RW$$Limit $$Limit 31 #define _DATA$$RW$$Base _DATA$$Base 32 #define _DATA$$RW$$Limit _DATA$$Limit 33 #define _DATA$$ZI$$Base _DATA$$Base 34 #define _DATA$$ZI$$Limit _DATA$$Limit 35 #define _STACK$$ZI$$Base _STACK$$Base 36 #define _STACK$$ZI$$Limit _STACK$$Limit 37 38 #endif /* __ICCARM__ */ 39 40 #endif /* __REGION_H__ */ 41