Date: Thu, 20 Nov 2003 12:22:11 +0100 From: Bernd Walter <ticso@cicely12.cicely.de> To: Jeff Walters <jeff@walters.name> Cc: current@freebsd.org Subject: Re: Multifunction USB devices Message-ID: <20031120112210.GD66808@cicely12.cicely.de> In-Reply-To: <200311182012.49724.jeff@walters.name> References: <200311182012.49724.jeff@walters.name>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Nov 18, 2003 at 08:12:49PM -0500, Jeff Walters wrote: > > I have an Epson printer/scanner combo device (CX5200) which works just > fine either as a printer or as a scanner (when I add the vendor and > product codes to usbdevs and uscanner.c) but not both simultaneously. > Currently I compile ulpt and my customized uscanner as modules, and > to switch functions I power the device off, unload/load the > appropriate kernel module, and power the device back on. > > I'm assuming a patch to add the CX5200 vendor/device codes to usbdevs > and uscanner.c in the way I'm doing wouldn't be accepted into CURRENT > since the resulting usage of it is a bit of a hack. Is that right? The right fix would be to convert uscanner into a function level driver for scanner combinations - currently it's a device level driver. ulpt does the right thing. Compare USB_MATCH and USB_ATTACH functions to get an idea about the difference. Adding device identification to uscanner is required anyway, because there is no class definition for scanners. > I wouldn't mind doing work over the next few months to create proper > simultaneous support for both devices if it can be done with a > reasonable level of effort and I can find some sources of > information, and I can get some guidance from an experienced > committer or architect to help do it right the first time. Where > should I go for discussion? I'd like to learn ie. should I work to > combine ulpt and uscanner into some kind of single umulti type of > device driver, or should a virtual hub device of some kind be created > to support both ulpt and uscanner simultaneously as-is (one USB > endpoint, multiple interfaces), or should the system simply continue > searching after matching a USB device, or will this be OBE with some > other USB work going on, etc. -- B.Walter BWCT http://www.bwct.de ticso@bwct.de info@bwct.de
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031120112210.GD66808>