1 /* 2 * Copyright (c) 2023, Advanced Micro Devices, Inc. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 /* Header file to contain common macros across different platforms */ 8 #ifndef PLAT_COMMON_H 9 #define PLAT_COMMON_H 10 11 #define __bf_shf(x) (__builtin_ffsll(x) - 1U) 12 #define FIELD_GET(_mask, _reg) \ 13 ({ \ 14 (typeof(_mask))(((_reg) & (_mask)) >> __bf_shf(_mask)); \ 15 }) 16 17 /******************************************************************************* 18 * interrupt handling related constants 19 ******************************************************************************/ 20 #define ARM_IRQ_SEC_SGI_0 8U 21 #define ARM_IRQ_SEC_SGI_1 9U 22 #define ARM_IRQ_SEC_SGI_2 10U 23 #define ARM_IRQ_SEC_SGI_3 11U 24 #define ARM_IRQ_SEC_SGI_4 12U 25 #define ARM_IRQ_SEC_SGI_5 13U 26 #define ARM_IRQ_SEC_SGI_6 14U 27 #define ARM_IRQ_SEC_SGI_7 15U 28 29 #endif /* PLAT_COMMON_H */ 30