diff options
author | Cornelia Huck <cornelia.huck@de.ibm.com> | 2008-02-05 10:50:36 -0500 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2008-02-05 10:50:54 -0500 |
commit | 01bc8ad165490458a8feb744c8f401c1a7098e3a (patch) | |
tree | 2bb41b3144a74cbe85c7c563ac7ef887e1cfaffb /drivers/s390/cio/ccwgroup.c | |
parent | 2fffc9355e6240466d1af764b0dcdede52085f7c (diff) |
[S390] cio: Add shutdown callback for ccwgroup.
This intendeds to make proper shutdown of qeth devices easier.
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/cio/ccwgroup.c')
-rw-r--r-- | drivers/s390/cio/ccwgroup.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/s390/cio/ccwgroup.c b/drivers/s390/cio/ccwgroup.c index 3964056a9a47..03914fa81174 100644 --- a/drivers/s390/cio/ccwgroup.c +++ b/drivers/s390/cio/ccwgroup.c | |||
@@ -391,12 +391,24 @@ ccwgroup_remove (struct device *dev) | |||
391 | return 0; | 391 | return 0; |
392 | } | 392 | } |
393 | 393 | ||
394 | static void ccwgroup_shutdown(struct device *dev) | ||
395 | { | ||
396 | struct ccwgroup_device *gdev; | ||
397 | struct ccwgroup_driver *gdrv; | ||
398 | |||
399 | gdev = to_ccwgroupdev(dev); | ||
400 | gdrv = to_ccwgroupdrv(dev->driver); | ||
401 | if (gdrv && gdrv->shutdown) | ||
402 | gdrv->shutdown(gdev); | ||
403 | } | ||
404 | |||
394 | static struct bus_type ccwgroup_bus_type = { | 405 | static struct bus_type ccwgroup_bus_type = { |
395 | .name = "ccwgroup", | 406 | .name = "ccwgroup", |
396 | .match = ccwgroup_bus_match, | 407 | .match = ccwgroup_bus_match, |
397 | .uevent = ccwgroup_uevent, | 408 | .uevent = ccwgroup_uevent, |
398 | .probe = ccwgroup_probe, | 409 | .probe = ccwgroup_probe, |
399 | .remove = ccwgroup_remove, | 410 | .remove = ccwgroup_remove, |
411 | .shutdown = ccwgroup_shutdown, | ||
400 | }; | 412 | }; |
401 | 413 | ||
402 | /** | 414 | /** |