^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * Copyright (C) 2020 ARM Ltd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) #ifndef __ASM_MTE_DEF_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) #define __ASM_MTE_DEF_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) #define MTE_GRANULE_SIZE UL(16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #define MTE_GRANULE_MASK (~(MTE_GRANULE_SIZE - 1))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #define MTE_TAG_SHIFT 56
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #define MTE_TAG_SIZE 4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) #define MTE_TAG_MASK GENMASK((MTE_TAG_SHIFT + (MTE_TAG_SIZE - 1)), MTE_TAG_SHIFT)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) #define __MTE_PREAMBLE ARM64_ASM_PREAMBLE ".arch_extension memtag\n"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) #endif /* __ASM_MTE_DEF_H */