diff options
author | Gerd Knorr <kraxel@bytesex.org> | 2005-05-12 10:25:26 +0200 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.(none)> | 2005-05-20 12:53:51 -0500 |
commit | 21feb5ccd5d054b8a17fe86b1b5df1e16809df64 (patch) | |
tree | 3d616a700dfeaada445049dddee91f7b13d53f7d /drivers/scsi/ch.c | |
parent | daa6eda65a53e5addf86c6bc829129ff51b08bda (diff) | |
download | linux-stable-21feb5ccd5d054b8a17fe86b1b5df1e16809df64.tar.gz linux-stable-21feb5ccd5d054b8a17fe86b1b5df1e16809df64.tar.bz2 linux-stable-21feb5ccd5d054b8a17fe86b1b5df1e16809df64.zip |
[SCSI] convert scsi changer driver from class simple
Here is a incremental patch which switches the driver over to
the new non-simple functions. Compile-tested.
Signed-off-by: Gerd Knorr <kraxel@bytesex.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/ch.c')
-rw-r--r-- | drivers/scsi/ch.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/scsi/ch.c b/drivers/scsi/ch.c index 44f5a71ec34a..3900e28ac7d6 100644 --- a/drivers/scsi/ch.c +++ b/drivers/scsi/ch.c @@ -101,7 +101,7 @@ static long ch_ioctl_compat(struct file * filp, unsigned int cmd, unsigned long arg); #endif -static struct class_simple * ch_sysfs_class; +static struct class * ch_sysfs_class; typedef struct { struct list_head list; @@ -942,9 +942,9 @@ static int ch_probe(struct device *dev) devfs_mk_cdev(MKDEV(SCSI_CHANGER_MAJOR,ch->minor), S_IFCHR | S_IRUGO | S_IWUGO, ch->name); - class_simple_device_add(ch_sysfs_class, - MKDEV(SCSI_CHANGER_MAJOR,ch->minor), - dev, "s%s", ch->name); + class_device_create(ch_sysfs_class, + MKDEV(SCSI_CHANGER_MAJOR,ch->minor), + dev, "s%s", ch->name); printk(KERN_INFO "Attached scsi changer %s " "at scsi%d, channel %d, id %d, lun %d\n", @@ -972,7 +972,8 @@ static int ch_remove(struct device *dev) list_del(&ch->list); spin_unlock(&ch_devlist_lock); - class_simple_device_remove(MKDEV(SCSI_CHANGER_MAJOR,ch->minor)); + class_device_destroy(ch_sysfs_class, + MKDEV(SCSI_CHANGER_MAJOR,ch->minor)); devfs_remove(ch->name); kfree(ch->dt); kfree(ch); @@ -985,7 +986,7 @@ static int __init init_ch_module(void) int rc; printk(KERN_INFO "SCSI Media Changer driver v" VERSION " \n"); - ch_sysfs_class = class_simple_create(THIS_MODULE, "scsi_changer"); + ch_sysfs_class = class_create(THIS_MODULE, "scsi_changer"); if (IS_ERR(ch_sysfs_class)) { rc = PTR_ERR(ch_sysfs_class); return rc; @@ -1004,7 +1005,7 @@ static int __init init_ch_module(void) fail2: unregister_chrdev(SCSI_CHANGER_MAJOR, "ch"); fail1: - class_simple_destroy(ch_sysfs_class); + class_destroy(ch_sysfs_class); return rc; } @@ -1012,7 +1013,7 @@ static void __exit exit_ch_module(void) { scsi_unregister_driver(&ch_template.gendrv); unregister_chrdev(SCSI_CHANGER_MAJOR, "ch"); - class_simple_destroy(ch_sysfs_class); + class_destroy(ch_sysfs_class); } module_init(init_ch_module); |