diff options
author | Qing He <qing.he@intel.com> | 2010-10-11 10:30:09 -0400 |
---|---|---|
committer | Stefano Stabellini <stefano.stabellini@eu.citrix.com> | 2010-10-22 16:25:44 -0400 |
commit | f731e3ef02b4744f4d7ca2f63539b900e47db31f (patch) | |
tree | 865ef6f817c372b99f0b36dc6f2638df087d51e7 /include/xen | |
parent | 38aa66fcb79e0a46c24bba96b6f2b851a6ec2037 (diff) |
xen: remap MSIs into pirqs when running as initial domain
Implement xen_create_msi_irq to create an msi and remap it as pirq.
Use xen_create_msi_irq to implement an initial domain specific version
of setup_msi_irqs.
Signed-off-by: Qing He <qing.he@intel.com>
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'include/xen')
-rw-r--r-- | include/xen/events.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/xen/events.h b/include/xen/events.h index 0c58db6ea3f4..8fa27dc7358b 100644 --- a/include/xen/events.h +++ b/include/xen/events.h | |||
@@ -72,8 +72,12 @@ void xen_hvm_evtchn_do_upcall(void); | |||
72 | * usual. */ | 72 | * usual. */ |
73 | int xen_allocate_pirq(unsigned gsi, int shareable, char *name); | 73 | int xen_allocate_pirq(unsigned gsi, int shareable, char *name); |
74 | int xen_map_pirq_gsi(unsigned pirq, unsigned gsi, int shareable, char *name); | 74 | int xen_map_pirq_gsi(unsigned pirq, unsigned gsi, int shareable, char *name); |
75 | |||
76 | #ifdef CONFIG_PCI_MSI | ||
75 | /* Allocate an irq and a pirq to be used with MSIs. */ | 77 | /* Allocate an irq and a pirq to be used with MSIs. */ |
76 | void xen_allocate_pirq_msi(char *name, int *irq, int *pirq); | 78 | void xen_allocate_pirq_msi(char *name, int *irq, int *pirq); |
79 | int xen_create_msi_irq(struct pci_dev *dev, struct msi_desc *msidesc, int type); | ||
80 | #endif | ||
77 | 81 | ||
78 | /* De-allocates the above mentioned physical interrupt. */ | 82 | /* De-allocates the above mentioned physical interrupt. */ |
79 | int xen_destroy_irq(int irq); | 83 | int xen_destroy_irq(int irq); |