arm_fpga: Adjust GICR size in DT to match number of cores
The size of a GICv3 redistributor region depends on the number of
cores in the system. For the ARM FPGA port, we detect the topology at
runtime, and adjust the CPU DT nodes accordingly.
Now the size of the GICR region must also be adjusted, or Linux will
fail to initialise the GICv3.

Use the newly introduced function to overwrite the GICR size entry in
the GICv3 reg property. We count the number of existing cores by
iterating over the GICR frames until we find the LAST bit set in TYPER.

Change-Id: Ib69565600859de9b1b15ceb8495172cd26d16fce
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
1 parent 9f7bab4 commit 283e5595afa28a5930ac5f0dcdf7c18804221070
@Andre Przywara Andre Przywara authored on 24 Aug 2020
Showing 3 changed files
View
plat/arm/board/arm_fpga/fpga_bl31_setup.c
View
plat/arm/board/arm_fpga/fpga_gicv3.c
View
plat/arm/board/arm_fpga/fpga_private.h