Re: USB drivers

From: M. Warner Losh <imp_at_bsdimp.com>
Date: Sat, 07 Aug 2004 22:10:55 -0600 (MDT)
In message: <4115A736.9000705_at_tellme3times.com>
            Chris <chris_at_tellme3times.com> writes:
: Darren Pilgrim wrote:
: 
: >>From: M. Warner Losh
: >>
: >>In message: <41124C8B.2060902_at_tellme3times.com>
: >>            Chris <chris_at_tellme3times.com> writes:
: >>: 
: >>: What I am trying to determine is why my multifunction
: >>    
: >>
: >printer/scanner 
: >  
: >
: >>: receives only one of the two  drivers. Is it because the printer
: >>    
: >>
: >does 
: >  
: >
: >>: not respond properly? Is it because the printer is not defined? I
: >>: have many questions here.
: >>
: >>Yes.  Usb is a little complicated in this area, and there are a number
: >>of details that are hard to get right.  It wouldn't surprise me if the
: >>current set of drivers are less than completely optimal.
: >>    
: >>
: >
: >On a bit of a side-track, I'm wondering if it could be due to how the
: >multifunction device presents itself?  A bit back in this thread someone
: >mentioned that a pointer must be present for a driver to attach to a
: >device.  If there is only one pointer for a device, only one driver may
: >attach.  Since a single USB bus can have a LOT of devices and each
: >device's capabilities are determined through the presence of usage
: >pages, I see two ways for a multifunction device to present itself:
: >
: >- A single device ID with more than one usage page.  All the
: >functionality is there and is compatible with FreeBSD drivers, but since
: >there is only one device probed on the bus, only one driver may attach.
: >Perhaps a "simple" mux driver would be useful?
: >
: >- A multiple single-usage device IDs.  Same functionality as before, but
: >now FreeBSD can probe unique printer and scanner devices and thus let
: >both ulpt and uscanner attach simutaneously.
: >
: >Am I way off base?
: >
: >
: >  
: >
: What I would like to know is where are these tests done. Or should I say 
: where does USB start to load and what are the steps in between.

In usb_subr.c, routine usbd_probe_and_attach is where the child's
config stuff is done that I posted before.

Warner
Received on Sun Aug 08 2004 - 02:13:44 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:05 UTC