[USB] JetFlash TS1GJF2B 2.00 Attempt to query devicesizefailed:
UNIT ATTENTION
Julian Elischer
julian at elischer.org
Mon Jan 10 17:36:17 PST 2005
Wilkinson, Alex wrote:
> >
> >
> >>
> >>Hi all,
> >>
>
>
> >we may need to make it use a quirk to use a different read capacity command
> >or skip it..
> >
> >I'll have to look to remember what collection of 'quirks' we have in our
> >collection.
>
>Okay, well can someone please define what is meant by a "Quirk" ?
>Once that is done can someone please recommend to me the necessary
>quirk that I need to get this device working.
>
>
there are two sets of "quirks" involved here..
umass acts as a connector between the CAM (e.g. SCSI) system and
the USB system.
There are USB quirks
defined in:
src/sys/dev/usb/ usb_quirks.c and usb_quirks.h
basically if a specific USB device is seen then the USB code should do
something
in a different manner to normal.
THe currently defined USB quirks are:
struct usbd_quirks {
u_int32_t uq_flags; /* Device problems: */
#define UQ_NO_SET_PROTO 0x0001 /* cannot handle SET PROTOCOL. */
#define UQ_SWAP_UNICODE 0x0002 /* has some Unicode strings swapped. */
#define UQ_MS_REVZ 0x0004 /* mouse has Z-axis reversed */
#define UQ_NO_STRINGS 0x0008 /* string descriptors are broken. */
#define UQ_BAD_ADC 0x0010 /* bad audio spec version number. */
#define UQ_BUS_POWERED 0x0020 /* device is bus powered, despite claim */
#define UQ_BAD_AUDIO 0x0040 /* device claims audio class, but isn't */
#define UQ_SPUR_BUT_UP 0x0080 /* spurious mouse button up events */
#define UQ_AU_NO_XU 0x0100 /* audio device has broken extension unit */
#define UQ_POWER_CLAIM 0x0200 /* hub lies about power status */
#define UQ_AU_NO_FRAC 0x0400 /* don't adjust for fractional samples */
#define UQ_AU_INP_ASYNC 0x0800 /* input is async despite claim of
adaptive */
#define UQ_ASSUME_CM_OVER_DATA 0x1000 /* modem device breaks on cm over
data */
#define UQ_BROKEN_BIDIR 0x2000 /* printer has broken bidir mode */
};
There are CAM/SCSI quirks.
src/sys/cam
for disks theae are in :
scsi/scsi_da.c
in the array
static struct da_quirk_entry da_quirk_table[] =
{
/* SPI, FC devices */
{
/*
* Fujitsu M2513A MO drives.
* Tested devices: M2513A2 firmware versions 1200 & 1300.
* (dip switch selects whether T_DIRECT or T_OPTICAL device)
* Reported by: W.Scholten <whs at xs4all.nl>
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "FUJITSU", "M2513A", "*"},
/*quirks*/ DA_Q_NO_SYNC_CACHE
},
{
[...]
/* USB mass storage devices supported by umass(4) */
{
/*
* EXATELECOM (Sigmatel) i-Bead 100/105 USB Flash MP3 Player
* PR: kern/51675
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "EXATEL", "i-BEAD10*", "*"},
/*quirks*/ DA_Q_NO_SYNC_CACHE
},
{
/*
* Power Quotient Int. (PQI) USB flash key
* PR: kern/53067
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "Generic*", "USB Flash
Disk*",
"*"}, /*quirks*/ DA_Q_NO_SYNC_CACHE
},
{
/*
* Creative Nomad MUVO mp3 player (USB)
* PR: kern/53094
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "CREATIVE",
"NOMAD_MUVO", "*"},
/*quirks*/ DA_Q_NO_SYNC_CACHE|DA_Q_NO_PREVENT
},
{
/*
* Jungsoft NEXDISK USB flash key
* PR: kern/54737
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "JUNGSOFT", "NEXDISK*",
"*"},
/*quirks*/ DA_Q_NO_SYNC_CACHE
},
{
/*
* FreeDik USB Mini Data Drive
* PR: kern/54786
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "FreeDik*", "Mini Data
Drive",
"*"}, /*quirks*/ DA_Q_NO_SYNC_CACHE
},
{
/*
* Sigmatel USB Flash MP3 Player
* PR: kern/57046
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "SigmaTel", "MSCN", "*"},
/*quirks*/ DA_Q_NO_SYNC_CACHE|DA_Q_NO_PREVENT
},
{
/*
* Neuros USB Digital Audio Computer
* PR: kern/63645
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "NEUROS", "dig. audio
comp.",
"*"}, /*quirks*/ DA_Q_NO_SYNC_CACHE
},
{
/*
* SEAGRAND NP-900 MP3 Player
* PR: kern/64563
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "SEAGRAND", "NP-900*", "*"},
/*quirks*/ DA_Q_NO_SYNC_CACHE|DA_Q_NO_PREVENT
},
{
/*
* iRiver iFP MP3 player (with UMS Firmware)
* PR: kern/54881, i386/63941, kern/66124
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "iRiver", "iFP*", "*"},
/*quirks*/ DA_Q_NO_SYNC_CACHE
},
{
/*
* Frontier Labs NEX IA+ Digital Audio Player, rev 1.10/0.01
* PR: kern/70158
*/
{T_DIRECT, SIP_MEDIA_REMOVABLE, "FL" , "NexIA+*", "*"},
/*quirks*/ DA_Q_NO_SYNC_CACHE
},
};
More information about the freebsd-usb
mailing list