ChangeSet 1.1643.36.8, 2004/03/25 10:43:11-08:00, hannal@us.ibm.com [PATCH] added class support to stallion.c Here is a patch to add class support to the Stallion multiport serial driver. drivers/char/stallion.c | 10 +++++++++- 1 files changed, 9 insertions(+), 1 deletion(-) diff -Nru a/drivers/char/stallion.c b/drivers/char/stallion.c --- a/drivers/char/stallion.c Thu Apr 15 10:20:54 2004 +++ b/drivers/char/stallion.c Thu Apr 15 10:20:54 2004 @@ -41,6 +41,7 @@ #include #include #include +#include #include #include @@ -732,6 +733,8 @@ /*****************************************************************************/ +static struct class_simple *stallion_class; + #ifdef MODULE /* @@ -788,12 +791,15 @@ restore_flags(flags); return; } - for (i = 0; i < 4; i++) + for (i = 0; i < 4; i++) { devfs_remove("staliomem/%d", i); + class_simple_device_remove(MKDEV(STL_SIOMEMMAJOR, i)); + } devfs_remove("staliomem"); if ((i = unregister_chrdev(STL_SIOMEMMAJOR, "staliomem"))) printk("STALLION: failed to un-register serial memory device, " "errno=%d\n", -i); + class_simple_destroy(stallion_class); if (stl_tmpwritebuf != (char *) NULL) kfree(stl_tmpwritebuf); @@ -3181,10 +3187,12 @@ printk("STALLION: failed to register serial board device\n"); devfs_mk_dir("staliomem"); + stallion_class = class_simple_create(THIS_MODULE, "staliomem"); for (i = 0; i < 4; i++) { devfs_mk_cdev(MKDEV(STL_SIOMEMMAJOR, i), S_IFCHR|S_IRUSR|S_IWUSR, "staliomem/%d", i); + class_simple_device_add(stallion_class, MKDEV(STL_SIOMEMMAJOR, i), NULL, "staliomem/%d", i); } stl_serial->owner = THIS_MODULE;