opnsense-src/sys/dev/usb
Bjoern A. Zeeb fbb5cb66f7 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
MFC after:		10 days
Differential Revision:	https://reviews.freebsd.org/D32256
2022-07-06 11:26:34 +00:00
..
controller dwc3: add ACPI attachment 2022-07-06 11:26:34 +00:00
gadget usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
input uhid(4): Don't read-ahead from the USB IN endpoint. 2022-06-23 21:11:24 +02:00
misc usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
net usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
quirk Add USB ID and quirks for Huawei E3372 2022-04-28 08:42:30 +02:00
serial uchcom(4): Add new USB ID. 2022-06-12 16:42:03 +02:00
storage usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
template usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
video usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
wlan upgt(4): Adjust all pause calls to use milliseconds instead of ticks. 2022-06-09 15:18:02 +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-06-04 15:51:01 +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-09-28 13:29:10 -06:00
usb_busdma.h Fix busdma resource leak on usb device detach. 2021-09-28 13:29:10 -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-05-18 15:52:41 +02:00
usb_debug.h usb: Add a __usbdebug_used for variables only used under #ifdef USB_DEBUG. 2022-04-13 16:08:20 -07:00
usb_dev.c usb: real freebsd32 support for most ioctls 2021-12-17 21:28:13 +00:00
usb_dev.h usb: add 32-bit compat for FIFOs 2021-12-17 21:28:14 +00:00
usb_device.c usb: Respect NO_INQUIRY quirk during device enumeration 2022-04-28 08:42:26 +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
usb_fdt_support.h
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-03 10:24:24 +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-06-15 21:10:01 +00:00
usb_hub.h
usb_hub_acpi.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
usb_hub_private.h Add USB UEFI locator support 2022-03-01 08:06:42 -07:00
usb_if.m
usb_ioctl.h usb: remove COMPAT_32BIT ifdefs 2021-12-17 21:28:39 +00: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: Add a __usbdebug_used for variables only used under #ifdef USB_DEBUG. 2022-04-13 16:08:20 -07:00
usb_msctest.h usb(4): Automagically apply all quirks for USB mass storage devices. 2022-02-24 10:28:55 +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-02 10:14:32 +02:00
usb_transfer.h Cleanup unused USB enums. 2021-07-15 12:38:42 +02:00
usb_util.c usb(4): Factor out the usb_check_request() function. 2022-03-03 10:24:24 +01:00
usb_util.h usb(4): Factor out the usb_check_request() function. 2022-03-03 10:24:24 +01:00
usbdevs Add USB ID and quirks for Huawei E3372 2022-04-28 08:42:30 +02:00
usbdi.h Send a zero-length-packet first when opening a BULK endpoint for USB serial 2021-07-15 12:11:53 +02: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