attaching ugen(4) on multi interface USB devices

Mathew Kanner mat at cnd.mcgill.ca
Wed Oct 6 06:42:21 PDT 2004


On Oct 06, Niki Denev wrote:
> The last 1-2 days i've been trying to make some userspace OBEX utilities to 
> work with a USB based Nokia GSM phone and doing this i discovered something 
> that confuses me a little:
> The phone in question is Nokia 6230 and it has an USB interface.
> The phone has 11 interface descriptors,
> 2 of them are used for the Modem and CM over data.
> Judging from the windows drivers it seems that four of the other interfaces
> are OBEX compatible.
> But if i kldload umodem and plug the phone it detects only one ucom(4).
> and if i plug the phone without any u* modules loaded the kernel attaches
> ugen0 only.
> >From what i understand it attaches the ugen0 using the info in the first 
> interface descriptor in the device.
> Wouldn't it be more usefull for the kernel to attach ugen for every unknown 
> interface in a device.
> For example when attaching the phone with umodem loaded, i will get
> the ucom(4) device and the other unrecognised interfaces will show up as 
> ugens ?
> What do you think about that?
> 
> 
> P.S.: anyone know some good way to list the attached usb devices beyond 
> usbdevs?
> It seems that the information that can be gathered from usbdevs is very 
> limited. For example 'lsusb' in linux can show much more info. What do you 
> think about that too?
> 
> 
> Thanks in advance for any info and/or flames :)

	I seem to recall a problem with ugen that it doesn't discover
endpoints on alt-interfaces.  I've posted patches to this mailing list
to work around the problem.	

	--Mat

-- 
	Canada is a country whose main exports are hockey players
	and cold fronts. Our main imports are baseball players and
	acid rain.
			- Pierre Elliott Trudeau


More information about the freebsd-hackers mailing list