Loading arch/s390/include/asm/ccwgroup.h +2 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,8 @@ extern int ccwgroup_driver_register (struct ccwgroup_driver *cdriver); extern void ccwgroup_driver_unregister (struct ccwgroup_driver *cdriver); int ccwgroup_create_dev(struct device *root, struct ccwgroup_driver *gdrv, int num_devices, const char *buf); struct ccwgroup_device *get_ccwgroupdev_by_busid(struct ccwgroup_driver *gdrv, char *bus_id); extern int ccwgroup_set_online(struct ccwgroup_device *gdev); extern int ccwgroup_set_offline(struct ccwgroup_device *gdev); Loading drivers/s390/cio/ccwgroup.c +30 −0 Original line number Diff line number Diff line Loading @@ -608,6 +608,36 @@ void ccwgroup_driver_unregister(struct ccwgroup_driver *cdriver) } EXPORT_SYMBOL(ccwgroup_driver_unregister); static int __ccwgroupdev_check_busid(struct device *dev, void *id) { char *bus_id = id; return (strcmp(bus_id, dev_name(dev)) == 0); } /** * get_ccwgroupdev_by_busid() - obtain device from a bus id * @gdrv: driver the device is owned by * @bus_id: bus id of the device to be searched * * This function searches all devices owned by @gdrv for a device with a bus * id matching @bus_id. * Returns: * If a match is found, its reference count of the found device is increased * and it is returned; else %NULL is returned. */ struct ccwgroup_device *get_ccwgroupdev_by_busid(struct ccwgroup_driver *gdrv, char *bus_id) { struct device *dev; dev = driver_find_device(&gdrv->driver, NULL, bus_id, __ccwgroupdev_check_busid); return dev ? to_ccwgroupdev(dev) : NULL; } EXPORT_SYMBOL_GPL(get_ccwgroupdev_by_busid); /** * ccwgroup_probe_ccwdev() - probe function for slave devices * @cdev: ccw device to be probed Loading Loading
arch/s390/include/asm/ccwgroup.h +2 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,8 @@ extern int ccwgroup_driver_register (struct ccwgroup_driver *cdriver); extern void ccwgroup_driver_unregister (struct ccwgroup_driver *cdriver); int ccwgroup_create_dev(struct device *root, struct ccwgroup_driver *gdrv, int num_devices, const char *buf); struct ccwgroup_device *get_ccwgroupdev_by_busid(struct ccwgroup_driver *gdrv, char *bus_id); extern int ccwgroup_set_online(struct ccwgroup_device *gdev); extern int ccwgroup_set_offline(struct ccwgroup_device *gdev); Loading
drivers/s390/cio/ccwgroup.c +30 −0 Original line number Diff line number Diff line Loading @@ -608,6 +608,36 @@ void ccwgroup_driver_unregister(struct ccwgroup_driver *cdriver) } EXPORT_SYMBOL(ccwgroup_driver_unregister); static int __ccwgroupdev_check_busid(struct device *dev, void *id) { char *bus_id = id; return (strcmp(bus_id, dev_name(dev)) == 0); } /** * get_ccwgroupdev_by_busid() - obtain device from a bus id * @gdrv: driver the device is owned by * @bus_id: bus id of the device to be searched * * This function searches all devices owned by @gdrv for a device with a bus * id matching @bus_id. * Returns: * If a match is found, its reference count of the found device is increased * and it is returned; else %NULL is returned. */ struct ccwgroup_device *get_ccwgroupdev_by_busid(struct ccwgroup_driver *gdrv, char *bus_id) { struct device *dev; dev = driver_find_device(&gdrv->driver, NULL, bus_id, __ccwgroupdev_check_busid); return dev ? to_ccwgroupdev(dev) : NULL; } EXPORT_SYMBOL_GPL(get_ccwgroupdev_by_busid); /** * ccwgroup_probe_ccwdev() - probe function for slave devices * @cdev: ccw device to be probed Loading