search for: pci_map_irq_fn

Displaying 8 results from an estimated 8 matches for "pci_map_irq_fn".

2013 Jul 24
4
[PATCH 2/3] V5 qemu-xen-trad: Correctly expose PCH ISA bridge for IGD passthrough
...051de1..c423285 100644 --- a/hw/pci.c +++ b/hw/pci.c @@ -938,6 +938,16 @@ PCIBus *pci_bridge_init(PCIBus *bus, int devfn, uint16_t vid, uint16_t did, return s->bus; } +PCIBus *pci_isa_bridge_init(PCIBus *bus, int devfn, uint16_t vid, uint16_t did, + uint8_t rid, pci_map_irq_fn map_irq, const char *name) +{ + PCIBus *s = pci_bridge_init(bus, devfn, vid, did, rid, map_irq, name); + + pci_config_set_class(s->parent_dev->config, PCI_CLASS_BRIDGE_ISA); + s->parent_dev->config[PCI_HEADER_TYPE] = 0x80; + return s; +} + int pt_chk_bar_overlap(PCIBus *bus...
2009 May 20
9
[PATCH] qemu: msi irq allocation api
...pcibus_save(QEMUFile *f, void *opaque) { PCIBus *bus = (PCIBus *)opaque; diff --git a/hw/pci.h b/hw/pci.h index a629e60..8883f08 100644 --- a/hw/pci.h +++ b/hw/pci.h @@ -280,4 +280,14 @@ PCIBus *pci_apb_init(target_phys_addr_t special_base, PCIBus *sh_pci_register_bus(pci_set_irq_fn set_irq, pci_map_irq_fn map_irq, qemu_irq *pic, int devfn_min, int nirq); +/* MSI/MSI-X */ + +struct pci_msi_ops { + qemu_irq *(*allocate)(int nentries); + int (*update)(qemu_irq, uint64_t addr, uint32_t data, int masked); + void (*free)(qemu_irq *); +}; + +extern struct pci_msi_ops...
2009 May 20
9
[PATCH] qemu: msi irq allocation api
...pcibus_save(QEMUFile *f, void *opaque) { PCIBus *bus = (PCIBus *)opaque; diff --git a/hw/pci.h b/hw/pci.h index a629e60..8883f08 100644 --- a/hw/pci.h +++ b/hw/pci.h @@ -280,4 +280,14 @@ PCIBus *pci_apb_init(target_phys_addr_t special_base, PCIBus *sh_pci_register_bus(pci_set_irq_fn set_irq, pci_map_irq_fn map_irq, qemu_irq *pic, int devfn_min, int nirq); +/* MSI/MSI-X */ + +struct pci_msi_ops { + qemu_irq *(*allocate)(int nentries); + int (*update)(qemu_irq, uint64_t addr, uint32_t data, int masked); + void (*free)(qemu_irq *); +}; + +extern struct pci_msi_ops...
2010 Aug 12
59
[PATCH 00/15] RFC xen device model support
Hi all, this is the long awaited patch series to add xen device model support in qemu; the main author is Anthony Perard. Developing this series we tried to come up with the cleanest possible solution from the qemu point of view, limiting the amount of changes to common code as much as possible. The end result still requires a couple of hooks in piix_pci but overall the impact should be very
2009 May 11
0
[PATCH 1/2] qemu-kvm: add MSI-X support
...int8_t cap_size); + int pci_map_irq(PCIDevice *pci_dev, int pin); uint32_t pci_default_read_config(PCIDevice *d, uint32_t address, int len); @@ -242,21 +261,45 @@ PCIBus *pci_bridge_init(PCIBus *bus, int devfn, uint16_t vid, uint16_t did, pci_map_irq_fn map_irq, const char *name); static inline void +pci_set_word(uint8_t *config, uint16_t val) +{ + cpu_to_le16wu((uint16_t *)config, val); +} + +static inline uint16_t +pci_get_word(uint8_t *config) +{ + return le16_to_cpupu((uint16_t *)config); +} + +static inline void +pci_set_long(uint8_t...
2009 May 11
0
[PATCH 1/2] qemu-kvm: add MSI-X support
...int8_t cap_size); + int pci_map_irq(PCIDevice *pci_dev, int pin); uint32_t pci_default_read_config(PCIDevice *d, uint32_t address, int len); @@ -242,21 +261,45 @@ PCIBus *pci_bridge_init(PCIBus *bus, int devfn, uint16_t vid, uint16_t did, pci_map_irq_fn map_irq, const char *name); static inline void +pci_set_word(uint8_t *config, uint16_t val) +{ + cpu_to_le16wu((uint16_t *)config, val); +} + +static inline uint16_t +pci_get_word(uint8_t *config) +{ + return le16_to_cpupu((uint16_t *)config); +} + +static inline void +pci_set_long(uint8_t...
2009 May 20
0
[PATCHv2-RFC 1/2] qemu-kvm: add MSI-X support
...uint8_t cap_id); + int pci_map_irq(PCIDevice *pci_dev, int pin); uint32_t pci_default_read_config(PCIDevice *d, uint32_t address, int len); @@ -246,21 +280,45 @@ PCIBus *pci_bridge_init(PCIBus *bus, int devfn, uint16_t vid, uint16_t did, pci_map_irq_fn map_irq, const char *name); static inline void +pci_set_word(uint8_t *config, uint16_t val) +{ + cpu_to_le16wu((uint16_t *)config, val); +} + +static inline uint16_t +pci_get_word(uint8_t *config) +{ + return le16_to_cpupu((uint16_t *)config); +} + +static inline void +pci_set_long(uint8_t...
2009 May 20
0
[PATCHv2-RFC 1/2] qemu-kvm: add MSI-X support
...uint8_t cap_id); + int pci_map_irq(PCIDevice *pci_dev, int pin); uint32_t pci_default_read_config(PCIDevice *d, uint32_t address, int len); @@ -246,21 +280,45 @@ PCIBus *pci_bridge_init(PCIBus *bus, int devfn, uint16_t vid, uint16_t did, pci_map_irq_fn map_irq, const char *name); static inline void +pci_set_word(uint8_t *config, uint16_t val) +{ + cpu_to_le16wu((uint16_t *)config, val); +} + +static inline uint16_t +pci_get_word(uint8_t *config) +{ + return le16_to_cpupu((uint16_t *)config); +} + +static inline void +pci_set_long(uint8_t...