Date: Tue, 23 May 2006 12:11:52 +0200 From: Hans Petter Selasky <hselasky@c2i.net> To: freebsd-arch@freebsd.org Cc: mistry.7@osu.edu, Arch@freebsd.org, rwatson@freebsd.org, freebsd-usb@freebsd.org, des@des.no Subject: Re: Resend with subject: No more non-MPSAFE network device drivers, please! Message-ID: <200605231211.55151.hselasky@c2i.net> In-Reply-To: <20060522.164641.74674575.imp@bsdimp.com> References: <86y7wum9ow.fsf@xps.des.no> <200605221518.03687.mistry.7@osu.edu> <20060522.164641.74674575.imp@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 23 May 2006 00:46, Warner Losh wrote: > > I'd be willing to help convert drivers if we can get the code into the > > tree (maybe as usb-ng?). Setting up a bounty for this stuff may be > > worthwhile since having a solid USB stack would be a boon for > > everyone. > > I'm not sure if it's possible with the HPS driver, but it would be > > nice if every USB device could expose ugen endpoints along with their > > device specific nodes. This is not impossible with my USB stack, but one will have to make ugen a special USB device driver then, hence every time the configuration value is changed, the device nodes , /dev/ugenX.Y, must be re-created. Two drivers can set the configuration value, ugen and the device specific driver. Maybe one has got to put some restrictions here, like disabling ugen from changing the configuration value if a USB device driver is attached. Else changing the configuration value can lead to a detach of attached device drivers. That is the problem from what I can see. > > Since I've been reviewing the HPS usb stack for a while now, I'd be > happy to act as coordinator for efforts in this area. > One question is wether we should have the emulation layer for the old USB system or not. I mean it is not very solid, hence it can suddenly sleep due to memory allocations, when it is not allowed to sleep. And then the system will issue a panic(). Everything that is there to support the old USB API has been enclosed with: #ifdef USB_COMPAT_OLD #endif You might consider it for removal. I have volunteered to do some work on the USB stack and drivers as a part of summer of code, but it is not sure yet wether my project will be accepted or not. --HPS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200605231211.55151.hselasky>