struct tasklet_struct event_dpc;
};
-static int vmbus_remove(struct device *device);
static void vmbus_shutdown(struct device *device);
static irqreturn_t vmbus_isr(int irq, void *dev_id);
return ret;
}
+/*
+ * vmbus_remove - Remove a vmbus device
+ */
+static int vmbus_remove(struct device *child_device)
+{
+ int ret;
+ struct hv_driver *drv;
+
+
+ if (child_device->driver) {
+ drv = drv_to_hv_drv(child_device->driver);
+
+ /*
+ * Let the specific open-source driver handles the removal if
+ * it can
+ */
+ if (drv->driver.remove) {
+ ret = drv->driver.remove(child_device);
+ } else {
+ DPRINT_ERR(VMBUS_DRV,
+ "remove() method not set for driver - %s",
+ child_device->driver->name);
+ ret = -1;
+ }
+ }
+
+ return 0;
+}
+
/* The one and only one */
static struct hv_bus hv_bus = {
.bus.name = "vmbus",
&device_obj->device);
}
-/*
- * vmbus_remove - Remove a vmbus device
- */
-static int vmbus_remove(struct device *child_device)
-{
- int ret;
- struct hv_driver *drv;
-
-
- if (child_device->driver) {
- drv = drv_to_hv_drv(child_device->driver);
-
- /*
- * Let the specific open-source driver handles the removal if
- * it can
- */
- if (drv->driver.remove) {
- ret = drv->driver.remove(child_device);
- } else {
- DPRINT_ERR(VMBUS_DRV,
- "remove() method not set for driver - %s",
- child_device->driver->name);
- ret = -1;
- }
- }
-
- return 0;
-}
-
/*
* vmbus_shutdown - Shutdown a vmbus device
*/