A full implementation of ATAPI USB support would need to translate / filter
certain package types or some devices might not work. No previously working
devices break with the patch, so it is fine to commit.
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
return -1;
// Verify right kind of device
- if (iface->bInterfaceSubClass != US_SC_SCSI
+ if ((iface->bInterfaceSubClass != US_SC_SCSI &&
+ iface->bInterfaceSubClass != US_SC_ATAPI_8070 &&
+ iface->bInterfaceSubClass != US_SC_ATAPI_8020)
|| iface->bInterfaceProtocol != US_PR_BULK) {
dprintf(1, "Unsupported MSC USB device (subclass=%02x proto=%02x)\n"
, iface->bInterfaceSubClass, iface->bInterfaceProtocol);
* MSC flags
****************************************************************/
-#define US_SC_SCSI 0x06
+#define US_SC_ATAPI_8020 0x02
+#define US_SC_ATAPI_8070 0x05
+#define US_SC_SCSI 0x06
-#define US_PR_BULK 0x50
+#define US_PR_BULK 0x50
#define USB_MSC_TYPE_DISK 0x00
#define USB_MSC_TYPE_CDROM 0x05