aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/usb/quirk/usb_quirk.c
Commit message (Collapse)AuthorAgeFilesLines
* Specialize the REALTEK RTL8153 quirk to just rev=0x31fdPoul-Henning Kamp8 days1-1/+1
|
* Quirk Realtek RTL8153 to config#1 so if_cdce claims it. Works much better.Poul-Henning Kamp9 days1-0/+1
|
* Add USB quirk for Creative Stage SE miniJan Biedermann2025-06-111-0/+1
| | | | | | | | | Note: The commit in main was modified for the new macros in main. stable merge will need to use the version originally in #1715 MFC After: 2 weeks Pull Request: https://github.com/freebsd/freebsd-src/pull/1715 Closes: https://github.com/freebsd/freebsd-src/pull/1715
* usb/quirks: Remove overly broad quirksWarner Losh2025-05-071-10/+0
| | | | | | | | | | | | | | | | | | | | Now that we have a safe way to detect the vast majority of problems with SYNCHRONIEZ CACHE, and since I have devices from many of these vendors that work just fine (one of which will hang if you send it a SYNCHROMIZE CACHE), I think these should all be reverted. The details of when they were added are sketchy, the age of the devices in question means these vendors have many generations of products after and the general over-quirking of SYNCHRONIZE CACHE all point to just removing them and adding back specific quirks should any need arise after trying other means to debug. The APPLE quirk was added because the autoquirk code would hang an ipod with RockBox with a reset loop in the firmware. Since it was quirked, it disabled the autoprobe and started working. Now that we've disabled the autoprobe, we can remove it for sure. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D49478
* umass/quirk: Remove useless quirk for Transcend flashWarner Losh2025-03-161-2/+0
| | | | | | | | | | | | | | | I have several of these. They all work without these quirks (either the auto quirk mechanism does the right thing, or a likely soon-to-be-removed vendor catch-all does the right thing, or no probing at all does the right hting). Both PREVENT ALLOW and SYNCHRONIZE CACHE are (a) unimplemented but (b) return the proper asc/ascq code so da just does the right thing, quirk or no. This was a left-over from the days where you'd get scary error messages, but we'd work just fine. Now that the scary error messages are gone (and only a calm one under bootverbose), this can be deleted. Sponsored by: Netflix
* umass/quirks: Remove nonsensical NO_GETMAXLUN quirksWarner Losh2025-03-161-10/+9
| | | | | | | | | | We only try to do a GETMAXLUN query of BBB devices. If we're forcing the device to be CBI, then it's not BBB. Delete the quirks from there. Also, UFI devices are all CBI as well, so remove the quirk from there as well. Confirmed this isn't needed with three different floppy disk drives I have. Sponsored by: Netflix
* usb: correct the rtw8821cu quirk and add another wireless rtw88 deviceBjoern A. Zeeb2024-08-271-1/+1
| | | | | | | | | | | | | | | The RTW8821CU_CD entry in quirks has an invalid lo_rev/hi_rev match entry. Use the different USB_QUIRK macro to match on all of these; the value we currently see is 0x0200 on two different wifi sticks. [1] Also add an entry for the DLINK DWA-181 rev A1, rtw88 USB. Submitted by: phk Tested by: phk Fixes: b3b6a959c85af3aabbde3ef2b80dbd4bf5b6f5a7 [1] Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D46189
* Move support of Realtek 8156/8156B from cdce(4) to ure(4)Li-Wen Hsu2024-08-121-1/+0
| | | | | | | Reviewed by: kevlo, imp, hrs MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45088
* usb: Remove uneeded revision verbosity from quirks listAhmad Khalifa2024-05-111-434/+382
| | | | | | | | | | | | Seperate usb quirks that target specific revisions from those that dont. Alot of the quirks dont use lo_rev and hi_rev, so we can abstract the 0x0000, 0xffff into a macro. [[ This commit is a bit more churn than we like. I carefully reviewed each one and they are all good. The end product is better -- imp ]] Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1153
* usb: Fix quirks listAhmad Khalifa2024-05-111-17/+19
| | | | | | | | | | | In some cases, the USB_QUIRK_VP macro was being misused. Instead of setting quirks to the intended value, the first two supplied quirks would go into lo_rev and hi_rev. Replace it with USB_QUIRK_VO which only takes the needed args. This also makes the Dummy products, which where being used to correctly set vendor only quirks, not necessary. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1153
* usbdevs: add quirk for WD MyPassport Ultra External HDDEugene Grosbein2023-12-031-0/+1
| | | | | | | WD MyPassport Ultra External HDD needs quirk UQ_MSC_NO_TEST_UNIT_READY to attach. MFC after: 3 days
* usb: add quirks for the Genesys GL3220 card readerMazin Fadl2023-10-111-0/+2
| | | | | | | Without these, card hotplugging does not work on the GL3220. PR: 263868 Fixes: 520b88860d7a79 ("usb(4): Automagically apply all quirks [...]")
* usb: add necessary quirks for the NOREL Systems NS1081 SD readerMazin Fadl2023-10-111-0/+2
| | | | | | | Without these, the Norelsys NS1081 is completely defunct. PR: 263868 Fixes: 520b88860d7a79 ("usb(4): Automagically apply all quirks [...]")
* Move (LENOVO, TBT3LAN) from if_ure til if_cdce where it works much betterPoul-Henning Kamp2023-10-111-0/+3
|
* sys: Remove $FreeBSD$: one-line .c comment patternWarner Losh2023-08-161-1/+0
| | | | Remove /^/[*/]\s*\$FreeBSD\$.*\n/
* spdx: The BSD-2-Clause-NetBSD identifier is obsolete, drop -NetBSDWarner Losh2023-05-121-1/+1
| | | | | | | | | The SPDX folks have obsoleted the BSD-2-Clause-NetBSD identifier. Catch up to that fact and revert to their recommended match of BSD-2-Clause. Discussed with: pfg MFC After: 3 days Sponsored by: Netflix
* usb: Add HID_IGNORE quirk for APC Smart-UPS1000Cy Schubert2023-02-281-0/+1
| | | | | | | Without the HID_IGNORE quirk enabled it will appear to be a uhid device. PR: 269729 MFC after: 1 week
* usb: add new scsi_huawei eject3 & eject4 quirksMichael Paepcke2023-02-041-0/+2
| | | | | | | Add new scsi_huawei eject3 & eject4 mode driver to usb quirks Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/633
* umodem: ignore CDC_CM descriptor for baltech smartcard readerSteffen Dirkwinkel2023-01-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CDC_CM descriptor points to the wrong interface for serial port use. Ignore it to use the CDC_UNION descriptor. usbconfig dump (spec at: https://usb.org/sites/default/files/CDC1.2_WMC1.1_012011.zip): ugen0.2: <Baltech AG Smartcard Reader> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (300mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 <Probed by interface class> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0040 idVendor = 0x13ad idProduct = 0xf019 bcdDevice = 0x0100 iManufacturer = 0x0001 <Baltech AG> iProduct = 0x0002 <Smartcard Reader> iSerialNumber = 0x0003 <45031910> bNumConfigurations = 0x0001 Configuration index 0 bLength = 0x0009 bDescriptorType = 0x0002 wTotalLength = 0x0064 bNumInterfaces = 0x0003 bConfigurationValue = 0x0001 iConfiguration = 0x0000 <no string> bmAttributes = 0x0080 bMaxPower = 0x0096 Interface 0 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0000 bNumEndpoints = 0x0001 bInterfaceClass = 0x0003 <HID device> bInterfaceSubClass = 0x0000 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x09 bDescriptorType = 0x21 bDescriptorSubType = 0x11 RAW dump: 0x00 | 0x09, 0x21, 0x11, 0x01, 0x00, 0x01, 0x22, 0xd0, 0x08 | 0x00 Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0081 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0040 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Additional Descriptor bLength = 0x08 bDescriptorType = 0x0b bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x08, 0x0b, 0x01, 0x02, 0x02, 0x02, 0x00, 0x00 Interface 1 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0001 bAlternateSetting = 0x0000 bNumEndpoints = 0x0001 bInterfaceClass = 0x0002 <Communication device> bInterfaceSubClass = 0x0002 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x00 RAW dump: 0x00 | 0x05, 0x24, 0x00, 0x10, 0x01 Additional Descriptor bLength = 0x04 bDescriptorType = 0x24 bDescriptorSubType = 0x02 RAW dump: 0x00 | 0x04, 0x24, 0x02, 0x00 Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x06 RAW dump: 0x00 | 0x05, 0x24, 0x06, 0x01, 0x02 Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x05, 0x24, 0x01, 0x00, 0x01 Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0008 bInterval = 0x0010 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 2 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0002 bAlternateSetting = 0x0000 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a <CDC-data> bInterfaceSubClass = 0x0000 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0086 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0040 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0006 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0040 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Reviewed by: manu MFC after: 1 week Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D37942
* umodem: add quirk to ignore CDC_CM descriptorSteffen Dirkwinkel2023-01-181-0/+1
| | | | | | | | | | | Some devices have CDC_CM descriptors that would point us to the wrong interfaces. Add a quirk to ignore those (prefering the CDC_UNION descriptor effectively) Reviewed by: manu MFC after: 1 week Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D37942
* ums(4): Disable vendor usage page button supportVladimir Kondratyev2022-12-241-0/+3
| | | | | | | | | | | for all devices except Kensington Slimblade Trackball as it brokes some other devices like Contour Rollermouse Red Add a quirk for it as well. Reported by: Atte Peltomäki <koston_AT_iki_DOT_fi> PR: 267922 MFC after: 2 weeks
* USB: add 2 (3) more device IDs for rtw88-usb devices and a quirkBjoern A. Zeeb2022-09-071-0/+1
| | | | | | | | | | | Add DLink DWA-182 rev D1 and generic Realtek RTW8821CU entry found on a Tenda U10 USB WLAN Stick, AC 650 Mbps (and possibly more devices). The latter first presents itself as a CD device with Windows drivers (useless on FreeBSD) first so add a quirk for that we get the wireless device right away. MFC after: 2 weeks While here sort some other Realtek entries by DeviceID.
* Add USB ID and quirks for Huawei E3372Kornel Duleba2022-04-281-0/+2
| | | | | | | | | | | | | | | | Set UQ_MSC_NO_INQUIRY and UQ_MSC_NO_GETMAXLUN quirks for mass storage, which is the initial mode of this dongle. The modem is shipped with at least two firmware versions: 10.X and 11.X, without ability to update to the newer one. The 11.X version works more or less fine, but the 10.X one resets after receiving either an SCSI INQUIRY, or a get_max_lun command. Since both of those are used for automatic quirk detection, this leads to a reset cycle making the device somewhat unusable. Sponsored by: Stormshield Obtained from: Semihalf Reviewed by: hps, wma Differential Revision: https://reviews.freebsd.org/D35076
* Add devices and quirks for some Olympus cameras.Greg Lehey2022-03-231-1/+34
| | | | | | Reviewed by: hps@ Fixes: Problems attaching Olympus cameras. MFC after: 2 weeks
* Add more USB quirks for Kingston devices.Hans Petter Selasky2021-04-221-0/+1
| | | | | | PR: 253855 MFC after: 1 week Sponsored by: Mellanox Technologies // NVIDIA Networking
* Add more USB quirks for Garmin devices.Hans Petter Selasky2021-04-221-0/+2
| | | | | | | | Sort the Garmin products while at it. PR: 254664 MFC after: 1 week Sponsored by: Mellanox Technologies // NVIDIA Networking
* usb: Replace ITUNERNET vendor with MICROCHIP and improve product namesJessica Clarke2020-12-181-2/+2
| | | | | | | | | | | | | | | These Mini-Box LCDs are using Microchip components and sub-licensed product IDs. Whilst here, update the constant names and descriptions for the products to use the names listed on the manufacturer's website rather than vague ones. The picoLCD 4x20 is named that on the manufacturer's website so prefer that name, even though linux-usb.org lists it with the numbers reversed as one might expect. Reviewed by: hselasky Differential Revision: https://reviews.freebsd.org/D27670 Notes: svn path=/head/; revision=368774
* USB umass: add quirk to not probeBjoern A. Zeeb2020-12-011-0/+2
| | | | | | | | | | | | | | | | Some USB WLAN devices have "on-board" storage showing up as umass and making the root mount wait for a very long time. The WLAN drivers know how to deal with that an issue an eject command later when attaching themselves. Introduce a quirk to not probe these devices as umass and avoid hangs and confusion altogether. Reviewed by: hselasky, imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D27434 Notes: svn path=/head/; revision=368246
* Add more USB quirks.Hans Petter Selasky2020-11-121-0/+2
| | | | | | | | | PR: 230038 MFC after: 1 week Sponsored by: Mellanox Technologies // NVIDIA Networking Notes: svn path=/head/; revision=367622
* Add new USB quirk.Hans Petter Selasky2020-10-181-0/+1
| | | | | | | | | | PR: 250422 Submitted by: vidwer+fbsdbugs@gmail.com MFC after: 1 week Sponsored by: Mellanox Technologies // NVIDIA Networking Notes: svn path=/head/; revision=366806
* usb: clean up empty lines in .c and .h filesMateusz Guzik2020-09-011-1/+1
| | | | Notes: svn path=/head/; revision=365084
* Add support for RTL8156, 2.5GbE USB network controller, to if_cdce(4).Hiroki Sato2019-07-101-0/+1
| | | | | | | This chip can be found in Planex USB-LAN2500R. Notes: svn path=/head/; revision=349875
* Add new USB quirk.Hans Petter Selasky2019-02-221-0/+2
| | | | | | | | | PR: 235897 MFC after: 1 week Sponsored by: Mellanox Technologies Notes: svn path=/head/; revision=344477
* Remove duplicate vendor id in r334650. Intenso doesn't have a USB VID.Kevin Lo2019-02-121-1/+1
| | | | Notes: svn path=/head/; revision=344035
* [usb] Add UQ_KBD_BOOTPROTO quirk for Corsair K68 keyboardOleksandr Tymoshenko2019-01-281-0/+2
| | | | | | | | | PR: 222114 Submitted by: Zane C. Bowers-Hadley <vvelox@vvelox.net> MFC after: 1 week Notes: svn path=/head/; revision=343533
* Add new USB quirk.Hans Petter Selasky2019-01-251-0/+1
| | | | | | | | | | PR: 235202 Differential Revision: https://reviews.freebsd.org/D18917 MFC after: 1 week Sponsored by: Mellanox Technologies Notes: svn path=/head/; revision=343453
* Add USB quirk.Hans Petter Selasky2019-01-231-0/+1
| | | | | | | | | Submitted by: Gary Jennejohn <gljennjohn@gmail.com> MFC after: 1 week Sponsored by: Mellanox Technologies Notes: svn path=/head/; revision=343352
* Add KBD_BOOTPROTO quirk for Logitech G510s USB keyboardOleksandr Tymoshenko2019-01-201-0/+1
| | | | | | | | | PR: 232136 Submitted by: dgilbert@eicat.ca MFC after: 1 week Notes: svn path=/head/; revision=343224
* [usb] Add HID_IGNORE quirks for multiple UPS devicesOleksandr Tymoshenko2019-01-181-0/+29
| | | | | | | | | | | | Without HID_IGNORE quirk enabled these models appear in the system as a uhid devices while NUT (Network UPS Tool) expects them to be ugen. PR: 131521 Submitted by: Naoyuki Tai <ntai@smartfruit.com>, John Bayly <john.bayly@tipstrade.net> MFC after: 1 week Notes: svn path=/head/; revision=343156
* [usb] Add quirk for SmartG2 USB memory keyOleksandr Tymoshenko2019-01-161-0/+1
| | | | | | | | | PR: 167001 Submitted by: Daan Vreeken [PA4DAN] <Daan@vitsch.nl> MFC after: 1 week Notes: svn path=/head/; revision=343106
* snd_uaudio: Add quirks for Edirol UA-25EX in advanced driver mode.Hans Petter Selasky2019-01-121-0/+1
| | | | | | | | | | | | Extend the vendor class USB audio quirk to cover devices without the USB audio control descriptor. PR: 234794 MFC after: 1 week Sponsored by: Mellanox Technologies Notes: svn path=/head/; revision=342961
* Add quirk for 128MB Creative Nomad.Warner Losh2019-01-091-0/+2
| | | | | | | | PR: 78984 Submitted by: Mark Kirkwood Notes: svn path=/head/; revision=342878
* Add USB quirk for SPL Crimson Rev 1.Hans Petter Selasky2018-12-271-0/+1
| | | | | | | | | PR: 234380 MFC after: 1 week Sponsored by: Mellanox Technologies Notes: svn path=/head/; revision=342549
* Add new USB quirk.Hans Petter Selasky2018-02-131-0/+2
| | | | | | | | | PR: 225844 MFC after: 1 week Sponsored by: Mellanox Technologies Notes: svn path=/head/; revision=329195
* Add a NO_GETMAXLUN quirk for the JMicron JMS567 USB to SATA bridge, toIan Lepore2018-01-291-0/+1
| | | | | | | prevent lengthy timeout pauses while probing/attaching drives. Notes: svn path=/head/; revision=328528
* sys/dev: further adoption of SPDX licensing ID tags.Pedro F. Giffuni2017-11-271-0/+2
| | | | | | | | | | | | | | | Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error prone - task. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Notes: svn path=/head/; revision=326255
* Add TP-LINK UE300.Kevin Lo2017-11-141-1/+0
| | | | | | | Submitted by: Kris G <netsick@gmail.com> Notes: svn path=/head/; revision=325787
* Add new USB quirk.Hans Petter Selasky2017-11-101-0/+1
| | | | | | | | | Submitted by: Kris G <netsick@gmail.com> Sponsored by: Mellanox Technologies MFC after: 1 week Notes: svn path=/head/; revision=325630
* Add new USB quirk.Hans Petter Selasky2017-09-061-0/+1
| | | | | | | | | PR: 221775 MFC after: 1 week Sponsored by: Mellanox Technologies Notes: svn path=/head/; revision=323220
* usb: Add external "Intenso Memory" disk UQ_MSC_NO_INQUIRY quirkEd Maste2017-08-301-0/+1
| | | | | | | | | | | PR: 221852 Submitted by: Fabian Keil Reviewed by: hselasky Obtained from: ElectroBSD MFC after: 1 week Notes: svn path=/head/; revision=323011