diff options
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/cio/ccwgroup.c | 4 | ||||
-rw-r--r-- | drivers/s390/cio/css.c | 6 | ||||
-rw-r--r-- | drivers/s390/cio/css.h | 2 |
3 files changed, 7 insertions, 5 deletions
diff --git a/drivers/s390/cio/ccwgroup.c b/drivers/s390/cio/ccwgroup.c index 5baa517c3b6..b3e2c16caa4 100644 --- a/drivers/s390/cio/ccwgroup.c +++ b/drivers/s390/cio/ccwgroup.c @@ -35,8 +35,8 @@ ccwgroup_bus_match (struct device * dev, struct device_driver * drv) struct ccwgroup_device *gdev; struct ccwgroup_driver *gdrv; - gdev = container_of(dev, struct ccwgroup_device, dev); - gdrv = container_of(drv, struct ccwgroup_driver, driver); + gdev = to_ccwgroupdev(dev); + gdrv = to_ccwgroupdrv(drv); if (gdev->creator_id == gdrv->driver_id) return 1; diff --git a/drivers/s390/cio/css.c b/drivers/s390/cio/css.c index c3df2cd009a..bc2f8fa576a 100644 --- a/drivers/s390/cio/css.c +++ b/drivers/s390/cio/css.c @@ -787,8 +787,8 @@ int sch_is_pseudo_sch(struct subchannel *sch) static int css_bus_match (struct device *dev, struct device_driver *drv) { - struct subchannel *sch = container_of (dev, struct subchannel, dev); - struct css_driver *driver = container_of (drv, struct css_driver, drv); + struct subchannel *sch = to_subchannel(dev); + struct css_driver *driver = to_cssdriver(drv); if (sch->st == driver->subchannel_type) return 1; @@ -802,7 +802,7 @@ css_probe (struct device *dev) struct subchannel *sch; sch = to_subchannel(dev); - sch->driver = container_of (dev->driver, struct css_driver, drv); + sch->driver = to_cssdriver(dev->driver); return (sch->driver->probe ? sch->driver->probe(sch) : 0); } diff --git a/drivers/s390/cio/css.h b/drivers/s390/cio/css.h index 81215ef3243..1d8306cc74c 100644 --- a/drivers/s390/cio/css.h +++ b/drivers/s390/cio/css.h @@ -134,6 +134,8 @@ struct css_driver { void (*shutdown)(struct subchannel *); }; +#define to_cssdriver(n) container_of(n, struct css_driver, drv) + /* * all css_drivers have the css_bus_type */ |