opnsense-src/sys/dev/usb
Bjoern A. Zeeb 30f6e37522 dwc3: add ACPI attachment
Split the current FDT-only implementation up into an FDT and an
ACPI part reusing and sharing as much code as possible (thanks mw!).

This makes the Synopsis XHCI root hubs attach correctly on SolidRun's
HoenyComb instead of just the generic XHCI root and this means we
are also doing proper chip setup and applying the quirk needed there [1].

There is one problem with ACPI attachment in that it uses the generic
XHCI PNP ID.  So we need to do extra checks in order to not claim
all xhci, which means we check for a known quirk to be present
in acpi_probe.  Long term this isn't scaling and this was discussed
in SolidRun's Discord Channel in 2021 with the intend that "jnettlet"
will take this to a steering committee.  Since then ACPI has kind-of
become a technology non grata (due to not getting changes into Linux
timely) so it is unclear if this will ever happen.  If there will be
further hardware with dwc3/ACPI we should go and make sure this problem
gets solved.

[1] 24698f90b7/Silicon/NXP/LX2160A/AcpiTables/Dsdt/Usb.asl

Reviewed by:		manu, mw
Differential Revision:	https://reviews.freebsd.org/D32256

(cherry picked from commit fbb5cb66f7)
2022-07-18 01:00:21 +00:00
..
controller dwc3: add ACPI attachment 2022-07-18 01:00:21 +00:00
gadget usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
input uhid(4): Don't read-ahead from the USB IN endpoint. 2022-06-30 11:39:43 +02:00
misc Fix typo on "Celsius" 2021-12-06 08:55:55 -07:00
net Create wrapper for Giant taken for newbus 2022-06-21 17:13:20 +02:00
quirk Add devices and quirks for some Olympus cameras. 2022-04-14 09:40:37 +10:00
serial uchcom(4): Add new USB ID. 2022-06-20 13:08:39 +02:00
storage usb(4): Automagically apply all quirks for USB mass storage devices. 2022-03-03 15:41:12 +01:00
template usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
video usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
wlan urtw(4): Adjust all pause calls to use milliseconds instead of ticks. 2022-06-16 04:55:52 +02:00
ufm_ioctl.h Regularize my copyright notice 2019-12-04 16:56:11 +00:00
uftdiio.h
uled_ioctl.h
usb.h Narrow down the probe range for if_ure(4) compatible devices 2021-07-10 21:17:29 +02:00
usb_bus.h Make USB statistics per device instead of per bus. 2019-12-27 20:29:13 +00:00
usb_busdma.c Fix busdma resource leak on usb device detach. 2021-10-06 09:36:02 -06:00
usb_busdma.h Fix busdma resource leak on usb device detach. 2021-10-06 09:36:02 -06:00
usb_cdc.h
usb_controller.h usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
usb_core.c
usb_core.h Use more standard types for manipulating pointers. 2020-12-16 00:27:28 +00:00
usb_debug.c Update usb_timings_sysctl_handler() to accept any value for timings between 2021-06-02 13:25:20 +02:00
usb_debug.h
usb_dev.c usb(4): Fix for use after free in combination with EVDEV_SUPPORT. 2021-11-02 09:37:25 +01:00
usb_dev.h
usb_device.c Create wrapper for Giant taken for newbus 2022-06-21 17:13:20 +02:00
usb_device.h Refresh the USB device strings when a USB device is re-enumerated. 2020-05-11 20:55:04 +00:00
usb_dynamic.c
usb_dynamic.h
usb_endian.h
usb_error.c
usb_fdt_support.c Add common support functions for USB devices configured via FDT data. 2019-05-19 16:56:59 +00:00
usb_fdt_support.h Add common support functions for USB devices configured via FDT data. 2019-05-19 16:56:59 +00:00
usb_freebsd.h usb(4): Stop checking for failures from malloc(M_WAITOK). 2020-07-22 14:32:47 +00:00
usb_freebsd_loader.h usb(4): Stop checking for failures from malloc(M_WAITOK). 2020-07-22 14:32:47 +00:00
usb_generic.c usb(4): Factor out the usb_check_request() function. 2022-03-10 09:18:00 +01:00
usb_generic.h Implement the USB_GET_DEVICEINFO ioctl(2) for uhid(4). 2020-10-31 21:53:23 +00:00
usb_handle_request.c usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
usb_hid.c Factor-out hardware-independent part of USB HID support to new module 2021-01-08 02:18:42 +03:00
usb_hub.c XHCI: clear warm and port reset 2022-07-01 13:50:19 +00:00
usb_hub.h
usb_hub_acpi.c usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
usb_hub_private.h usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
usb_if.m
usb_ioctl.h hid: Import hidraw(4) - driver for access to raw HID device data 2021-01-08 02:18:43 +03:00
usb_lookup.c usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
usb_mbuf.c usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
usb_mbuf.h
usb_msctest.c usb(4): Automagically apply all quirks for USB mass storage devices. 2022-03-03 15:41:12 +01:00
usb_msctest.h usb(4): Automagically apply all quirks for USB mass storage devices. 2022-03-03 15:41:12 +01:00
usb_parse.c Improve handling of alternate settings in the USB stack. 2020-12-15 11:51:17 +00:00
usb_pci.h
usb_pf.c usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
usb_pf.h Fix build of USB bootloader code by adding checks for _STANDALONE being defined. 2020-11-18 13:22:22 +00:00
usb_process.c usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
usb_process.h
usb_request.c Improve handling of alternate settings in the USB stack. 2020-12-15 12:05:07 +00:00
usb_request.h
usb_transfer.c usb(3): Fix a few typos in source code comments 2022-04-09 08:08:15 +02:00
usb_transfer.h Factor out repeated code in the USB controller drivers to avoid bugs 2022-03-10 09:29:19 +01:00
usb_util.c usb(4): Factor out the usb_check_request() function. 2022-03-10 09:18:00 +01:00
usb_util.h usb(4): Factor out the usb_check_request() function. 2022-03-10 09:18:00 +01:00
usbdevs Add devices and quirks for some Olympus cameras. 2022-04-14 09:40:37 +10:00
usbdi.h Improve handling of alternate settings in the USB stack. 2020-12-15 12:05:07 +00:00
usbdi_util.h
usbhid.h hid: Chase for HID function name changes in existing USB HID drivers 2021-01-08 02:18:42 +03:00