[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south b
From: |
Ani Sinha |
Subject: |
Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges |
Date: |
Fri, 28 Oct 2022 22:18:43 +0530 |
On Fri, Oct 28, 2022 at 9:45 PM B <shentey@gmail.com> wrote:
>
>
>
> Am 28. Oktober 2022 10:58:07 UTC schrieb Ani Sinha <ani@anisinha.ca>:
> >On Fri, Oct 28, 2022 at 4:05 PM Bernhard Beschow <shentey@gmail.com> wrote:
> >>
> >> The code currently assumes Q35 iff ICH9 and i440fx iff PIIX. Now that more
> >> AML generation has been moved into the south bridges and since the
> >> machines define themselves primarily through their north bridges, let's
> >> switch to resolving the north bridges for AML generation instead. This
> >> also allows for easier experimentation with different south bridges in
> >> the "pc" machine, e.g. with PIIX4 and VT82xx.
> >
> >Unfortunately this patch does not apply on the latest master. Also the
> >code seems to be off. Can you rebase and rework the patch?
>
> I've rebased onto Igor's series to avoid merge conflicts,
Ok I will let Igor deal with this then since I have not followed his patchset.
> that's why it doesn't apply onto master. It applies fine there [1].
>
> The first two patches of this series apply fine on both branches, so could
> possibly be pulled already if Igor's series doesn't make it for 7.2.
>
> Best regards,
> Bernhard
>
> [1]
> https://github.com/patchew-project/qemu/commits/patchew/20221028103419.93398-1-shentey%40gmail.com
> >
> >>
> >> Signed-off-by: Bernhard Beschow <shentey@gmail.com>
> >> ---
> >> hw/i386/acpi-build.c | 11 ++++++-----
> >> 1 file changed, 6 insertions(+), 5 deletions(-)
> >>
> >> diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
> >> index 73d8a59737..d9eaa5fc4d 100644
> >> --- a/hw/i386/acpi-build.c
> >> +++ b/hw/i386/acpi-build.c
> >> @@ -60,6 +60,7 @@
> >> #include "hw/i386/fw_cfg.h"
> >> #include "hw/i386/ich9.h"
> >> #include "hw/pci/pci_bus.h"
> >> +#include "hw/pci-host/i440fx.h"
> >> #include "hw/pci-host/q35.h"
> >> #include "hw/i386/x86-iommu.h"
> >>
> >> @@ -1322,8 +1323,8 @@ build_dsdt(GArray *table_data, BIOSLinker *linker,
> >> AcpiPmInfo *pm, AcpiMiscInfo *misc,
> >> Range *pci_hole, Range *pci_hole64, MachineState *machine)
> >> {
> >> - Object *piix = object_resolve_type_unambiguous(TYPE_PIIX4_PM);
> >> - Object *lpc = object_resolve_type_unambiguous(TYPE_ICH9_LPC_DEVICE);
> >> + Object *i440fx =
> >> object_resolve_type_unambiguous(TYPE_I440FX_PCI_HOST_BRIDGE);
> >> + Object *q35 = object_resolve_type_unambiguous(TYPE_Q35_HOST_DEVICE);
> >> CrsRangeEntry *entry;
> >> Aml *dsdt, *sb_scope, *scope, *dev, *method, *field, *pkg, *crs;
> >> CrsRangeSet crs_range_set;
> >> @@ -1344,13 +1345,13 @@ build_dsdt(GArray *table_data, BIOSLinker *linker,
> >> AcpiTable table = { .sig = "DSDT", .rev = 1, .oem_id = x86ms->oem_id,
> >> .oem_table_id = x86ms->oem_table_id };
> >>
> >> - assert(!!piix != !!lpc);
> >> + assert(!!i440fx != !!q35);
> >>
> >> acpi_table_begin(&table, table_data);
> >> dsdt = init_aml_allocator();
> >>
> >> build_dbg_aml(dsdt);
> >> - if (piix) {
> >> + if (i440fx) {
> >> sb_scope = aml_scope("_SB");
> >> dev = aml_device("PCI0");
> >> aml_append(dev, aml_name_decl("_HID", aml_eisaid("PNP0A03")));
> >> @@ -1363,7 +1364,7 @@ build_dsdt(GArray *table_data, BIOSLinker *linker,
> >> build_x86_acpi_pci_hotplug(dsdt, pm->pcihp_io_base);
> >> }
> >> build_piix4_pci0_int(dsdt);
> >> - } else if (lpc) {
> >> + } else if (q35) {
> >> sb_scope = aml_scope("_SB");
> >> dev = aml_device("PCI0");
> >> aml_append(dev, aml_name_decl("_HID", aml_eisaid("PNP0A08")));
> >> --
> >> 2.38.1
> >>
- [PATCH v2 0/3] hw/i386: Cleanup AML generation for north and south bridges, Bernhard Beschow, 2022/10/28
- [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges, Bernhard Beschow, 2022/10/28
- Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges, Ani Sinha, 2022/10/28
- Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges, B, 2022/10/28
- Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges,
Ani Sinha <=
- Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges, Michael S. Tsirkin, 2022/10/29
- Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges, Ani Sinha, 2022/10/30
- Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges, Michael S. Tsirkin, 2022/10/30
- Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges, Ani Sinha, 2022/10/30
- Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges, Michael S. Tsirkin, 2022/10/30
Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges, Ani Sinha, 2022/10/30
Re: [PATCH v2 3/3] hw/i386/acpi-build: Resolve north rather than south bridges, Igor Mammedov, 2022/10/31
[PATCH v2 1/3] hw/i386/acpi-build: Remove unused struct, Bernhard Beschow, 2022/10/28
[PATCH v2 2/3] hw/i386/acpi-build: Resolve redundant attribute, Bernhard Beschow, 2022/10/28