[PATCH] arm: gic-v3-its: Fix LPI pending table size calculation

Quentin Schulz quentin.schulz at cherry.de
Wed Jun 24 19:04:26 CEST 2026


Hi Ye Li,

On 5/22/26 10:06 AM, Ye Li wrote:
> From: Lyrix liu <lyrix.liu at nxp.com>
> 
> The variable `pend_tab_total_sz` is calculated using the macro
> `LPI_PENDBASE_SZ`, which depends on the global variable `lpi_id_bits`.
> 
> However, `lpi_id_bits` is initialized later in the function based on
> the GICD_TYPER register. This results in `pend_tab_total_sz` being
> calculated with an uninitialized `lpi_id_bits` value (0), This leads
> to the LPI pending tables being mapped with an incorrect size.
> 
> Fixes: 60b9b47d295b ("Revert "arch: arm: use dt and UCLASS_SYSCON to get gic lpi details"")

I came to the same conclusion and this matches what was implemented in 
commit 6f6876a0c030 ("arm64: gic-v3-its: Clear the Pending table before 
enabling LPIs") before the commit you point at. From a "mechanical" 
point of view, which is the only thing I can do as I know nothing about 
GIC :), this makes sense so:

Acked-by: Quentin Schulz <quentin.schulz at cherry.de>

Cheers,
Quentin


More information about the U-Boot mailing list