Accessing USB Mass Storage Device

Daniel Rudy dr2867 at pacbell.net
Wed Oct 19 06:35:25 PDT 2005


At about the time of 10/18/2005 9:38 PM, M. Warner Losh stated the
following:

> In message: <43553287.4030907 at pacbell.net>
>             Daniel Rudy <dr2867 at pacbell.net> writes:
> : 
> : When the umass driver is compiled into the kernel, and one inserts a USB
> : mass storage device, how does one access the device descriptors (serial
> : number) while the device is listed as a da device?  I would perfer to
> : have the OS do all the work of accessing the hardware.
> 
> The serial number can be obtained with devifo.  However, since cam
> doesn't hook into the device tree, mapping da number to umass number
> can be tricky in the arbitrary case.
> 
> devinfo -v | grep umass
>  umass0 pnpinfo vendor=0x054c product=0x014d devclass=0x00 devsubclass=0x00 release=0x0110 sernum="0052450548137984" intclass=0x08 intsubclass= at port=0 interface=0
> 
> : How does one read and write data to the device using /dev/ugen?
> 
> One can't.  You can't have multiple drivers attach to the same
> hardware.  They would interfere with each other unless there was some
> sort of time domain sharing of the device.  Even that would be, ummm,
> challanging in the arbitrary general case (but I want to get the
> serial number of my disk that's mounted, why can't I do that?).
> Arbitrary sharing is tough to do.  Since ugen is so arbitrary in what
> you can do with it, I don't imagine it would ever be implemented.
> 
> Another option would be to do what we do with pci already, and have a
> small set of information that we can query the device in a
> non-distruptive (mostly) way and expand that to usb.  The usb bus
> (well uhub, since it is the usb bus) would create device nodes that
> could be querried for standard information.  We've started doing this
> with pccard and cardbus, so you can now get, eg, the CIS, the power
> states (well, that's in my mind/tree right now), etc.
> 
> Warner
> 
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"
> 

Looking at the man page for devinfo(8), it also contains a reference to
devinfo(3).  When examining the information for devinfo(3), I have come
to the conclusion that this is exactly what I was looking for.

I noticed a blurb in the man page for devinfo(3) that the interface is
subject to refinement?  Are there any plans to alter this interface in
future versions?

Thank You.
-- 
Daniel Rudy


More information about the freebsd-hackers mailing list