tail head cat sleep
QR code linking to this page

Manual Pages  — HIDQUIRK

NAME

hidquirk – HID quirks module

CONTENTS

SYNOPSIS

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

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

hidquirk_load="YES"

DESCRIPTION

The hidquirk module provides support for adding quirks for HID devices
HQ_HID_IGNORE
  device should be ignored by hid class
HQ_KBD_BOOTPROTO
  device should set the boot protocol
HQ_MS_BOOTPROTO
  device should set the boot protocol
HQ_MS_BAD_CLASS
  doesn't identify properly
HQ_MS_LEADING_BYTE
  mouse sends an unknown leading byte
HQ_MS_REVZ
  mouse has Z-axis reversed
HQ_MS_VENDOR_BTN
  mouse has buttons in vendor usage page
HQ_SPUR_BUT_UP
  spurious mouse button up events
HQ_MT_TIMESTAMP
  Multitouch device exports HW timestamps 0x1b5a01

See /sys/dev/hid/hidquirk.h for the complete list of supported quirks.

LOADER TUNABLE

The following tunable can be set at the loader(8) prompt before booting the kernel, or stored in loader.conf(5).
hw.hid.quirk.%d
  The value is a string whose format is:
"BusId VendorId ProductId LowRevision HighRevision HQ_QUIRK,... "

Installs the quirks HQ_QUIRK,... for all HID devices matching BusId and VendorId and ProductId which have a hardware revision between and including LowRevision and HighRevision.

BusId, VendorId, ProductId, LowRevision and HighRevision are all 16 bits numbers which can be decimal or hexadecimal based.

A maximum of 100 variables hw.hid.quirk.0, .1, ..., .99 can be defined.

If a matching entry is found in the kernel's internal quirks table, it is replaced by the new definition.

Else a new entry is created given that the quirk table is not full.

The kernel iterates over the hw.hid.quirk.N variables starting at N = 0 and stops at N = 99 or the first non-existing one.

EXAMPLES

To install a quirk at boot time, place one or several lines like the following in loader.conf(5):
hw.hid.quirk.0="0x18 0x6cb 0x1941 0 0xffff HQ_MT_TIMESTAMP"

HISTORY

The hidquirk module appeared in FreeBSD 13.0 .

AUTHORS

The hidquirk driver was written by Hans Petter Selasky <Mt hselasky@FreeBSD.org> for usb(4) subsystem and adopted to hid(4) by Vladimir Kondratyev <Mt wulf@FreeBSD.org>. This manual page is based on usb_quirk(4) manual page written by Nick Hibma <Mt n_hibma@FreeBSD.org>.

HIDQUIRK (4) September 16, 2020

tail head cat sleep
QR code linking to this page


Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

The wonderful thing about standards is that there are so many of them to choose from.
— Grace Murray Hopper