diff options
Diffstat (limited to 'drivers/arm/gic/v3/gicv3_private.h')
-rw-r--r-- | drivers/arm/gic/v3/gicv3_private.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/arm/gic/v3/gicv3_private.h b/drivers/arm/gic/v3/gicv3_private.h index c5d027da2..93ee1a18d 100644 --- a/drivers/arm/gic/v3/gicv3_private.h +++ b/drivers/arm/gic/v3/gicv3_private.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015-2020, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2015-2021, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -48,7 +48,8 @@ #define GICD_OFFSET_64(REG, id) \ (((id) <= MAX_SPI_ID) ? \ GICD_##REG##R + (((uintptr_t)(id) >> REG##R_SHIFT) << 3) : \ - GICD_##REG##RE + (((uintptr_t)(id) - MIN_ESPI_ID) << 3)) + GICD_##REG##RE + ((((uintptr_t)(id) - MIN_ESPI_ID) >> \ + REG##R_SHIFT) << 3)) #else /* GICv3 */ #define GICD_OFFSET_8(REG, id) \ @@ -232,6 +233,8 @@ void gicr_set_icfgr(uintptr_t base, unsigned int id, unsigned int cfg); /******************************************************************************* * Private GICv3 helper function prototypes ******************************************************************************/ +unsigned int gicv3_get_spi_limit(uintptr_t gicd_base); +unsigned int gicv3_get_espi_limit(uintptr_t gicd_base); void gicv3_spis_config_defaults(uintptr_t gicd_base); void gicv3_ppi_sgi_config_defaults(uintptr_t gicr_base); unsigned int gicv3_secure_ppi_sgi_config_props(uintptr_t gicr_base, |