psaux and udev/sysfs
Hello out there,
tryed to test udev on my gentoo box and hey i got it running up to login-prompt.
Tryed to start my X but there was no /dev/psaux and no /dev/agpgart. agpgart i could find within my /sys dir. But there was no psaux there.
What should my udev.config look like to get my mouse to /dev/mouse and my intel-agpgart to /dev/agpgart ?
udev-version installed 006
thanks
michael gruner
__________________________________________________________________
Gesendet von Yahoo! Mail - http://mail.yahoo.de
Logos und Klingeltöne fürs Handy bei http://sms.yahoo.de
-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
Quoted 11 lines · Michael Gruner
Hello out there,
tryed to test udev on my gentoo box and hey i got it running up to login-prompt.
Tryed to start my X but there was no
/dev/psauxand no/dev/agpgart. agpgart i could find within my /sys dir. But there was no psaux there.What should my udev.config look like to get my mouse to
/dev/mouseand my intel-agpgart to/dev/agpgart?
You need to patch your kernel with the misc sysfs patch I posted to lkml a few weeks ago to get psaux support.
Where in /sys does the agpgart directory show up?
thanks,
greg k-h
-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
--- Greg KH <[email protected]> schrieb: >
Quoted 8 lines
Quoted 1 line
Tryed to start my X but there was no
/dev/psauxand no
Quoted 1 line
/dev/agpgart. agpgart i could find within my /sysdir.
Quoted 3 lines
But there was no psaux there.
What should my udev.config look like to get my
mouse
Quoted 9 lines
Quoted 1 line
to
/dev/mouseand my intel-agpgart to/dev/agpgart?
You need to patch your kernel with the misc sysfs
patch I posted to lkml
a few weeks ago to get psaux support.Where in /sys does the agpgart directory show up?
Ok, here we go.
agpgart is located here:
mgruner@mobile sys >find |grep agpgart
./bus/pci/drivers/agpgart-intel
./bus/pci/drivers/agpgart-intel/new_id
./bus/pci/drivers/agpgart-intel/0000:00:00.0
Ok, i thought i could use this to get a /dev/agpgart
REPLACE, KERNEL_NAME="psaux", NAME="mouse"
NUMBER, BUS="pci", ID="00:00.0", NAME="agpgart"
but nothing happend.
Maybe I'm kinda blind but searching the patch you mentioned I had no sucess :-(. Could you please point me to right direction?
thanks,
Michael Gruner
__________________________________________________________________
Gesendet von Yahoo! Mail - http://mail.yahoo.de
Logos und Klingeltöne fürs Handy bei http://sms.yahoo.de
-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
Quoted 20 lines · Michael Gruner
--- Greg KH <[email protected]> schrieb: >
Quoted 8 lines
Quoted 1 line
Tryed to start my X but there was no
/dev/psauxand no
Quoted 1 line
/dev/agpgart. agpgart i could find within my /sysdir.
Quoted 3 lines
But there was no psaux there.
What should my udev.config look like to get my
mouse
Quoted 9 lines
Quoted 1 line
to
/dev/mouseand my intel-agpgart to/dev/agpgart?
You need to patch your kernel with the misc sysfs
patch I posted to lkml
a few weeks ago to get psaux support.Where in /sys does the agpgart directory show up?
Ok, here we go.
Quoted 8 lines
agpgart is located here:
mgruner@mobile sys >find |grep agpgart
./bus/pci/drivers/agpgart-intel
./bus/pci/drivers/agpgart-intel/new_id
./bus/pci/drivers/agpgart-intel/0000:00:00.0Ok, i thought i could use this to get a
/dev/agpgart
No, you need a location in sysfs that has a file called "dev" in order for udev to work. agpgart uses the misc char interface, so you will need the patch posted to lkml that adds sysfs support to that part of the kernel in order for agpgart to work with udev.
Quoted 8 lines
REPLACE, KERNEL_NAME="psaux", NAME="mouse"
NUMBER, BUS="pci", ID="00:00.0", NAME="agpgart"but nothing happend.
Maybe I'm kinda blind but searching the patch you mentioned I had no sucess :-(. Could you please point me to right direction?
Here's the patch against 2.6.0-test11.
thanks,
greg k-h
drivers/char/misc.c +89 -1
@@ -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,91 @@return err; } +/* Misc class implementation */ + +/* +* TODO for 2.7: +* - add a struct class_device to struct miscdevice and make all usages of +* them dynamic. This will let us get rid of struct misc_dev below. +*/ +struct misc_dev { +struct list_head node; +dev_t dev; +struct class_device class_dev; +}; +#define to_misc_dev (d) container_of(d, struct misc_dev, class_dev) + +static LIST_HEAD (misc_dev_list); +static spinlock_t misc_dev_list_lock =SPIN_LOCK_UNLOCKED ; + +static void release_misc_dev (struct class_device *class_dev) +{ +struct misc_dev *misc_dev =to_misc_dev (class_dev); +kfree (misc_dev); +} + +static struct class misc_class = { + .name ="misc" , + .release = &release_misc_dev, +}; + +static ssize_t show_dev (struct class_device *class_dev,char *buf) +{ +struct misc_dev *misc_dev =to_misc_dev (class_dev); +return print_dev_t (buf, misc_dev->dev); +} +static CLASS_DEVICE_ATTR(dev, S_IRUGO, show_dev, NULL); + +static void misc_add_class_device (struct miscdevice *misc) +{ +struct misc_dev *misc_dev =NULL ; +int retval; + + misc_dev =kmalloc (sizeof (*misc_dev),GFP_KERNEL ); +if (!misc_dev) +return ; +memset (misc_dev,0x00 ,sizeof (*misc_dev)); + + misc_dev->dev =MKDEV (MISC_MAJOR , misc->minor); + misc_dev->class_dev.dev = misc->dev; + misc_dev->class_dev.class = &misc_class; +snprintf (misc_dev->class_dev.class_id,BUS_ID_SIZE ,"%s" , misc->name); + retval =class_device_register (&misc_dev->class_dev); +if (retval) + goto error; +class_device_create_file (&misc_dev->class_dev, &class_device_attr_dev); +spin_lock (&misc_dev_list_lock); +list_add (&misc_dev->node, &misc_dev_list); +spin_unlock (&misc_dev_list_lock); +return ; +error: +kfree (misc_dev); +} + +static void misc_remove_class_device (struct miscdevice *misc) +{ +struct misc_dev *misc_dev =NULL ; +struct list_head *tmp; +int found =0 ; + +spin_lock (&misc_dev_list_lock); +list_for_each (tmp, &misc_dev_list) { + misc_dev = list_entry(tmp, struct misc_dev, node); +if ((MINOR (misc_dev->dev) = misc->minor)) { + found =1 ; +break ; + } + } +if (found) { +list_del (&misc_dev->node); +spin_unlock (&misc_dev_list_lock); +class_device_unregister (&misc_dev->class_dev); + }else { +spin_unlock (&misc_dev_list_lock); + } +} + +static struct file_operations misc_fops = { .owner =THIS_MODULE , .open = misc_open,
@@ -236,6 +321,7 @@devfs_mk_cdev (MKDEV (MISC_MAJOR , misc->minor),S_IFCHR |S_IRUSR |S_IWUSR |S_IRGRP , misc->devfs_name); +misc_add_class_device (misc);/* * Add it to the front, so that later devices can "override"
@@ -265,6 +351,7 @@down (&misc_sem);list_del (&misc->list); +misc_remove_class_device (misc);devfs_remove (misc->devfs_name);if (i <DYNAMIC_MINORS && i>0 ) { misc_minors[i>>3 ] &= ~(1 << (misc->minor &7 ));
@@ -285,6 +372,7 @@if (ent) ent->proc_fops = &misc_proc_fops;#endif +class_register (&misc_class);#ifdef CONFIG_MVME16xrtc_MK48T08_init ();#endif
include/linux/miscdevice.h +3 -0
@@ -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 ]; };
-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
--- Greg KH <[email protected]> schrieb: > On Thu, Nov
27, 2003 at 10:27:57PM +0100, Michael
Quoted 2 lines
Here's the patch against 2.6.0-test11.
Sorry for asking a stupid question again here. I'm working on a gentoo box and I'm in contact to the gentoo-dev-sources maintainers for adding some patches to that sources including a better udev support. Does anybody know a source i can find all the patches that make the agpgart or ps2 etc. devs shown up in sysfs?
thank you
Michael
__________________________________________________________________
Gesendet von Yahoo! Mail - http://mail.yahoo.de
Logos und Klingeltöne fürs Handy bei http://sms.yahoo.de
-------------------------------------------------------
This SF.net email is sponsored by OSDN's Audience Survey. Help shape OSDN's sites and tell us what you think. Take this five minute survey and you could win a $250 Gift Certificate.
http://www.wrgsurveys.com/2003/osdntech03.php?site=8
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
Quoted 10 lines · Michael Gruner
--- Greg KH <[email protected]> schrieb: > On Thu, Nov
27, 2003 at 10:27:57PM +0100, MichaelQuoted 2 lines
Here's the patch against 2.6.0-test11.
Sorry for asking a stupid question again here. I'm working on a gentoo box and I'm in contact to the gentoo-dev-sources maintainers for adding some patches to that sources including a better udev support. Does anybody know a source i can find all the patches that make the agpgart or ps2 etc. devs shown up in sysfs?
The patch in the message you responded to will do that :)
thanks,
greg k-h
-------------------------------------------------------
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_id78&alloc_id371&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel