qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH RFC 3/7] hw/acpi: fix a DSDT table issue when a


From: Marcel Apfelbaum
Subject: Re: [Qemu-devel] [PATCH RFC 3/7] hw/acpi: fix a DSDT table issue when a pxb is present.
Date: Tue, 21 Jun 2016 11:50:30 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0

On 06/17/2016 11:57 AM, Igor Mammedov wrote:
On Tue, 31 May 2016 20:48:34 +0300
Marcel Apfelbaum <address@hidden> wrote:

PXBs do not support hotplug so they don't have a PCNT function.
Since the PXB's PCI root-bus is a child bus of bus 0, the
build_dsdt code will add a call to the corresponding PCNT function.

Fix this by skipping the PCNT call for the above case.
While at it skip also PCIe child buses.
I'd really like to have PXB testcase bios-tables-test before this patch
so it would be easy to see what is being fixed.


Sure, I'll add the test.
Thanks,
Marcel


Signed-off-by: Marcel Apfelbaum <address@hidden>
---
  hw/i386/acpi-build.c | 4 ++++
  1 file changed, 4 insertions(+)

diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
index c6f4afe..0c329fb 100644
--- a/hw/i386/acpi-build.c
+++ b/hw/i386/acpi-build.c
@@ -589,6 +589,10 @@ static void build_append_pci_bus_devices(Aml 
*parent_scope, PCIBus *bus,
          QLIST_FOREACH(sec, &bus->child, sibling) {
              int32_t devfn = sec->parent_dev->devfn;

+            if (pci_bus_is_root(sec) || pci_bus_is_express(sec)) {
+                continue;
+            }
+
              aml_append(method, aml_name("^S%.02X.PCNT", devfn));
          }
      }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]