From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34719) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ujq8A-0007o3-4v for qemu-devel@nongnu.org; Tue, 04 Jun 2013 08:14:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ujq88-0002Uy-2D for qemu-devel@nongnu.org; Tue, 04 Jun 2013 08:14:26 -0400 Received: from mail-bk0-x22a.google.com ([2a00:1450:4008:c01::22a]:44328) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ujq87-0002UB-RM for qemu-devel@nongnu.org; Tue, 04 Jun 2013 08:14:23 -0400 Received: by mail-bk0-f42.google.com with SMTP id jk13so90592bkc.29 for ; Tue, 04 Jun 2013 05:14:23 -0700 (PDT) Sender: Paolo Bonzini From: Paolo Bonzini Date: Tue, 4 Jun 2013 14:13:52 +0200 Message-Id: <1370348041-6768-9-git-send-email-pbonzini@redhat.com> In-Reply-To: <1370348041-6768-1-git-send-email-pbonzini@redhat.com> References: <1370348041-6768-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH v2 08/17] acpi: add memory_region_set_owner calls List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: peter.maydell@linaro.org ACPI regions are added directly to the I/O address space, without going through BARs. Thus they need the owner to be set directly. Signed-off-by: Paolo Bonzini --- hw/acpi/ich9.c | 1 + hw/acpi/piix4.c | 5 +++++ hw/isa/apm.c | 1 + 3 files changed, 7 insertions(+) diff --git a/hw/acpi/ich9.c b/hw/acpi/ich9.c index 4a17f32..0b19864 100644 --- a/hw/acpi/ich9.c +++ b/hw/acpi/ich9.c @@ -223,6 +223,7 @@ void ich9_pm_init(PCIDevice *lpc_pci, ICH9LPCPMRegs *pm, 8); memory_region_add_subregion(&pm->io, ICH9_PMIO_SMI_EN, &pm->io_smi); + memory_region_set_owner(&pm->io, OBJECT(lpc_pci)); pm->irq = sci_irq; qemu_register_reset(pm_reset, pm); pm->powerdown_notifier.notify = pm_powerdown_req; diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c index c4af1cc..d097592 100644 --- a/hw/acpi/piix4.c +++ b/hw/acpi/piix4.c @@ -433,6 +433,8 @@ static int piix4_pm_initfn(PCIDevice *dev) acpi_pm1_cnt_init(&s->ar, &s->io, s->s4_val); acpi_gpe_init(&s->ar, GPE_LEN); + memory_region_set_owner(&s->io, OBJECT(s)); + s->powerdown_notifier.notify = piix4_pm_powerdown_req; qemu_register_powerdown_notifier(&s->powerdown_notifier); @@ -672,10 +674,12 @@ static void piix4_acpi_system_hot_add_init(MemoryRegion *parent, { memory_region_init_io(&s->io_gpe, &piix4_gpe_ops, s, "apci-gpe0", GPE_LEN); + memory_region_set_owner(&s->io_gpe, OBJECT(s)); memory_region_add_subregion(parent, GPE_BASE, &s->io_gpe); memory_region_init_io(&s->io_pci, &piix4_pci_ops, s, "apci-pci-hotplug", PCI_HOTPLUG_SIZE); + memory_region_set_owner(&s->io_pci, OBJECT(s)); memory_region_add_subregion(parent, PCI_HOTPLUG_ADDR, &s->io_pci); pci_bus_hotplug(bus, piix4_device_hotplug, &s->dev.qdev); @@ -683,6 +687,7 @@ static void piix4_acpi_system_hot_add_init(MemoryRegion *parent, qemu_for_each_cpu(piix4_init_cpu_status, &s->gpe_cpu); memory_region_init_io(&s->io_cpu, &cpu_hotplug_ops, s, "apci-cpu-hotplug", PIIX4_PROC_LEN); + memory_region_set_owner(&s->io_cpu, OBJECT(s)); memory_region_add_subregion(parent, PIIX4_PROC_BASE, &s->io_cpu); s->cpu_added_notifier.notify = piix4_cpu_added_req; qemu_register_cpu_added_notifier(&s->cpu_added_notifier); diff --git a/hw/isa/apm.c b/hw/isa/apm.c index 5f21d21..376c564 100644 --- a/hw/isa/apm.c +++ b/hw/isa/apm.c @@ -97,6 +97,7 @@ void apm_init(PCIDevice *dev, APMState *apm, apm_ctrl_changed_t callback, /* ioport 0xb2, 0xb3 */ memory_region_init_io(&apm->io, &apm_ops, apm, "apm-io", 2); + memory_region_set_owner(&apm->io, OBJECT(dev)); memory_region_add_subregion(pci_address_space_io(dev), APM_CNT_IOPORT, &apm->io); } -- 1.8.1.4