Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v2.6.12 45 lines 1.3 kB view raw
1#ifndef S390_CCWGROUP_H 2#define S390_CCWGROUP_H 3 4struct ccw_device; 5struct ccw_driver; 6 7struct ccwgroup_device { 8 unsigned long creator_id; /* unique number of the driver */ 9 enum { 10 CCWGROUP_OFFLINE, 11 CCWGROUP_ONLINE, 12 } state; 13 atomic_t onoff; 14 unsigned int count; /* number of attached slave devices */ 15 struct device dev; /* master device */ 16 struct ccw_device *cdev[0]; /* variable number, allocate as needed */ 17}; 18 19struct ccwgroup_driver { 20 struct module *owner; 21 char *name; 22 int max_slaves; 23 unsigned long driver_id; 24 25 int (*probe) (struct ccwgroup_device *); 26 void (*remove) (struct ccwgroup_device *); 27 int (*set_online) (struct ccwgroup_device *); 28 int (*set_offline) (struct ccwgroup_device *); 29 30 struct device_driver driver; /* this driver */ 31}; 32 33extern int ccwgroup_driver_register (struct ccwgroup_driver *cdriver); 34extern void ccwgroup_driver_unregister (struct ccwgroup_driver *cdriver); 35extern int ccwgroup_create (struct device *root, 36 unsigned int creator_id, 37 struct ccw_driver *gdrv, 38 int argc, char *argv[]); 39 40extern int ccwgroup_probe_ccwdev(struct ccw_device *cdev); 41extern void ccwgroup_remove_ccwdev(struct ccw_device *cdev); 42 43#define to_ccwgroupdev(x) container_of((x), struct ccwgroup_device, dev) 44#define to_ccwgroupdrv(x) container_of((x), struct ccwgroup_driver, driver) 45#endif