On Tue, 20 Sep 2022, Miguel Luis wrote:
> Per the ACPI 6.5 specification, on the GTDT Table Structure, the Counter
> Control
> Block Address and Counter Read Block Address fields of the GTDT table should
> be
> set to 0xFFFFFFFFFFFFFFFF if not provided, rather than 0x0.
>
> Fixes: 41041e57085 ("acpi: arm/virt: build_gtdt: use
> acpi_table_begin()/acpi_table_end() instead of build_header()")
>
> Signed-off-by: Miguel Luis <miguel.l...@oracle.com>
Reviewed-by: Ani Sinha <a...@anisinha.ca>
> ---
> hw/arm/virt-acpi-build.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c
> index 9b3aee01bf..13c6e3e468 100644
> --- a/hw/arm/virt-acpi-build.c
> +++ b/hw/arm/virt-acpi-build.c
> @@ -592,8 +592,7 @@ build_gtdt(GArray *table_data, BIOSLinker *linker,
> VirtMachineState *vms)
> acpi_table_begin(&table, table_data);
>
> /* CntControlBase Physical Address */
> - /* FIXME: invalid value, should be 0xFFFFFFFFFFFFFFFF if not impl. ? */
> - build_append_int_noprefix(table_data, 0, 8);
> + build_append_int_noprefix(table_data, 0xFFFFFFFFFFFFFFFF, 8);
> build_append_int_noprefix(table_data, 0, 4); /* Reserved */
> /*
> * FIXME: clarify comment:
> @@ -618,7 +617,7 @@ build_gtdt(GArray *table_data, BIOSLinker *linker,
> VirtMachineState *vms)
> /* Non-Secure EL2 timer Flags */
> build_append_int_noprefix(table_data, irqflags, 4);
> /* CntReadBase Physical address */
> - build_append_int_noprefix(table_data, 0, 8);
> + build_append_int_noprefix(table_data, 0xFFFFFFFFFFFFFFFF, 8);
> /* Platform Timer Count */
> build_append_int_noprefix(table_data, 0, 4);
> /* Platform Timer Offset */
> --
> 2.36.0
>
>