Line data Source code
1 1 : /* 2 : * Copyright (c) 2021 BayLibre SAS 3 : * 4 : * SPDX-License-Identifier: Apache-2.0 5 : */ 6 : 7 : /** 8 : * @file 9 : * @brief tpidrro_el0 bits allocation 10 : * 11 : * Among other things, the tpidrro_el0 holds the address for the current 12 : * CPU's struct _cpu instance. But such a pointer is at least 8-bytes 13 : * aligned, and the address space is 48 bits max. That leaves plenty of 14 : * free bits for other purposes. 15 : */ 16 : 17 : #ifndef ZEPHYR_INCLUDE_ARCH_ARM64_TPIDRRO_EL0_H_ 18 : #define ZEPHYR_INCLUDE_ARCH_ARM64_TPIDRRO_EL0_H_ 19 : 20 0 : #define TPIDRROEL0_IN_EL0 0x0000000000000001 21 : 22 0 : #define TPIDRROEL0_CURR_CPU 0x0000fffffffffff8 23 : 24 0 : #define TPIDRROEL0_EXC_DEPTH 0xff00000000000000 25 0 : #define TPIDRROEL0_EXC_UNIT 0x0100000000000000 26 0 : #define TPIDRROEL0_EXC_SHIFT 56 27 : 28 : #endif /* ZEPHYR_INCLUDE_ARCH_ARM64_TPIDRRO_EL0_H_ */