Linux kernel & device driver programming

Cross-Referenced Linux and Device Driver Code

[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ]
Version: [ 2.6.11.8 ] [ 2.6.25 ] [ 2.6.25.8 ] [ 2.6.31.13 ] Architecture: [ i386 ]
  1 #ifndef _XEN_EVENTS_H
  2 #define _XEN_EVENTS_H
  3 
  4 #include <linux/interrupt.h>
  5 
  6 #include <xen/interface/event_channel.h>
  7 #include <asm/xen/hypercall.h>
  8 
  9 enum ipi_vector {
 10         XEN_RESCHEDULE_VECTOR,
 11         XEN_CALL_FUNCTION_VECTOR,
 12 
 13         XEN_NR_IPIS,
 14 };
 15 
 16 int bind_evtchn_to_irq(unsigned int evtchn);
 17 int bind_evtchn_to_irqhandler(unsigned int evtchn,
 18                               irq_handler_t handler,
 19                               unsigned long irqflags, const char *devname,
 20                               void *dev_id);
 21 int bind_virq_to_irqhandler(unsigned int virq, unsigned int cpu,
 22                             irq_handler_t handler,
 23                             unsigned long irqflags, const char *devname,
 24                             void *dev_id);
 25 int bind_ipi_to_irqhandler(enum ipi_vector ipi,
 26                            unsigned int cpu,
 27                            irq_handler_t handler,
 28                            unsigned long irqflags,
 29                            const char *devname,
 30                            void *dev_id);
 31 
 32 /*
 33  * Common unbind function for all event sources. Takes IRQ to unbind from.
 34  * Automatically closes the underlying event channel (even for bindings
 35  * made with bind_evtchn_to_irqhandler()).
 36  */
 37 void unbind_from_irqhandler(unsigned int irq, void *dev_id);
 38 
 39 void xen_send_IPI_one(unsigned int cpu, enum ipi_vector vector);
 40 
 41 static inline void notify_remote_via_evtchn(int port)
 42 {
 43         struct evtchn_send send = { .port = port };
 44         (void)HYPERVISOR_event_channel_op(EVTCHNOP_send, &send);
 45 }
 46 
 47 extern void notify_remote_via_irq(int irq);
 48 #endif  /* _XEN_EVENTS_H */
 49 
  This page was automatically generated by the LXR engine.