diff mbox series

[v2,11/20] hw/isa/lpc_ich9: Reuse memory and io address space of PCI bus

Message ID 20230131115326.12454-12-shentey@gmail.com (mailing list archive)
State New, archived
Headers show
Series PC and ICH9 cleanups | expand

Commit Message

Bernhard Beschow Jan. 31, 2023, 11:53 a.m. UTC
In pc_q35.c the PCI host bridge's io and memory space is initialized
with get_system_memory() and get_system_io() respectively. Therefore,
using pci_address_space() and pci_address_space_io() is equivalent. All
in all this makes the LPC function respect whatever memory spaces the
PCI bus was set up with.

Signed-off-by: Bernhard Beschow <shentey@gmail.com>
---
 hw/isa/lpc_ich9.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Bernhard Beschow Feb. 1, 2023, 12:02 a.m. UTC | #1
Am 31. Januar 2023 11:53:17 UTC schrieb Bernhard Beschow <shentey@gmail.com>:
>In pc_q35.c the PCI host bridge's io and memory space is initialized
>with get_system_memory() and get_system_io() respectively. Therefore,
>using pci_address_space() and pci_address_space_io() is equivalent.

Self-NACK: pci_address_space() != get_system_memory().

Please ignore this patch. This patch can be omitted from the series w/o any syntactic or semantic conflicts. I'll omit it in v3.

>All
>in all this makes the LPC function respect whatever memory spaces the
>PCI bus was set up with.
>
>Signed-off-by: Bernhard Beschow <shentey@gmail.com>
>---
> hw/isa/lpc_ich9.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
>diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c
>index 9ab966ef88..1b7e5585b3 100644
>--- a/hw/isa/lpc_ich9.c
>+++ b/hw/isa/lpc_ich9.c
>@@ -506,10 +506,10 @@ static void ich9_lpc_rcba_update(ICH9LPCState *lpc, uint32_t rcba_old)
>     uint32_t rcba = pci_get_long(lpc->d.config + ICH9_LPC_RCBA);
> 
>     if (rcba_old & ICH9_LPC_RCBA_EN) {
>-        memory_region_del_subregion(get_system_memory(), &lpc->rcrb_mem);
>+        memory_region_del_subregion(pci_address_space(&lpc->d), &lpc->rcrb_mem);
>     }
>     if (rcba & ICH9_LPC_RCBA_EN) {
>-        memory_region_add_subregion_overlap(get_system_memory(),
>+        memory_region_add_subregion_overlap(pci_address_space(&lpc->d),
>                                             rcba & ICH9_LPC_RCBA_BA_MASK,
>                                             &lpc->rcrb_mem, 1);
>     }
>@@ -695,7 +695,7 @@ static void ich9_lpc_realize(PCIDevice *d, Error **errp)
>         return;
>     }
> 
>-    isa_bus = isa_bus_new(DEVICE(d), get_system_memory(), get_system_io(),
>+    isa_bus = isa_bus_new(dev, pci_address_space(d), pci_address_space_io(d),
>                           errp);
>     if (!isa_bus) {
>         return;
diff mbox series

Patch

diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c
index 9ab966ef88..1b7e5585b3 100644
--- a/hw/isa/lpc_ich9.c
+++ b/hw/isa/lpc_ich9.c
@@ -506,10 +506,10 @@  static void ich9_lpc_rcba_update(ICH9LPCState *lpc, uint32_t rcba_old)
     uint32_t rcba = pci_get_long(lpc->d.config + ICH9_LPC_RCBA);
 
     if (rcba_old & ICH9_LPC_RCBA_EN) {
-        memory_region_del_subregion(get_system_memory(), &lpc->rcrb_mem);
+        memory_region_del_subregion(pci_address_space(&lpc->d), &lpc->rcrb_mem);
     }
     if (rcba & ICH9_LPC_RCBA_EN) {
-        memory_region_add_subregion_overlap(get_system_memory(),
+        memory_region_add_subregion_overlap(pci_address_space(&lpc->d),
                                             rcba & ICH9_LPC_RCBA_BA_MASK,
                                             &lpc->rcrb_mem, 1);
     }
@@ -695,7 +695,7 @@  static void ich9_lpc_realize(PCIDevice *d, Error **errp)
         return;
     }
 
-    isa_bus = isa_bus_new(DEVICE(d), get_system_memory(), get_system_io(),
+    isa_bus = isa_bus_new(dev, pci_address_space(d), pci_address_space_io(d),
                           errp);
     if (!isa_bus) {
         return;