sourCEntral - mobile manpages

pdf

USB_QUIRK(4) BSD Kernel Interfaces Manual USB_QUIRK(4)

NAME

usb_quirk — USB quirks module

SYNOPSIS

To compile this module into the kernel, place the following line in your kernel configuration file:

device ucom

Alternatively, to load the module at boot time, place the following line in loader.conf(5):

usb_quirk_load="YES"

DESCRIPTION

The usb_quirk module provides support for dynamically adding and removing quirks for USB devices with usbconfig(5).

General quirks:
UQ_AUDIO_SWAP_LR

swap left and right channels

UQ_AU_INP_ASYNC

input is async despite claim of adaptive

UQ_AU_NO_FRAC

don’t adjust for fractional samples

UQ_AU_NO_XU

audio device has broken extension unit

UQ_BAD_ADC

bad audio spec version number

UQ_BAD_AUDIO

device claims audio class, but isn’t

UQ_BROKEN_BIDIR

printer has broken bidir mode

UQ_BUS_POWERED

device is bus powered, despite claim

UQ_HID_IGNORE

device should be ignored by hid class

UQ_KBD_IGNORE

device should be ignored by kbd class

UQ_KBD_BOOTPROTO

device should set the boot protocol

UQ_MS_BAD_CLASS

doesn’t identify properly

UQ_MS_LEADING_BYTE

mouse sends an unknown leading byte

UQ_MS_REVZ

mouse has Z-axis reversed

UQ_NO_STRINGS

string descriptors are broken

UQ_OPEN_CLEARSTALL

device needs clear endpoint stall

UQ_POWER_CLAIM

hub lies about power status

UQ_SPUR_BUT_UP

spurious mouse button up events

UQ_SWAP_UNICODE

has some Unicode strings swapped

UQ_CFG_INDEX_1

select configuration index 1 by default

UQ_CFG_INDEX_2

select configuration index 2 by default

UQ_CFG_INDEX_3

select configuration index 3 by default

UQ_CFG_INDEX_4

select configuration index 4 by default

UQ_CFG_INDEX_0

select configuration index 0 by default

UQ_ASSUME_CM_OVER_DATA

assume cm over data feature

USB Mass Storage Quirks
UQ_MSC_NO_TEST_UNIT_READY

send start/stop instead of TUR

UQ_MSC_NO_RS_CLEAR_UA

does not reset Unit Att.

UQ_MSC_NO_START_STOP

does not support start/stop

UQ_MSC_NO_GETMAXLUN

does not support get max LUN

UQ_MSC_NO_INQUIRY

fake generic inq response

UQ_MSC_NO_INQUIRY_EVPD

does not support inq EVPD

UQ_MSC_NO_SYNC_CACHE

does not support sync cache

UQ_MSC_SHUTTLE_INIT

requires Shuttle init sequence

UQ_MSC_ALT_IFACE_1

switch to alternate interface 1

UQ_MSC_FLOPPY_SPEED

does floppy speeds (20kb/s)

UQ_MSC_IGNORE_RESIDUE

gets residue wrong

UQ_MSC_WRONG_CSWSIG

uses wrong CSW signature

UQ_MSC_RBC_PAD_TO_12

pad RBC requests to 12 bytes

UQ_MSC_READ_CAP_OFFBY1

reports sector count, not max sec.

UQ_MSC_FORCE_SHORT_INQ

does not support full inq.

UQ_MSC_FORCE_WIRE_BBB

force BBB wire protocol

UQ_MSC_FORCE_WIRE_CBI

force CBI wire protocol

UQ_MSC_FORCE_WIRE_CBI_I

force CBI with int. wire protocol

UQ_MSC_FORCE_PROTO_SCSI

force SCSI command protocol

UQ_MSC_FORCE_PROTO_ATAPI

force ATAPI command protocol

UQ_MSC_FORCE_PROTO_UFI

force UFI command protocol

UQ_MSC_FORCE_PROTO_RBC

force RBC command protocol

Mass Storage Change (u3g) quirks:
UQ_MSC_EJECT_HUAWEI

ejects after Huawei USB command

UQ_MSC_EJECT_SIERRA

ejects after Sierra USB command

UQ_MSC_EJECT_SCSIEJECT

ejects after SCSI eject command 0x1b0000000200

UQ_MSC_EJECT_REZERO

ejects after SCSI rezero command 0x010000000000

UQ_MSC_EJECT_ZTESTOR

ejects after ZTE SCSI command 0x850101011801010101010000

UQ_MSC_EJECT_CMOTECH

ejects after C-motech SCSI command 0xff52444556434847

UQ_MSC_EJECT_WAIT

wait for the device to eject

UQ_MSC_EJECT_SAEL_M460

ejects after Sael USB commands

UQ_MSC_EJECT_HUAWEISCSI

ejects after Huawei SCSI command 0x11060000000000000000000000000000

UQ_MSC_EJECT_TCT

ejects after TCT SCSI command 0x06f504025270

See /sys/dev/usb/quirk/usb_quirk.h for the complete list of supported quirks.

EXAMPLES

After attaching a u3g device which appears as a USB device on ugen0.3:

usbconfig -d ugen0.3 add_quirk UQ_MSC_EJECT_WAIT

SEE ALSO

usb_quirk(4), usbconfig(5)

HISTORY

The usb_quirk module appeared in FreeBSD 8.0, and was written by Hans Petter Selasky 〈 hselasky AT FreeBSD DOT org〉 . This manual page was written by Nick Hibma 〈 n_hibma AT FreeBSD DOT org〉 .

BSD November 9, 2010 BSD

pdf