summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2011-02-24 14:20:12 -0500
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2011-04-14 11:17:55 -0400
commite6197acc726ab3baa60375a5891d58c2ee87e0f3 (patch)
tree8403be98a0c6a3e2e845c30a4a028be2391a20e7
parentc7c2c3a28657cfdcef50c02b18ccca3761209e17 (diff)
xen/irq: Export 'xen_pirq_from_irq' function.
We need this to find the real Xen PIRQ value for a device that requests an MSI or MSI-X. In the past we used 'xen_gsi_from_irq' since that function would return an Xen PIRQ or GSI depending on the provided IRQ. Now that we have seperated that we need to use the correct function. [v2: Deal with rebase on stable/irq.cleanup] Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
-rw-r--r--drivers/xen/events.c6
-rw-r--r--include/xen/events.h3
2 files changed, 9 insertions, 0 deletions
diff --git a/drivers/xen/events.c b/drivers/xen/events.c
index 0ac7a149e7f2..e4e8e9a745bf 100644
--- a/drivers/xen/events.c
+++ b/drivers/xen/events.c
@@ -763,6 +763,12 @@ out:
return irq;
}
+
+int xen_pirq_from_irq(unsigned irq)
+{
+ return pirq_from_irq(irq);
+}
+EXPORT_SYMBOL_GPL(xen_pirq_from_irq);
int bind_evtchn_to_irq(unsigned int evtchn)
{
int irq;
diff --git a/include/xen/events.h b/include/xen/events.h
index 932e54051d3e..9af21e19545a 100644
--- a/include/xen/events.h
+++ b/include/xen/events.h
@@ -95,6 +95,9 @@ int xen_destroy_irq(int irq);
/* Return irq from pirq */
int xen_irq_from_pirq(unsigned pirq);
+/* Return the pirq allocated to the irq. */
+int xen_pirq_from_irq(unsigned irq);
+
/* Determine whether to ignore this IRQ if it is passed to a guest. */
int xen_test_irq_shared(int irq);