All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] add sysfs vc class  [5/5]
@ 2003-12-23 21:31 Greg KH
  0 siblings, 0 replies; 2+ messages in thread
From: Greg KH @ 2003-12-23 21:31 UTC (permalink / raw)
  To: linux-hotplug


Add sysfs vc class support

diff -Nru a/drivers/char/vc_screen.c b/drivers/char/vc_screen.c
--- a/drivers/char/vc_screen.c	Tue Dec 23 12:53:14 2003
+++ b/drivers/char/vc_screen.c	Tue Dec 23 12:53:14 2003
@@ -36,6 +36,7 @@
 #include <linux/kbd_kern.h>
 #include <linux/console.h>
 #include <linux/smp_lock.h>
+#include <linux/device.h>
 #include <asm/uaccess.h>
 #include <asm/byteorder.h>
 #include <asm/unaligned.h>
@@ -469,6 +470,10 @@
 	.open		= vcs_open,
 };
 
+static struct class vc_class = {
+	.name	= "vc",
+};
+
 void vcs_make_devfs(struct tty_struct *tty)
 {
 	devfs_mk_cdev(MKDEV(VCS_MAJOR, tty->index + 1),
@@ -477,19 +482,26 @@
 	devfs_mk_cdev(MKDEV(VCS_MAJOR, tty->index + 129),
 			S_IFCHR|S_IRUSR|S_IWUSR,
 			"vcc/a%u", tty->index + 1);
+	simple_add_class_device(&vc_class, MKDEV(VCS_MAJOR, tty->index + 1), NULL, "vcs%u", tty->index + 1);
+	simple_add_class_device(&vc_class, MKDEV(VCS_MAJOR, tty->index + 129), NULL, "vcsa%u", tty->index + 1);
 }
 void vcs_remove_devfs(struct tty_struct *tty)
 {
 	devfs_remove("vcc/%u", tty->index + 1);
 	devfs_remove("vcc/a%u", tty->index + 1);
+	simple_remove_class_device(MKDEV(VCS_MAJOR, tty->index + 1));
+	simple_remove_class_device(MKDEV(VCS_MAJOR, tty->index + 129));
 }
 
 int __init vcs_init(void)
 {
 	if (register_chrdev(VCS_MAJOR, "vcs", &vcs_fops))
 		panic("unable to get major %d for vcs device", VCS_MAJOR);
+	class_register(&vc_class);
 
 	devfs_mk_cdev(MKDEV(VCS_MAJOR, 0), S_IFCHR|S_IRUSR|S_IWUSR, "vcc/0");
 	devfs_mk_cdev(MKDEV(VCS_MAJOR, 128), S_IFCHR|S_IRUSR|S_IWUSR, "vcc/a0");
+	simple_add_class_device(&vc_class, MKDEV(VCS_MAJOR, 0), NULL, "vcs");
+	simple_add_class_device(&vc_class, MKDEV(VCS_MAJOR, 128), NULL, "vcsa");
 	return 0;
 }


-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id\x1278&alloc_id371&op=click
_______________________________________________
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

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [PATCH] add sysfs vc class  [5/5]
  2003-12-23 21:30       ` [PATCH] add sysfs misc class [4/5] Greg KH
@ 2003-12-23 21:31         ` Greg KH
  0 siblings, 0 replies; 2+ messages in thread
From: Greg KH @ 2003-12-23 21:31 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, linux-hotplug-devel


Add sysfs vc class support

diff -Nru a/drivers/char/vc_screen.c b/drivers/char/vc_screen.c
--- a/drivers/char/vc_screen.c	Tue Dec 23 12:53:14 2003
+++ b/drivers/char/vc_screen.c	Tue Dec 23 12:53:14 2003
@@ -36,6 +36,7 @@
 #include <linux/kbd_kern.h>
 #include <linux/console.h>
 #include <linux/smp_lock.h>
+#include <linux/device.h>
 #include <asm/uaccess.h>
 #include <asm/byteorder.h>
 #include <asm/unaligned.h>
@@ -469,6 +470,10 @@
 	.open		= vcs_open,
 };
 
+static struct class vc_class = {
+	.name	= "vc",
+};
+
 void vcs_make_devfs(struct tty_struct *tty)
 {
 	devfs_mk_cdev(MKDEV(VCS_MAJOR, tty->index + 1),
@@ -477,19 +482,26 @@
 	devfs_mk_cdev(MKDEV(VCS_MAJOR, tty->index + 129),
 			S_IFCHR|S_IRUSR|S_IWUSR,
 			"vcc/a%u", tty->index + 1);
+	simple_add_class_device(&vc_class, MKDEV(VCS_MAJOR, tty->index + 1), NULL, "vcs%u", tty->index + 1);
+	simple_add_class_device(&vc_class, MKDEV(VCS_MAJOR, tty->index + 129), NULL, "vcsa%u", tty->index + 1);
 }
 void vcs_remove_devfs(struct tty_struct *tty)
 {
 	devfs_remove("vcc/%u", tty->index + 1);
 	devfs_remove("vcc/a%u", tty->index + 1);
+	simple_remove_class_device(MKDEV(VCS_MAJOR, tty->index + 1));
+	simple_remove_class_device(MKDEV(VCS_MAJOR, tty->index + 129));
 }
 
 int __init vcs_init(void)
 {
 	if (register_chrdev(VCS_MAJOR, "vcs", &vcs_fops))
 		panic("unable to get major %d for vcs device", VCS_MAJOR);
+	class_register(&vc_class);
 
 	devfs_mk_cdev(MKDEV(VCS_MAJOR, 0), S_IFCHR|S_IRUSR|S_IWUSR, "vcc/0");
 	devfs_mk_cdev(MKDEV(VCS_MAJOR, 128), S_IFCHR|S_IRUSR|S_IWUSR, "vcc/a0");
+	simple_add_class_device(&vc_class, MKDEV(VCS_MAJOR, 0), NULL, "vcs");
+	simple_add_class_device(&vc_class, MKDEV(VCS_MAJOR, 128), NULL, "vcsa");
 	return 0;
 }

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-12-23 21:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-12-23 21:31 [PATCH] add sysfs vc class [5/5] Greg KH
  -- strict thread matches above, loose matches on Subject: below --
2003-12-23 21:24 [PATCH] sysfs class patches - take 2 [0/5] Greg KH
2003-12-23 21:26 ` [PATCH] add "simple" class device support [1/5] Greg KH
2003-12-23 21:27   ` [PATCH] remove tty class device logic [2/5] Greg KH
2003-12-23 21:29     ` [PATCH] add sysfs mem class [3/5] Greg KH
2003-12-23 21:30       ` [PATCH] add sysfs misc class [4/5] Greg KH
2003-12-23 21:31         ` [PATCH] add sysfs vc class [5/5] Greg KH

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.