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