[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 05/11] hw/pci-host/raven: Add PCI_IO_BASE_ADDR definition
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH v2 05/11] hw/pci-host/raven: Add PCI_IO_BASE_ADDR definition |
Date: |
Sat, 17 Apr 2021 12:30:22 +0200 |
Rather than using the magic 0x80000000 number for the PCI I/O BAR
physical address on the main system bus, use a definition.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
hw/pci-host/raven.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/hw/pci-host/raven.c b/hw/pci-host/raven.c
index 0a9162fba97..730f31a8931 100644
--- a/hw/pci-host/raven.c
+++ b/hw/pci-host/raven.c
@@ -82,6 +82,8 @@ struct PRePPCIState {
#define BIOS_SIZE (1 * MiB)
+#define PCI_IO_BASE_ADDR 0x80000000 /* Physical address on main bus */
+
static inline uint32_t raven_pci_io_config(hwaddr addr)
{
int i;
@@ -159,7 +161,7 @@ static uint64_t raven_io_read(void *opaque, hwaddr addr,
uint8_t buf[4];
addr = raven_io_address(s, addr);
- address_space_read(&s->pci_io_as, addr + 0x80000000,
+ address_space_read(&s->pci_io_as, addr + PCI_IO_BASE_ADDR,
MEMTXATTRS_UNSPECIFIED, buf, size);
if (size == 1) {
@@ -191,7 +193,7 @@ static void raven_io_write(void *opaque, hwaddr addr,
g_assert_not_reached();
}
- address_space_write(&s->pci_io_as, addr + 0x80000000,
+ address_space_write(&s->pci_io_as, addr + PCI_IO_BASE_ADDR,
MEMTXATTRS_UNSPECIFIED, buf, size);
}
@@ -294,8 +296,9 @@ static void raven_pcihost_initfn(Object *obj)
address_space_init(&s->pci_io_as, &s->pci_io, "raven-io");
/* CPU address space */
- memory_region_add_subregion(address_space_mem, 0x80000000, &s->pci_io);
- memory_region_add_subregion_overlap(address_space_mem, 0x80000000,
+ memory_region_add_subregion(address_space_mem, PCI_IO_BASE_ADDR,
+ &s->pci_io);
+ memory_region_add_subregion_overlap(address_space_mem, PCI_IO_BASE_ADDR,
&s->pci_io_non_contiguous, 1);
memory_region_add_subregion(address_space_mem, 0xc0000000, &s->pci_memory);
pci_root_bus_new_inplace(&s->pci_bus, sizeof(s->pci_bus), DEVICE(obj),
NULL,
--
2.26.3
- [PATCH v2 00/11] memory: Forbid mapping AddressSpace root MemoryRegion, Philippe Mathieu-Daudé, 2021/04/17
- [PATCH v2 02/11] hw/aspeed/smc: Use the RAM memory region for DMAs, Philippe Mathieu-Daudé, 2021/04/17
- [PATCH v2 03/11] hw/arm/aspeed: Do not sysbus-map mmio flash region directly, use alias, Philippe Mathieu-Daudé, 2021/04/17
- [PATCH v2 04/11] hw/pci-host: Rename Raven ASIC PCI bridge as raven.c, Philippe Mathieu-Daudé, 2021/04/17
- [PATCH v2 05/11] hw/pci-host/raven: Add PCI_IO_BASE_ADDR definition,
Philippe Mathieu-Daudé <=
- [PATCH v2 06/11] hw/pci-host/raven: Assert PCI I/O AddressSpace is based at 0x80000000, Philippe Mathieu-Daudé, 2021/04/17
- [PATCH v2 07/11] hw/pci-host/raven: Use MR alias for AS root, not sysbus mapped MR, Philippe Mathieu-Daudé, 2021/04/17
- [RFC PATCH v2 08/11] hw/pci-host/raven: Remove pointless alias mapping onto system bus, Philippe Mathieu-Daudé, 2021/04/17
- [PATCH v2 09/11] hw/pci-host/prep: Do not directly map bus-master region onto main bus, Philippe Mathieu-Daudé, 2021/04/17
- [PATCH v2 10/11] memory: Make sure root MR won't be added as subregion, Philippe Mathieu-Daudé, 2021/04/17
- [PATCH v2 11/11] hw/pci-host/raven: Remove temporary assertion 'root MR is zero-based', Philippe Mathieu-Daudé, 2021/04/17
- Re: [PATCH v2 00/11] memory: Forbid mapping AddressSpace root MemoryRegion, Cédric Le Goater, 2021/04/19