| Summary: | Cannot mount an Olympus D-370 camera as a umass device | ||
|---|---|---|---|
| Product: | Base System | Reporter: | Bryan Liesner <bleez> |
| Component: | kern | Assignee: | Nick Hibma <n_hibma> |
| Status: | Closed FIXED | ||
| Severity: | Affects Only Me | ||
| Priority: | Normal | ||
| Version: | Unspecified | ||
| Hardware: | Any | ||
| OS: | Any | ||
Responsible Changed From-To: freebsd-bugs->n_hibma USB is my turf. State Changed From-To: open->feedback Committed to -CURRENT, thanks! Note that I used a pattern of "D-*" instead of the "D*" in your patch, so as to match the other quirks. Can you confirm that this pattern is suitable for your camera? You didn't include any umass/da probe messages in the bug report. I'll merge the change into -stable after I get confirmation from you that the D-* pattern is OK. State Changed From-To: feedback->closed Fixed in both -current and -stable now. Thanks! |
This applies to an Olympus D-370 digital camera with storage class usb. After compiling a kernel with scbus, da, pass, and umass support, mount_msdos /dev/da0s1 /mnt gives the following result: Oct 13 07:50:18 gravy /kernel: (da0:umass-sim0:0:0:0): READ(06). CDB: 8 0 0 0 1 Oct 13 07:50:18 gravy /kernel: (da0:umass-sim0:0:0:0): ILLEGAL REQUEST asc:20,0 Oct 13 07:50:18 gravy /kernel: (da0:umass-sim0:0:0:0): Invalid command operation Oct 13 07:50:18 gravy /kernel: da0: reading primary partition table: error reading fsbn 0 ~ Fix: Apply this patch: static d_open_t daopen;--6OQsoEISA7ktUbw42Jhq9iJgatogoErthgJUXgxwTEqWs7YZ Content-Type: text/plain; name="file.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="file.diff" --- /usr/src/sys/cam/scsi/scsi_da.c Mon Sep 24 11:23:55 2001 +++ scsi_da.c Sat Oct 13 07:29:06 2001 @@ -243,12 +243,20 @@ * do not support READ_6 commands, only READ_10. */ {T_DIRECT, SIP_MEDIA_REMOVABLE, "Sony", "Sony DSC", "*"}, /*quirks*/ DA_Q_NO_6_BYTE|DA_Q_NO_SYNC_CACHE }, { + /* + * Olympus D series cameras do not support READ_6 + * commands + */ + {T_DIRECT, SIP_MEDIA_REMOVABLE, "OLYMPUS", "D*", "*"}, + /*quirks*/ DA_Q_NO_6_BYTE + }, + { {T_OPTICAL, SIP_MEDIA_REMOVABLE, "FUJITSU", "MCF3064AP", "*"}, /*quirks*/ DA_Q_NO_6_BYTE } }; How-To-Repeat: Try to mount the camera as described above