From: Greg KH <greg@kroah.com>
To: Andrew Morton <akpm@osdl.org>
Cc: linux-kernel@vger.kernel.org, linux-hotplug-devel@lists.sourceforge.net
Subject: [PATCH] add sysfs class support for misc devices [05/10]
Date: Thu, 15 Jan 2004 20:42:09 +0000 [thread overview]
Message-ID: <20040115204209.GF22199@kroah.com> (raw)
In-Reply-To: <20040115204153.GE22199@kroah.com>
This adds class/misc/ for all misc devices (ones that use the
misc_register() function).
diff -Nru a/drivers/char/misc.c b/drivers/char/misc.c
--- a/drivers/char/misc.c Thu Jan 15 11:05:56 2004
+++ b/drivers/char/misc.c Thu Jan 15 11:05:56 2004
@@ -47,7 +47,7 @@
#include <linux/devfs_fs_kernel.h>
#include <linux/stat.h>
#include <linux/init.h>
-
+#include <linux/device.h>
#include <linux/tty.h>
#include <linux/kmod.h>
@@ -180,6 +180,13 @@
return err;
}
+/*
+ * TODO for 2.7:
+ * - add a struct class_device to struct miscdevice and make all usages of
+ * them dynamic.
+ */
+static struct class_simple *misc_class;
+
static struct file_operations misc_fops = {
.owner = THIS_MODULE,
.open = misc_open,
@@ -234,6 +241,8 @@
"misc/%s", misc->name);
}
+ class_simple_device_add(misc_class, MKDEV(MISC_MAJOR, misc->minor),
+ misc->dev, misc->name);
devfs_mk_cdev(MKDEV(MISC_MAJOR, misc->minor),
S_IFCHR|S_IRUSR|S_IWUSR|S_IRGRP, misc->devfs_name);
@@ -265,6 +274,7 @@
down(&misc_sem);
list_del(&misc->list);
+ class_simple_device_remove(MKDEV(MISC_MAJOR, misc->minor));
devfs_remove(misc->devfs_name);
if (i < DYNAMIC_MINORS && i>0) {
misc_minors[i>>3] &= ~(1 << (misc->minor & 7));
@@ -285,6 +295,9 @@
if (ent)
ent->proc_fops = &misc_proc_fops;
#endif
+ misc_class = class_simple_create(THIS_MODULE, "misc");
+ if (IS_ERR(misc_class))
+ return PTR_ERR(misc_class);
#ifdef CONFIG_MVME16x
rtc_MK48T08_init();
#endif
@@ -319,4 +332,4 @@
}
return 0;
}
-module_init(misc_init);
+subsys_initcall(misc_init);
diff -Nru a/include/linux/miscdevice.h b/include/linux/miscdevice.h
--- a/include/linux/miscdevice.h Thu Jan 15 11:05:53 2004
+++ b/include/linux/miscdevice.h Thu Jan 15 11:05:53 2004
@@ -36,12 +36,15 @@
#define TUN_MINOR 200
+struct device;
+
struct miscdevice
{
int minor;
const char *name;
struct file_operations *fops;
struct list_head list;
+ struct device *dev;
char devfs_name[64];
};
-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
WARNING: multiple messages have this Message-ID (diff)
From: Greg KH <greg@kroah.com>
To: Andrew Morton <akpm@osdl.org>
Cc: linux-kernel@vger.kernel.org, linux-hotplug-devel@lists.sourceforge.net
Subject: [PATCH] add sysfs class support for misc devices [05/10]
Date: Thu, 15 Jan 2004 12:42:09 -0800 [thread overview]
Message-ID: <20040115204209.GF22199@kroah.com> (raw)
In-Reply-To: <20040115204153.GE22199@kroah.com>
This adds class/misc/ for all misc devices (ones that use the
misc_register() function).
diff -Nru a/drivers/char/misc.c b/drivers/char/misc.c
--- a/drivers/char/misc.c Thu Jan 15 11:05:56 2004
+++ b/drivers/char/misc.c Thu Jan 15 11:05:56 2004
@@ -47,7 +47,7 @@
#include <linux/devfs_fs_kernel.h>
#include <linux/stat.h>
#include <linux/init.h>
-
+#include <linux/device.h>
#include <linux/tty.h>
#include <linux/kmod.h>
@@ -180,6 +180,13 @@
return err;
}
+/*
+ * TODO for 2.7:
+ * - add a struct class_device to struct miscdevice and make all usages of
+ * them dynamic.
+ */
+static struct class_simple *misc_class;
+
static struct file_operations misc_fops = {
.owner = THIS_MODULE,
.open = misc_open,
@@ -234,6 +241,8 @@
"misc/%s", misc->name);
}
+ class_simple_device_add(misc_class, MKDEV(MISC_MAJOR, misc->minor),
+ misc->dev, misc->name);
devfs_mk_cdev(MKDEV(MISC_MAJOR, misc->minor),
S_IFCHR|S_IRUSR|S_IWUSR|S_IRGRP, misc->devfs_name);
@@ -265,6 +274,7 @@
down(&misc_sem);
list_del(&misc->list);
+ class_simple_device_remove(MKDEV(MISC_MAJOR, misc->minor));
devfs_remove(misc->devfs_name);
if (i < DYNAMIC_MINORS && i>0) {
misc_minors[i>>3] &= ~(1 << (misc->minor & 7));
@@ -285,6 +295,9 @@
if (ent)
ent->proc_fops = &misc_proc_fops;
#endif
+ misc_class = class_simple_create(THIS_MODULE, "misc");
+ if (IS_ERR(misc_class))
+ return PTR_ERR(misc_class);
#ifdef CONFIG_MVME16x
rtc_MK48T08_init();
#endif
@@ -319,4 +332,4 @@
}
return 0;
}
-module_init(misc_init);
+subsys_initcall(misc_init);
diff -Nru a/include/linux/miscdevice.h b/include/linux/miscdevice.h
--- a/include/linux/miscdevice.h Thu Jan 15 11:05:53 2004
+++ b/include/linux/miscdevice.h Thu Jan 15 11:05:53 2004
@@ -36,12 +36,15 @@
#define TUN_MINOR 200
+struct device;
+
struct miscdevice
{
int minor;
const char *name;
struct file_operations *fops;
struct list_head list;
+ struct device *dev;
char devfs_name[64];
};
next prev parent reply other threads:[~2004-01-15 20:42 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-01-15 20:40 [PATCH] sysfs class patch update [00/10] Greg KH
2004-01-15 20:40 ` Greg KH
2004-01-15 20:41 ` [PATCH] add class_simple support [01/10] Greg KH
2004-01-15 20:41 ` Greg KH
2004-01-15 20:41 ` [PATCH] add sysfs class support for input devices [02/10] Greg KH
2004-01-15 20:41 ` Greg KH
2004-01-15 20:41 ` [PATCH] add class support for lp devices [03/10] Greg KH
2004-01-15 20:41 ` Greg KH
2004-01-15 20:41 ` [PATCH] add sysfs class support for mem devices [04/10] Greg KH
2004-01-15 20:41 ` Greg KH
2004-01-15 20:42 ` Greg KH [this message]
2004-01-15 20:42 ` [PATCH] add sysfs class support for misc devices [05/10] Greg KH
2004-01-15 20:42 ` [PATCH] add sysfs class support for raw devices [06/10] Greg KH
2004-01-15 20:42 ` Greg KH
2004-01-15 20:42 ` [PATCH] add sysfs class support for OSS sound devices [07/10] Greg KH
2004-01-15 20:42 ` Greg KH
2004-01-15 20:43 ` [PATCH] add sysfs class support for ALSA sound devices [08/10] Greg KH
2004-01-15 20:43 ` Greg KH
2004-01-15 20:43 ` [PATCH] clean up sysfs class support for tty devices [09/10] Greg KH
2004-01-15 20:43 ` Greg KH
2004-01-15 20:43 ` [PATCH] add sysfs class support for vc devices [10/10] Greg KH
2004-01-15 20:43 ` Greg KH
2004-01-16 4:13 ` Andrew Morton
2004-01-16 4:13 ` Andrew Morton
2004-01-16 19:04 ` Martin Schlemmer
2004-01-16 19:17 ` Andrew Morton
2004-01-16 19:17 ` Andrew Morton
2004-01-16 19:52 ` Martin Schlemmer
2004-01-16 22:15 ` [PATCH] add sysfs class support for ALSA sound devices [08/10] Måns Rullgård
2004-01-17 0:10 ` Greg KH
2004-01-17 0:10 ` Greg KH
2004-01-17 0:50 ` Måns Rullgård
2004-01-15 21:23 ` [PATCH] add sysfs class support for OSS sound devices [07/10] Prakash K. Cheemplavam
2004-01-15 21:23 ` Prakash K. Cheemplavam
2004-01-15 21:32 ` Greg KH
2004-01-15 21:32 ` Greg KH
2004-01-15 22:01 ` Prakash K. Cheemplavam
2004-01-20 1:58 ` [PATCH] add class_simple support [01/10] Rusty Russell
2004-01-20 1:58 ` Rusty Russell
2004-01-15 20:57 ` [PATCH] sysfs class patch update [00/10] Måns Rullgård
2004-01-15 22:56 ` Greg KH
2004-01-15 22:56 ` Greg KH
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040115204209.GF22199@kroah.com \
--to=greg@kroah.com \
--cc=akpm@osdl.org \
--cc=linux-hotplug-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.