1/* 2 * Copyright (c) 2025, Arm Limited and Contributors. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7#ifndef _STMM_COMMON_DTSI 8#define _STMM_COMMON_DTSI 9 10#define ES_AARCH32 (1) 11#define ES_AARCH64 (0) 12 13#define TG_4KB (0x0) 14#define TG_16KB (0x1) 15#define TG_64KB (0x2) 16 17#define MODE_SEL0 (0x1) 18#define MODE_SEL1 (0x2) 19 20#define SECURE_RO (0x1) 21#define SECURE_RW (0x3) 22#define SECURE_EXECUTE_RO (0x5) 23#define SECURE_EXECUTE_RW (0x7) 24#define NON_SECURE_RO (0x9) 25#define NON_SECURE_RW (0xB) 26#define NON_SECURE_EXECUTE_RO (0xD) 27#define NON_SECURE_EXECUTE_RW (0xF) 28 29#define PAGE_SHIFT (12) 30#define PAGE_ALIGN(x) ((x) & ~(PAGE_SHIFT -1)) 31#define PAGE_ALIGN_UP(x) ((x + (PAGE_SHIFT - 1)) & ~(PAGE_SHIFT - 1)) 32#define PAGE_COUNT(size) (PAGE_ALIGN_UP(size) >> PAGE_SHIFT) 33 34#define ADDR_INIT(addr) \ 35 (PAGE_ALIGN(addr) >> 32) (PAGE_ALIGN(addr) & 0xffffffff) 36 37#define SIZE_INIT(size) \ 38 ((size) >> 32) ((size) & 0xffffffff) 39 40#define UUID_INIT(a, b, c, d0, d1, d2, d3, d4, d5, d6, d7) \ 41 ((((a) >> 24) & 0xff) | ((((a) >> 16) & 0xff) << 8) | \ 42 ((((a) >> 8) & 0xff) << 16) | (((a) & 0xff) << 24)) \ 43 ((((b) >> 8) & 0xff) | (((b) & 0xff) << 8) | \ 44 ((((c) >> 8) & 0xff) << 16) | (((c) & 0xff) << 24)) \ 45 (((d0) & 0xff) | (((d1) & 0xff) << 8) | \ 46 (((d2) & 0xff) << 16) | (((d3) & 0xff) << 24)) \ 47 (((d4) & 0xff) | (((d5) & 0xff) << 8) | \ 48 (((d6) & 0xff) << 16) | (((d7) & 0xff) << 24)) 49 50#endif /* _STMM_COMMON_DTSI */ 51 52