Cc'ing IPMI maintainer.
On 4/29/20 4:00 PM, Gerd Hoffmann wrote:
> x86 machines can have a single ISA bus only.
I disagree with the comment.
Machines can have multiple ISA bus.
However the PCI IO space can have a single ISA bus.
This patch is about PCI0.
>
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
> hw/i386/acpi-build.c | 15 +++++----------
> 1 file changed, 5 insertions(+), 10 deletions(-)
>
> diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
> index a8b790021974..98b3fd1cdb14 100644
> --- a/hw/i386/acpi-build.c
> +++ b/hw/i386/acpi-build.c
> @@ -1055,19 +1055,14 @@ static void build_hpet_aml(Aml *table)
> static void build_isa_devices_aml(Aml *table)
> {
> bool ambiguous;
> -
> - Aml *scope = aml_scope("_SB.PCI0.ISA");
> Object *obj = object_resolve_path_type("", TYPE_ISA_BUS, &ambiguous);
> + Aml *scope;
>
> - if (ambiguous) {
> - error_report("Multiple ISA busses, unable to define IPMI ACPI data");
> - } else if (!obj) {
> - error_report("No ISA bus, unable to define IPMI ACPI data");
> - } else {
> - build_acpi_ipmi_devices(scope, BUS(obj), "\\_SB.PCI0.ISA");
> - isa_build_aml(ISA_BUS(obj), scope);
> - }
> + assert(obj && !ambiguous);
>
> + scope = aml_scope("_SB.PCI0.ISA");
> + build_acpi_ipmi_devices(scope, BUS(obj), "\\_SB.PCI0.ISA");
> + isa_build_aml(ISA_BUS(obj), scope);
> aml_append(table, scope);
> }
>
>