[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250131171354.36fc5844@foz.lan>
Date: Fri, 31 Jan 2025 17:13:54 +0100
From: Mauro Carvalho Chehab <mchehab+huawei@...nel.org>
To: Igor Mammedov <imammedo@...hat.com>
Cc: "Michael S . Tsirkin" <mst@...hat.com>, Jonathan Cameron
<Jonathan.Cameron@...wei.com>, Shiju Jose <shiju.jose@...wei.com>,
qemu-arm@...gnu.org, qemu-devel@...gnu.org, Ani Sinha
<anisinha@...hat.com>, Dongjiu Geng <gengdongjiu1@...il.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 03/13] acpi/ghes: add a firmware file with HEST
address
Em Wed, 29 Jan 2025 16:23:28 +0100
Igor Mammedov <imammedo@...hat.com> escreveu:
> > +
> > + /*
> > + * Tell firmware to write into GPA the address of HEST via fw_cfg,
> > + * once initialized.
> > + */
> > + bios_linker_loader_write_pointer(linker,
> > + ACPI_HEST_ADDR_FW_CFG_FILE, 0,
> > + sizeof(uint64_t),
> > + ACPI_BUILD_TABLE_FILE, hest_offset);
>
> it's not safe to add this without compat logic, as it changes size of linker
> table and possibly layout.
>
> I'd suggest to partially combine this with use_hest_addr patch.
> One way to do it cleanly would be to move part introducing
> use_hest_addr here and set it to false to start with,
> and flip default to true one all hest_addr_le code in place.
> see related comment 6/13
Ok. It also means I need to temporarily get ags there, e. g.:
+ AcpiGedState *acpi_ged_state;
+ AcpiGhesState *ags = NULL;
+
+ acpi_ged_state = ACPI_GED(object_resolve_path_type("", TYPE_ACPI_GED,
+ NULL));
+ if (acpi_ged_state) {
+ ags = &acpi_ged_state->ghes_state;
+ }
...
+ if (ags->use_hest_addr) {
+ bios_linker_loader_write_pointer(linker,
+ ACPI_HEST_ADDR_FW_CFG_FILE, 0,
+ sizeof(uint64_t),
+ ACPI_BUILD_TABLE_FILE, hest_offset);
+ }
The part which gets ags will be dropped on this patch:
ad2dc8716d1f acpi/generic_event_device: add logic to detect if HEST addr is available
which will set use_hest_addr to false, until we have everything in
place.
Thanks,
Mauro
Powered by blists - more mailing lists