summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorPav Lucistnik <pav@FreeBSD.org>2005-12-27 00:35:38 +0000
committerPav Lucistnik <pav@FreeBSD.org>2005-12-27 00:35:38 +0000
commit4f072dfbdc7b2c71852a2f082fb011c857000d5d (patch)
treeb9ed255435bd2ffafba480197d194cefcce6f5f9 /sys
parent7bbff38cc168af5496f53437379dbc8ccc3b73d9 (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/usb/umass.c14
-rw-r--r--sys/dev/usb/usbdevs4
2 files changed, 15 insertions, 3 deletions
diff --git a/sys/dev/usb/umass.c b/sys/dev/usb/umass.c
index b13a047ee68c..9a0305720df8 100644
--- a/sys/dev/usb/umass.c
+++ b/sys/dev/usb/umass.c
@@ -202,6 +202,7 @@ typedef struct {
typedef struct {
uDWord dCSWSignature;
# define CSWSIGNATURE 0x53425355
+# define CSWSIGNATURE_IMAGINATION_DBX1 0x43425355
# define CSWSIGNATURE_OLYMPUS_C1 0x55425355
uDWord dCSWTag;
uDWord dCSWDataResidue;
@@ -347,6 +348,10 @@ Static struct umass_devdescr_t umass_devdescrs[] = {
UMASS_PROTO_ATAPI | UMASS_PROTO_CBI_I,
NO_TEST_UNIT_READY | NO_START_STOP
},
+ { USB_VENDOR_IMAGINATION, USB_PRODUCT_IMAGINATION_DBX1, RID_WILDCARD,
+ UMASS_PROTO_SCSI | UMASS_PROTO_BBB,
+ WRONG_CSWSIG
+ },
{ USB_VENDOR_INSYSTEM, USB_PRODUCT_INSYSTEM_USBCABLE, RID_WILDCARD,
UMASS_PROTO_ATAPI | UMASS_PROTO_CBI,
NO_TEST_UNIT_READY | NO_START_STOP | ALT_IFACE_1
@@ -1616,9 +1621,12 @@ umass_bbb_state(usbd_xfer_handle xfer, usbd_private_handle priv,
DIF(UDMASS_BBB, umass_bbb_dump_csw(sc, &sc->csw));
/* Translate weird command-status signatures. */
- if ((sc->quirks & WRONG_CSWSIG) &&
- UGETDW(sc->csw.dCSWSignature) == CSWSIGNATURE_OLYMPUS_C1)
- USETDW(sc->csw.dCSWSignature, CSWSIGNATURE);
+ if (sc->quirks & WRONG_CSWSIG) {
+ u_int32_t dCSWSignature = UGETDW(sc->csw.dCSWSignature);
+ if (dCSWSignature == CSWSIGNATURE_OLYMPUS_C1 ||
+ dCSWSignature == CSWSIGNATURE_IMAGINATION_DBX1)
+ USETDW(sc->csw.dCSWSignature, CSWSIGNATURE);
+ }
int Residue;
Residue = UGETDW(sc->csw.dCSWDataResidue);
diff --git a/sys/dev/usb/usbdevs b/sys/dev/usb/usbdevs
index cf3bb83fe4c1..66ba053e67c9 100644
--- a/sys/dev/usb/usbdevs
+++ b/sys/dev/usb/usbdevs
@@ -506,6 +506,7 @@ vendor LINKSYS4 0x13b1 Linksys
vendor SHARK 0x13d2 Shark
vendor SILICOM 0x1485 Silicom
vendor RALINK 0x148f Ralink Technology
+vendor IMAGINATION 0x149a Imagination Technologies
vendor CONCEPTRONIC 0x14b2 Conceptronic
vendor SILICONPORTALS 0x1527 Silicon Portals
vendor SOHOWARE 0x15e8 SOHOware
@@ -978,6 +979,9 @@ product HP2 C500 0x6002 PhotoSmart C500
/* IBM Corporation */
product IBM USBCDROMDRIVE 0x4427 USB CD-ROM Drive
+/* Imagination Technologies products */
+product IMAGINATION DBX1 0x2107 DBX1 DSP core
+
/* Inside Out Networks products */
product INSIDEOUT EDGEPORT4 0x0001 EdgePort/4 serial ports