Update of /cvsroot/linux-vax/kernel-2.5/drivers/vax/bus
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9970/drivers/vax/bus
Modified Files:
vsbus.c
Log Message:
Initial cut at support for driver removal in VSBUS drivers. This is
untested, since we don't have support for loadable modules yet.
Index: vsbus.c
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.5/drivers/vax/bus/vsbus.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- vsbus.c 18 Sep 2004 23:06:33 -0000 1.2
+++ vsbus.c 28 Feb 2005 22:46:19 -0000 1.3
@@ -210,6 +210,16 @@
/* These functions support the VSBUS bus type for the driver model */
+static int vsbus_drv_remove(struct device *dev)
+{
+ struct vsbus_device *vsbus_dev = VSBUS_DEV(dev);
+ struct vsbus_driver *vsbus_drv = VSBUS_DRV(dev->driver);
+
+ vsbus_drv->remove(vsbus_dev);
+
+ return 0;
+}
+
int vsbus_register_device(struct vsbus_device *vsbus_dev)
{
return device_register(&vsbus_dev->dev);
@@ -218,10 +228,12 @@
int vsbus_register_driver(struct vsbus_driver *drv)
{
drv->drv.bus = &vsbus_bus_type;
+ drv->drv.remove = vsbus_drv_remove;
return driver_register(&drv->drv);
}
+
void vsbus_unregister_driver(struct vsbus_driver *drv)
{
return driver_unregister(&drv->drv);
|