[PATCH 363/510] Staging: hv: remove OnChildDeviceAdd vmbus_driver callback

Greg Kroah-Hartman gregkh at suse.de
Mon Jan 10 20:41:27 UTC 2011


It's only ever set to one function, so just call that function instead.

Cc: Haiyang Zhang <haiyangz at microsoft.com>
Cc: Hank Janssen <hjanssen at microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
---
 drivers/staging/hv/vmbus.c         |    4 +---
 drivers/staging/hv/vmbus_api.h     |    4 ----
 drivers/staging/hv/vmbus_drv.c     |   12 ++----------
 drivers/staging/hv/vmbus_private.h |    3 ++-
 4 files changed, 5 insertions(+), 18 deletions(-)

diff --git a/drivers/staging/hv/vmbus.c b/drivers/staging/hv/vmbus.c
index ae9e298..7a7454c 100644
--- a/drivers/staging/hv/vmbus.c
+++ b/drivers/staging/hv/vmbus.c
@@ -57,9 +57,7 @@ static struct hv_device *gDevice; /* vmbus root device */
  */
 int VmbusChildDeviceAdd(struct hv_device *ChildDevice)
 {
-	struct vmbus_driver *vmbusDriver = (struct vmbus_driver *)gDriver;
-
-	return vmbusDriver->OnChildDeviceAdd(gDevice, ChildDevice);
+	return vmbus_child_device_register(gDevice, ChildDevice);
 }
 
 /*
diff --git a/drivers/staging/hv/vmbus_api.h b/drivers/staging/hv/vmbus_api.h
index c85d7d4..6f3d59c 100644
--- a/drivers/staging/hv/vmbus_api.h
+++ b/drivers/staging/hv/vmbus_api.h
@@ -120,10 +120,6 @@ struct vmbus_driver {
 	/* !! Must be the 1st field !! */
 	/* FIXME if ^, then someone is doing somthing stupid */
 	struct hv_driver Base;
-
-	/* Set by the caller */
-	int (*OnChildDeviceAdd)(struct hv_device *RootDevice,
-				struct hv_device *ChildDevice);
 };
 
 int VmbusInitialize(struct hv_driver *drv);
diff --git a/drivers/staging/hv/vmbus_drv.c b/drivers/staging/hv/vmbus_drv.c
index 6de53c4..4fa23c9 100644
--- a/drivers/staging/hv/vmbus_drv.c
+++ b/drivers/staging/hv/vmbus_drv.c
@@ -69,8 +69,6 @@ static irqreturn_t vmbus_isr(int irq, void *dev_id);
 static void vmbus_device_release(struct device *device);
 static void vmbus_bus_release(struct device *device);
 
-static int vmbus_child_device_register(struct hv_device *root_device_obj,
-				       struct hv_device *child_device_obj);
 static ssize_t vmbus_show_device_attr(struct device *dev,
 				      struct device_attribute *dev_attr,
 				      char *buf);
@@ -292,12 +290,6 @@ static int vmbus_bus_init(int (*drv_init)(struct hv_driver *drv))
 	int ret;
 	unsigned int vector;
 
-	/*
-	 * Set this up to allow lower layer to callback to add/remove child
-	 * devices on the bus
-	 */
-	vmbus_drv_obj->OnChildDeviceAdd = vmbus_child_device_register;
-
 	/* Call to bus driver to initialize */
 	ret = drv_init(&vmbus_drv_obj->Base);
 	if (ret != 0) {
@@ -530,8 +522,8 @@ struct hv_device *vmbus_child_device_create(struct hv_guid *type,
 /*
  * vmbus_child_device_register - Register the child device on the specified bus
  */
-static int vmbus_child_device_register(struct hv_device *root_device_obj,
-				       struct hv_device *child_device_obj)
+int vmbus_child_device_register(struct hv_device *root_device_obj,
+				struct hv_device *child_device_obj)
 {
 	int ret = 0;
 	struct vm_device *root_device_ctx =
diff --git a/drivers/staging/hv/vmbus_private.h b/drivers/staging/hv/vmbus_private.h
index a5965f8..07f6d22 100644
--- a/drivers/staging/hv/vmbus_private.h
+++ b/drivers/staging/hv/vmbus_private.h
@@ -107,7 +107,8 @@ struct hv_device *vmbus_child_device_create(struct hv_guid *deviceType,
 					 struct vmbus_channel *channel);
 
 int VmbusChildDeviceAdd(struct hv_device *Device);
-
+int vmbus_child_device_register(struct hv_device *root_device_obj,
+				struct hv_device *child_device_obj);
 void vmbus_child_device_unregister(struct hv_device *device_obj);
 
 /* static void */
-- 
1.7.3.2




More information about the devel mailing list