Displaying 4 results from an estimated 4 matches for "vmbus_get_irq".
2011 Feb 15
4
[PATCH]: Staging: hv: Allocate the vmbus irq dynamically
..._VECTOR
+static int vmbus_irq;
/* Main vmbus driver data structure */
struct vmbus_driver_context {
@@ -57,6 +55,27 @@ struct vmbus_driver_context {
struct vm_device device_ctx;
};
+/*
+ * Find an un-used IRQ that the VMBUS can use. If none is available;
+ * return -EBUSY.
+ */
+static int vmbus_get_irq(void)
+{
+ unsigned int avail_irq_mask;
+ int irq = -EBUSY;
+
+ /*
+ * Pick the first unused interrupt. HyperV can
+ * interrupt us on any interrupt line we specify.
+ */
+
+ avail_irq_mask = probe_irq_on();
+ if (avail_irq_mask != 0)
+ irq = ffs(avail_irq_mask);
+ probe_irq_off(avail_irq_mask)...
2011 Feb 15
4
[PATCH]: Staging: hv: Allocate the vmbus irq dynamically
..._VECTOR
+static int vmbus_irq;
/* Main vmbus driver data structure */
struct vmbus_driver_context {
@@ -57,6 +55,27 @@ struct vmbus_driver_context {
struct vm_device device_ctx;
};
+/*
+ * Find an un-used IRQ that the VMBUS can use. If none is available;
+ * return -EBUSY.
+ */
+static int vmbus_get_irq(void)
+{
+ unsigned int avail_irq_mask;
+ int irq = -EBUSY;
+
+ /*
+ * Pick the first unused interrupt. HyperV can
+ * interrupt us on any interrupt line we specify.
+ */
+
+ avail_irq_mask = probe_irq_on();
+ if (avail_irq_mask != 0)
+ irq = ffs(avail_irq_mask);
+ probe_irq_off(avail_irq_mask)...
2011 Feb 15
3
[PATCH ]:Staging: hv: Allocate the vmbus irq dynamically
...R IRQ5_VECTOR
+static int vmbus_irq;
/* Main vmbus driver data structure */
struct vmbus_driver_context {
@@ -57,6 +55,25 @@ struct vmbus_driver_context {
struct vm_device device_ctx;
};
+/*
+ * Find an un-used IRQ that the VMBUS can use. If none is available; return -1.
+ */
+
+static int vmbus_get_irq(void)
+{
+ unsigned int avail_irq_mask;
+ int irq = -1;
+ /*
+ * Pick the first unused interrupt. HyperV can
+ * interrupt us on any interrupt line we specify.
+ */
+ avail_irq_mask = probe_irq_on();
+ if (avail_irq_mask != 0)
+ irq = ffs(avail_irq_mask);
+ probe_irq_off(avail_irq_mask);
+ retu...
2011 Feb 15
3
[PATCH ]:Staging: hv: Allocate the vmbus irq dynamically
...R IRQ5_VECTOR
+static int vmbus_irq;
/* Main vmbus driver data structure */
struct vmbus_driver_context {
@@ -57,6 +55,25 @@ struct vmbus_driver_context {
struct vm_device device_ctx;
};
+/*
+ * Find an un-used IRQ that the VMBUS can use. If none is available; return -1.
+ */
+
+static int vmbus_get_irq(void)
+{
+ unsigned int avail_irq_mask;
+ int irq = -1;
+ /*
+ * Pick the first unused interrupt. HyperV can
+ * interrupt us on any interrupt line we specify.
+ */
+ avail_irq_mask = probe_irq_on();
+ if (avail_irq_mask != 0)
+ irq = ffs(avail_irq_mask);
+ probe_irq_off(avail_irq_mask);
+ retu...