acpi_gic: Add helper for platform gicc

Add helper function to allow platform to fill gicc parameters for use in
ACPI table.

Change-Id: Ibd4c52a5482707fae8aa1b8b21fdc6bb5f4b45c2
Signed-off-by: Naresh Solanki <naresh.solanki@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/79973
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Naresh Solanki 2023-12-19 01:47:44 +05:30 committed by Lean Sheng Tan
commit 5610ca3aaa
2 changed files with 7 additions and 0 deletions

View file

@ -3,6 +3,10 @@
#include <acpi/acpi.h>
#include <device/device.h>
__weak void platform_fill_gicc(acpi_madt_gicc_t *gicc)
{
}
static int acpi_create_madt_one_gicc_v3(acpi_madt_gicc_t *gicc, u32 acpi_uid, u32 pi_gsiv,
uint32_t vgic_mi, uint64_t mpidr)
{
@ -30,6 +34,8 @@ static int acpi_create_madt_one_gicc_v3(acpi_madt_gicc_t *gicc, u32 acpi_uid, u3
*/
gicc->mpidr = mpidr & 0xff00fffffful;
platform_fill_gicc(gicc);
return gicc->length;
}

View file

@ -1780,6 +1780,7 @@ unsigned long acpi_create_madt_one_lapic(unsigned long current, u32 cpu, u32 api
unsigned long acpi_create_madt_lapic_nmis(unsigned long current);
void platform_fill_gicc(acpi_madt_gicc_t *gicc);
uintptr_t platform_get_gicd_base(void);
uintptr_t platform_get_gicr_base(void);
int platform_get_gic_its(uintptr_t **base);