[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC v5 58/86] pci: remove pci_register_bar()
From: |
Avi Kivity |
Subject: |
[Qemu-devel] [RFC v5 58/86] pci: remove pci_register_bar() |
Date: |
Wed, 20 Jul 2011 19:50:08 +0300 |
Superceded by pci_register_bar_region(). The implementations
are folded together.
Signed-off-by: Avi Kivity <address@hidden>
---
hw/pci.c | 42 +++++++++++++++++-------------------------
hw/pci.h | 3 ---
2 files changed, 17 insertions(+), 28 deletions(-)
diff --git a/hw/pci.c b/hw/pci.c
index 481eb7e..e9e4874 100644
--- a/hw/pci.c
+++ b/hw/pci.c
@@ -881,13 +881,25 @@ static int pci_unregister_device(DeviceState *dev)
return 0;
}
-void pci_register_bar(PCIDevice *pci_dev, int region_num,
- pcibus_t size, uint8_t type,
- PCIMapIORegionFunc *map_func)
+static void pci_simple_bar_mapfunc_region(PCIDevice *pci_dev, int region_num,
+ pcibus_t addr, pcibus_t size,
+ int type)
+{
+ PCIIORegion *r = &pci_dev->io_regions[region_num];
+
+ memory_region_add_subregion_overlap(r->address_space,
+ addr,
+ r->memory,
+ 1);
+}
+
+void pci_register_bar_region(PCIDevice *pci_dev, int region_num,
+ uint8_t type, MemoryRegion *memory)
{
PCIIORegion *r;
uint32_t addr;
uint64_t wmask;
+ pcibus_t size = memory_region_size(memory);
assert(region_num >= 0);
assert(region_num < PCI_NUM_REGIONS);
@@ -902,7 +914,7 @@ void pci_register_bar(PCIDevice *pci_dev, int region_num,
r->size = size;
r->filtered_size = size;
r->type = type;
- r->map_func = map_func;
+ r->map_func = pci_simple_bar_mapfunc_region;
r->memory = NULL;
wmask = ~(size - 1);
@@ -920,29 +932,9 @@ void pci_register_bar(PCIDevice *pci_dev, int region_num,
pci_set_long(pci_dev->wmask + addr, wmask & 0xffffffff);
pci_set_long(pci_dev->cmask + addr, 0xffffffff);
}
-}
-
-static void pci_simple_bar_mapfunc_region(PCIDevice *pci_dev, int region_num,
- pcibus_t addr, pcibus_t size,
- int type)
-{
- PCIIORegion *r = &pci_dev->io_regions[region_num];
-
- memory_region_add_subregion_overlap(r->address_space,
- addr,
- r->memory,
- 1);
-}
-
-void pci_register_bar_region(PCIDevice *pci_dev, int region_num,
- uint8_t attr, MemoryRegion *memory)
-{
- pci_register_bar(pci_dev, region_num, memory_region_size(memory),
- attr,
- pci_simple_bar_mapfunc_region);
pci_dev->io_regions[region_num].memory = memory;
pci_dev->io_regions[region_num].address_space
- = attr & PCI_BASE_ADDRESS_SPACE_IO
+ = type & PCI_BASE_ADDRESS_SPACE_IO
? pci_dev->bus->address_space_io
: pci_dev->bus->address_space_mem;
}
diff --git a/hw/pci.h b/hw/pci.h
index 6e2bcea..8028176 100644
--- a/hw/pci.h
+++ b/hw/pci.h
@@ -201,9 +201,6 @@ PCIDevice *pci_register_device(PCIBus *bus, const char
*name,
PCIConfigReadFunc *config_read,
PCIConfigWriteFunc *config_write);
-void pci_register_bar(PCIDevice *pci_dev, int region_num,
- pcibus_t size, uint8_t type,
- PCIMapIORegionFunc *map_func);
void pci_register_bar_region(PCIDevice *pci_dev, int region_num,
uint8_t attr, MemoryRegion *memory);
pcibus_t pci_get_bar_addr(PCIDevice *pci_dev, int region_num);
--
1.7.5.3
- [Qemu-devel] [RFC v5 82/86] sysbus: remove sysbus_init_mmio_cb(), (continued)
- [Qemu-devel] [RFC v5 82/86] sysbus: remove sysbus_init_mmio_cb(), Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 70/86] tusb6010: move declarations to new file tusb6010.h, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 17/86] pc: convert pc_memory_init() to memory API, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 07/86] memory: rename MemoryRegion::has_ram_addr to ::terminates, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 48/86] pcnet: convert to memory API, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 09/86] memory: I/O address space support, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 43/86] ahci: convert to memory API, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 56/86] pci: remove pci_register_bar_simple(), Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 28/86] cirrus: simplify vga window mmio access functions, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 47/86] ne2000: convert to memory API, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 58/86] pci: remove pci_register_bar(),
Avi Kivity <=
- [Qemu-devel] [RFC v5 29/86] vga: simplify vga window mmio access functions, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 05/86] Internal interfaces for memory API, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 79/86] arm11mpcore: use sysbus_init_mmio_cb2, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 67/86] arm_timer: convert to memory API, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 10/86] memory: add backward compatibility for old portio registration, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 53/86] uhci: convert to memory API, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 59/86] pci: fold BAR mapping function into its caller, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 73/86] pcie_host: convert to memory API, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 15/86] ioport: register ranges by byte aligned addresses always, Avi Kivity, 2011/07/20
- [Qemu-devel] [RFC v5 55/86] msix: convert to memory API, Avi Kivity, 2011/07/20