

This adds class/mem/ for all memory devices (random, raw, null, etc.)



---

 25-akpm/drivers/char/mem.c |    7 +++++++
 1 files changed, 7 insertions(+)

diff -puN drivers/char/mem.c~sysfs-class-04-mem drivers/char/mem.c
--- 25/drivers/char/mem.c~sysfs-class-04-mem	Thu Jan 15 16:39:38 2004
+++ 25-akpm/drivers/char/mem.c	Thu Jan 15 16:39:38 2004
@@ -24,6 +24,7 @@
 #include <linux/smp_lock.h>
 #include <linux/devfs_fs_kernel.h>
 #include <linux/ptrace.h>
+#include <linux/device.h>
 
 #include <asm/uaccess.h>
 #include <asm/io.h>
@@ -675,6 +676,8 @@ static const struct {
 	{11,"kmsg",    S_IRUGO | S_IWUSR,           &kmsg_fops},
 };
 
+static struct class_simple *mem_class;
+
 static int __init chr_dev_init(void)
 {
 	int i;
@@ -682,7 +685,11 @@ static int __init chr_dev_init(void)
 	if (register_chrdev(MEM_MAJOR,"mem",&memory_fops))
 		printk("unable to get major %d for memory devs\n", MEM_MAJOR);
 
+	mem_class = class_simple_create(THIS_MODULE, "mem");
 	for (i = 0; i < ARRAY_SIZE(devlist); i++) {
+		class_simple_device_add(mem_class,
+					MKDEV(MEM_MAJOR, devlist[i].minor),
+					NULL, devlist[i].name);
 		devfs_mk_cdev(MKDEV(MEM_MAJOR, devlist[i].minor),
 				S_IFCHR | devlist[i].mode, devlist[i].name);
 	}

_
