diff --git a/[refs] b/[refs] index e899d24d6b94..40e35560fcd0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9e893bb8530d9c09b1eb8da8734eebf4182bb8b7 +refs/heads/master: 2f9b0b5e46f0381fd41af8cb9ed4daffee59d4f3 diff --git a/trunk/drivers/zorro/zorro-driver.c b/trunk/drivers/zorro/zorro-driver.c index 067c07be928c..e6c4390d8bd6 100644 --- a/trunk/drivers/zorro/zorro-driver.c +++ b/trunk/drivers/zorro/zorro-driver.c @@ -60,6 +60,20 @@ static int zorro_device_probe(struct device *dev) } +static int zorro_device_remove(struct device *dev) +{ + struct zorro_dev *z = to_zorro_dev(dev); + struct zorro_driver *drv = to_zorro_driver(dev->driver); + + if (drv) { + if (drv->remove) + drv->remove(z); + z->driver = NULL; + } + return 0; +} + + /** * zorro_register_driver - register a new Zorro driver * @drv: the driver structure to register @@ -128,6 +142,7 @@ struct bus_type zorro_bus_type = { .name = "zorro", .match = zorro_bus_match, .probe = zorro_device_probe, + .remove = zorro_device_remove, };