mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
pci: introduce pcibus_t to represent pci bus address/size instead of uint32_t
This patch is preliminary for 64 bit BAR support. Introduce dedicated type, pcibus_t, to represent pci bus address/size instead of uint32_t. Later this type will be changed to uint64_t. Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp> Acked-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
a455783bb6
commit
6e355d901b
24 changed files with 43 additions and 40 deletions
12
hw/pci.h
12
hw/pci.h
|
@ -71,18 +71,20 @@ extern target_phys_addr_t pci_mem_base;
|
|||
#define PCI_DEVICE_ID_VIRTIO_BALLOON 0x1002
|
||||
#define PCI_DEVICE_ID_VIRTIO_CONSOLE 0x1003
|
||||
|
||||
typedef uint32_t pcibus_t;
|
||||
|
||||
typedef void PCIConfigWriteFunc(PCIDevice *pci_dev,
|
||||
uint32_t address, uint32_t data, int len);
|
||||
typedef uint32_t PCIConfigReadFunc(PCIDevice *pci_dev,
|
||||
uint32_t address, int len);
|
||||
typedef void PCIMapIORegionFunc(PCIDevice *pci_dev, int region_num,
|
||||
uint32_t addr, uint32_t size, int type);
|
||||
pcibus_t addr, pcibus_t size, int type);
|
||||
typedef int PCIUnregisterFunc(PCIDevice *pci_dev);
|
||||
|
||||
typedef struct PCIIORegion {
|
||||
uint32_t addr; /* current PCI mapping address. -1 means not mapped */
|
||||
#define PCI_BAR_UNMAPPED (~(uint32_t)0)
|
||||
uint32_t size;
|
||||
pcibus_t addr; /* current PCI mapping address. -1 means not mapped */
|
||||
#define PCI_BAR_UNMAPPED (~(pcibus_t)0)
|
||||
pcibus_t size;
|
||||
uint8_t type;
|
||||
PCIMapIORegionFunc *map_func;
|
||||
} PCIIORegion;
|
||||
|
@ -224,7 +226,7 @@ PCIDevice *pci_register_device(PCIBus *bus, const char *name,
|
|||
PCIConfigWriteFunc *config_write);
|
||||
|
||||
void pci_register_bar(PCIDevice *pci_dev, int region_num,
|
||||
uint32_t size, int type,
|
||||
pcibus_t size, int type,
|
||||
PCIMapIORegionFunc *map_func);
|
||||
|
||||
int pci_add_capability(PCIDevice *pci_dev, uint8_t cap_id, uint8_t cap_size);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue