opnsense-src/sys/dev/usb/controller
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
..
atmegadci.c atmegadci: eliminate unused variables sc, ep_no 2022-04-04 22:30:23 -06:00
atmegadci.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
avr32dci.c Fix undefined behaviour in the USB controllers 2022-01-12 13:53:19 +00:00
avr32dci.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
dwc3.c dwc3: add ACPI attachment 2022-07-06 11:26:34 +00:00
dwc3.h dwc3: add more quirks and checks 2022-07-03 22:17:35 +00:00
dwc_otg.c usb(4): Remove a double word in a source code comment 2022-04-09 11:02:23 +02:00
dwc_otg.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
dwc_otg_acpi.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
dwc_otg_fdt.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
dwc_otg_fdt.h
dwc_otg_hisi.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
dwc_otgreg.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
ehci.c Factor out repeated code in the USB controller drivers to avoid bugs 2021-07-10 20:59:00 +02:00
ehci.h usb: clean up empty lines in .c and .h files 2020-09-01 21:26:44 +00:00
ehci_fsl.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
ehci_imx.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
ehci_msm.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
ehci_mv.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
ehci_pci.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
ehcireg.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
generic_ehci.c Split out the attachment from the generic-ehci driver 2019-10-03 18:53:03 +00:00
generic_ehci.h Split out the attachment from the generic-ehci driver 2019-10-03 18:53:03 +00:00
generic_ehci_acpi.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
generic_ehci_fdt.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
generic_ohci.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
generic_usb_if.m Remove "all rights reserved" from copyright for the file I own. 2019-12-03 21:00:45 +00:00
generic_xhci.c Add support for USB 3.0 XHCI via ACPI 2019-05-08 15:42:39 +00:00
generic_xhci.h Add support for USB 3.0 XHCI via ACPI 2019-05-08 15:42:39 +00:00
generic_xhci_acpi.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
generic_xhci_fdt.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
musb_otg.c musb: eliminate write only variable sc 2022-04-04 22:30:26 -06:00
musb_otg.h Use a table to find the endpoint configuration 2018-03-21 15:17:54 +00:00
musb_otg_allwinner.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
ohci.c usb: Add a __usbdebug_used for variables only used under #ifdef USB_DEBUG. 2022-04-13 16:08:20 -07:00
ohci.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
ohci_pci.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
ohcireg.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uhci.c uhci: Remove write-only variable. 2022-04-06 16:45:27 -07:00
uhci.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
uhci_pci.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
uhcireg.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
usb_controller.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
usb_nop_xceiv.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
uss820dci.c uss820dci: eliminate unused variables sc, ep_no 2022-04-04 22:30:31 -06:00
uss820dci.h sys/dev: further adoption of SPDX licensing ID tags. 2017-11-27 14:52:40 +00:00
xhci.c USB: add quirks to XHCI 2022-06-15 21:08:58 +00:00
xhci.h USB: add quirks to XHCI 2022-06-15 21:08:58 +00:00
xhci_pci.c usb: Remove unused devclass arguments to DRIVER_MODULE. 2022-05-06 15:46:57 -07:00
xhcireg.h xhci(4): Properly define all basic USB port speeds. 2022-05-04 09:26:38 +02:00