quirks in umass.c?

Barney Wolff barney at databus.com
Fri Dec 31 12:43:28 PST 2004


I'm trying to get my new USB2 LaCie d2 dual-layer dvd burner working on
-current.  The drive is recognized when I plug it in:

Dec 31 15:00:03 lab kernel: umass0: LaCie LaCie d2 Drive USB2, rev 2.00/0.00, addr 2
Dec 31 15:00:03 lab kernel: umass0:2:0:-1: Attached to scbus2
Dec 31 15:00:04 lab kernel: GEOM: new disk cd0
Dec 31 15:00:04 lab kernel: pass2 at umass-sim0 bus 0 target 0 lun 0
Dec 31 15:00:04 lab kernel: pass2: <_NEC DVD_RW ND-3500AG 2.06> Removable CD-ROM SCSI-0 device 
Dec 31 15:00:04 lab kernel: pass2: Serial Number [
Dec 31 15:00:04 lab kernel: pass2: 1.000MB/s transfers
Dec 31 15:00:04 lab kernel: (cd0:umass-sim0:0:0:0): error 6
Dec 31 15:00:04 lab kernel: (cd0:umass-sim0:0:0:0): Unretryable Error
Dec 31 15:00:04 lab kernel: cd0 at umass-sim0 bus 0 target 0 lun 0
Dec 31 15:00:04 lab kernel: cd0: <_NEC DVD_RW ND-3500AG 2.06> Removable CD-ROM SCSI-0 device 
Dec 31 15:00:04 lab kernel: cd0: Serial Number [
Dec 31 15:00:04 lab kernel: cd0: 1.000MB/s transfers
Dec 31 15:00:04 lab kernel: cd0: Attempt to query device size failed: NOT READY, Medium not present
Dec 31 15:00:04 lab kernel: (cd0:umass-sim0:0:0:0): error 6
Dec 31 15:00:04 lab kernel: (cd0:umass-sim0:0:0:0): Unretryable Error
Dec 31 15:00:04 lab kernel: (cd0:umass-sim0:0:0:0): error 6
Dec 31 15:00:04 lab kernel: (cd0:umass-sim0:0:0:0): Unretryable Error

But when I try reading from it (with a dvd movie inserted) it reads the
first 18x32k and then complains: (done on console, so log messages
interpolated)

lab:/home/dvd # dd if=/dev/cd0 of=test.iso bs=32k
(cd0:umass-sim0:0:0:0): READ(10). CDB: 28 0 0 0 1 20 0 0 10 0
(cd0:umass-sim0:0:0:0): CAM Status: SCSI Status Error
(cd0:umass-sim0:0:0:0): SCSI Status: Check Condition
(cd0:umass-sim0:0:0:0): ILLEGAL REQUEST asc:6f,3
(cd0:umass-sim0:0:0:0): Reserved ASC/ASCQ pair
(cd0:umass-sim0:0:0:0): (cd0:umass-sim0:0:0:0): READ(10). CDB: 28 0 0 0 1 20 0 0
 10 0
(cd0:umass-sim0:0:0:0): ILLEGAL REQUEST asc:6f,3
(cd0:umass-sim0:0:0:0): Reserved ASC/ASCQ pair
Unretryable error
(cd0:umass-sim0:0:0:0): error 22
(cd0:umass-sim0:0:0:0): Unretryable Error
(cd0:umass-sim0:0:0:0): cddone: got error 0x16 back
dd: /dev/cd0: Invalid argument
18+0 records in
18+0 records out
589824 bytes transferred in 0.362534 secs (1626948 bytes/sec)

I imagine that I may need a quirks entry in sys/dev/usb/umass.c but have no
idea what protocol etc to try - is it just trial and error?  I will need
to add the device code to usbdevs, but that's the easy part.

If it matters, here's the ehci part of dmesg.boot:

ehci0: <NEC uPD 720100 USB 2.0 controller> mem 0xe2000000-0xe20000ff irq 16 at device 5.2 on pci2
ehci0: Reserved 0x100 bytes for rid 0x10 type 3 at 0xe2000000
ehci0: [GIANT-LOCKED]
ehci_pci_attach: companion usb1
ehci_pci_attach: companion usb2
usb3: <NEC uPD 720100 USB 2.0 controller> on ehci0

The motherboard is a dual-athlon Asus A7M266-D running -current from
12/29/04.

As an aside, if I boot with it plugged in, I get a panic, probably geom.
But that's, for the moment, a secondary concern.

TIA for any hints, and Happy New Year,
Barney Wolff


More information about the freebsd-hardware mailing list