On Wed, Dec 1, 2010 at 5:06 AM, Greg KH <greg@xxxxxxxxx> wrote: > On Mon, Nov 29, 2010 at 09:08:07PM +0100, Belisko Marek wrote: >> On Mon, Nov 29, 2010 at 8:44 PM, Greg KH <greg@xxxxxxxxx> wrote: >> > On Wed, Nov 24, 2010 at 10:16:36AM +0100, Belisko Marek wrote: >> >> On Tue, Nov 23, 2010 at 10:28 PM, Jiri Slaby <jirislaby@xxxxxxxxx> wrote: >> >> > On 11/23/2010 03:00 PM, Belisko Marek wrote: >> >> >> On Tue, Nov 23, 2010 at 2:53 PM, Jiri Slaby <jirislaby@xxxxxxxxx> wrote: >> >> >>> On 11/23/2010 01:29 PM, Marek Belisko wrote: >> >> >>>> Use simple misc device for ioctl driver funtionality testing. >> >> >>>> >> >> >>>> Signed-off-by: Marek Belisko <marek.belisko@xxxxxxxxxxxxxxx> >> >> >>>> --- >> >> >>>> Âdrivers/staging/ft1000/ft1000-usb/ft1000_chdev.c |  90 ++++++++++++++++++--- >> >> >>>> Â1 files changed, 77 insertions(+), 13 deletions(-) >> >> >>>> >> >> >>>> diff --git a/drivers/staging/ft1000/ft1000-usb/ft1000_chdev.c b/drivers/staging/ft1000/ft1000-usb/ft1000_chdev.c >> >> >>>> index 1aec926..d1784a3 100644 >> >> >>>> --- a/drivers/staging/ft1000/ft1000-usb/ft1000_chdev.c >> >> >>>> +++ b/drivers/staging/ft1000/ft1000-usb/ft1000_chdev.c >> >> >>>> @@ -32,6 +32,7 @@ >> >> >>>> Â#include <linux/poll.h> >> >> >>>> Â#include <linux/netdevice.h> >> >> >>>> Â#include <linux/delay.h> >> >> >>>> +#include <linux/miscdevice.h> >> >> >>>> >> >> >>>> Â#include <linux/fs.h> >> >> >>>> Â#include <linux/kmod.h> >> >> >>>> @@ -78,6 +79,47 @@ static struct file_operations ft1000fops = >> >> >>>>    .llseek     = no_llseek, >> >> >>>> Â}; >> >> >>>> >> >> >>>> +struct ft1000_misc_device { >> >> >>>> +   struct miscdevice dev; >> >> >>>> +   int inf_id; >> >> >>>> +}; >> >> >>>> + >> >> >>>> +#define FREE_ID (0xFF) >> >> >>>> + >> >> >>>> +/* we support just 3 devices */ >> >> >>>> +#define MAX_DEVICE 3 >> >> >>> >> >> >>> No, why this should be converted to miscdevice? Leave it as chrdev. >> >> >> Is there any problem with using miscdev? >> >> > >> >> > Yes, if you want more than a single device per system. >> >> > >> >> >> Old interface create /dev nodes with >> >> >> calling kernel thread and some usermode_helper or whatever. >> >> > >> >> > Yes, that's crap indeed. But doesn't judge for miscdevice. >> >> > >> >> >> Just convert to misc dev >> >> >> where this is done automatically. >> >> > >> >> > So the only thing you need to do is to send a uevent to udev appropriately. >> >> Could be used something like: >> >> register_chrdev(0,"ft1000", &fops) >> >> class = class_create(THIS_MODULE, "ft1000"); >> >> device_create(class, NULL, MKDEV(major, i), NULL, "ft1000%d", i); >> >> Then will be created different devices for every plugged device. >> >> This should have effect of automatic device node creation also suppose. >> > >> > Please don't create new classes. >> > >> > Is this a USB device? ÂIf so, why not just use the USB major number? >> Yes it is USB device. >> > Just ask me and I can reserve you a USB minor number for your driver. >> Idea behind existing code is that for every plugged device you will have created >> /dev node. NUmber of devices was limited by number of plugged devices. >> But who will plug more >> then one device which just used for internet connection? So maybe I >> should implement some >> limit and would be nice if you could reserve me some USB minors (lest >> say max. 3 devices?). > > Send me a patch using the USB major number, and I'll add an additional > one that reserves the proper minor number for your driver. Patch sent (subject: [PATCH] staging: ft1000: Use usb device registration.) > > thanks, > > greg k-h > thanks, marek -- as simple and primitive as possible ------------------------------------------------- Marek Belisko - OPEN-NANDRA Freelance Developer Ruska Nova Ves 219 | Presov, 08005 Slovak Republic Tel: +421 915 052 184 skype: marekwhite icq: 290551086 web: http://open-nandra.com _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel