usb/130122: [hpsusb] DVD drive detects as 'da' device

Hans Petter Selasky hselasky at c2i.net
Fri Jan 2 23:26:21 UTC 2009


On Friday 02 January 2009, M. Warner Losh wrote:
> In message: <200901022123.57193.hselasky at c2i.net>
>
>             Hans Petter Selasky <hselasky at c2i.net> writes:
> : On Friday 02 January 2009, M. Warner Losh wrote:
> : > >Number:         130122
> : > >Category:       usb
> : > >Synopsis:       [hpsusb] DVD drive detects as 'da' device
> : > >Confidential:   no
> : > >Severity:       serious
> : > >Priority:       medium
> : > >Responsible:    freebsd-usb
> : > >State:          open
> : > >Quarter:
> : > >Keywords:
> : > >Date-Required:
> : > >Class:          sw-bug
> : > >Submitter-Id:   current-users
> : > >Arrival-Date:   Fri Jan 02 19:30:04 UTC 2009
> : > >Closed-Date:
> : > >Last-Modified:
> : > >Originator:     M. Warner Losh
> : > >Release:        FreeBSD 8.0-CURRENT amd64
> : > >Organization:
> : >
> : > FreeBSD
> : >
> : > >Environment:
> : >
> : > System: FreeBSD lighthouse 8.0-CURRENT FreeBSD 8.0-CURRENT #0
> : > r185338:186501M: Fri Dec 26 17:56:39 MST 2008
> : > imp at lighthouse:/tmp/imp/obj/cache/svn/head/sys/LIGHTHOUSE amd64
> : >
> : > >Description:
> : >
> : > My externeal usb DVD drive is showing up as 'da' rather than as 'cd'
> : > when using usb2_storage_mass.  When I load usb2_storage_ata it shows
> : > up as a 'cd' device that's usable.  mass should behave as well as ata
> : > in this case, or it should detect that it can't get it right and
> : > refuse to attach things.
> : >
> : > >How-To-Repeat:
> : >
> : > I loaded all the usb2 drivers at runtime:
> : >
> : > kldload usb2_controller_{e,o}hci
> : > kldload usb2_sotrage_mass
> : >
> : > I then plugged in the drive.  This is an external DVD drive.
> : >
> : > ehci0: <ATI SB400 USB 2.0 controller> mem 0xc0002000-0xc0002fff irq 19
> : > at device 19.2 on pci0 ehci0: memory enable already set.
> : > Activate PA 0xc0002000 at VA 0xffffff00c0002000
> : > ehci0: [ITHREAD]
> : > usbus0: EHCI version 1.0
> : > usbus0: <ATI SB400 USB 2.0 controller> on ehci0
> : > usbus0: 480Mbps High Speed USB v2.0
> : > ugen0.1: <ATI> at usbus0
> : > ushub0: <ATI EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0
> : > ushub0: 8 ports with 8 removable, self powered
> : > ohci0: <ATI SB400 USB Controller> mem 0xc0000000-0xc0000fff irq 19 at
> : > device 19.0 on pci0 ohci0: memory enable already set.
> : > Activate PA 0xc0000000 at VA 0xffffff00c0000000
> : > ohci0: [ITHREAD]
> : > usbus1: <ATI SB400 USB Controller> on ohci0
> : > usbus1: 12Mbps Full Speed USB v1.0
> : > ugen1.1: <ATI> at usbus1
> : > ushub1: <ATI OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus1
> : > ushub1: 4 ports with 4 removable, self powered
> : > ohci1: <ATI SB400 USB Controller> mem 0xc0001000-0xc0001fff irq 19 at
> : > device 19.1 on pci0 ohci1: memory enable already set.
> : > Activate PA 0xc0001000 at VA 0xffffff00c0001000
> : > ohci1: [ITHREAD]
> : > usbus2: <ATI SB400 USB Controller> on ohci1
> : > usbus2: 12Mbps Full Speed USB v1.0
> : > ugen2.1: <ATI> at usbus2
> : > ushub2: <ATI OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus2
> : > ushub2: 4 ports with 4 removable, self powered
> : > ugen0.2: <Myson Century, Inc.> at usbus0
> : > umass0: <Mass Storage Class> on usbus0
> : > umass0:  SCSI over Bulk-Only; quirks = 0x0480
> : > umass0:2:0:-1: Attached to scbus2
> : > da0 at umass-sim0 bus 0 target 0 lun 0
> : > da0: <  > Removable Direct Access SCSI-2 device
> : > da0: 40.000MB/s transfers
> : > da0: Attempt to query device size failed: NOT READY, Medium not present
> : >
> : > It should be 'cd1'.
> : >
> : > >Fix:
> : >
> : > Unknown.
> : >
> : > >Release-Note:
> : > >Audit-Trail:
> : > >Unformatted:
> :
> : Hi,
> :
> : Maybe the AutoInstall CD detecter is interfering with your device.
>
> Hmmm...
>
> : Can you use "usbconfig" to dump the device and config descriptors of your
> : CD device?
>
> How?

Run "usbconfig -h".

usbconfig -u xxx -a yyy dump_curr_config_desc
usbconfig -u xxx -a yyy dump_device_desc

>
> : You can also try:
> :
> : kldload usb2_quirk
> : usbconfig add_dev_quirk_vplh <vid> <pid> <lo_rev> <hi_rev> UQ_CFG_INDEX_0
>
> What the heck are these different fields?  vid, pid, etc?

Vendor ID, product ID, lower inclusive revision number, higher inclusive 
revision numer that is used when matching the quirk.

--HPS


More information about the freebsd-usb mailing list