[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH 09/12] xen/events: add a evtchn_op for port setup



From: David Vrabel <david.vrabel@xxxxxxxxxx>

Add a hook for port-specific setup and call it from
xen_irq_info_common_setup().

Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>
---
 drivers/xen/events/events.c          |    2 +-
 drivers/xen/events/events_internal.h |    8 ++++++++
 2 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/drivers/xen/events/events.c b/drivers/xen/events/events.c
index 759acb4..b2746f1 100644
--- a/drivers/xen/events/events.c
+++ b/drivers/xen/events/events.c
@@ -116,7 +116,7 @@ static int xen_irq_info_common_setup(struct irq_info *info,
 
        irq_clear_status_flags(irq, IRQ_NOREQUEST|IRQ_NOAUTOEN);
 
-       return 0;
+       return xen_evtchn_port_setup(info);
 }
 
 static int xen_irq_info_evtchn_setup(unsigned irq,
diff --git a/drivers/xen/events/events_internal.h 
b/drivers/xen/events/events_internal.h
index 513c34d..32cb928 100644
--- a/drivers/xen/events/events_internal.h
+++ b/drivers/xen/events/events_internal.h
@@ -55,6 +55,7 @@ struct irq_info {
 #define PIRQ_SHAREABLE (1 << 1)
 
 struct evtchn_ops {
+       int (*setup)(struct irq_info *info);
        void (*bind_to_cpu)(struct irq_info *info, int cpu);
 
        void (*clear_pending)(int port);
@@ -75,6 +76,13 @@ struct irq_info *info_for_irq(unsigned irq);
 unsigned cpu_from_irq(unsigned irq);
 unsigned cpu_from_evtchn(unsigned int evtchn);
 
+static inline int xen_evtchn_port_setup(struct irq_info *info)
+{
+       if (evtchn_ops->setup)
+               return evtchn_ops->setup(info);
+       return 0;
+}
+
 static inline void xen_evtchn_port_bind_to_cpu(struct irq_info *info, int cpu)
 {
        evtchn_ops->bind_to_cpu(info, cpu);
-- 
1.7.2.5


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.