opnsense-src/sys/dev/usb/controller
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
..
atmegadci.c Factor out repeated code in the USB controller drivers to avoid bugs 2022-03-10 09:29:19 +01:00
atmegadci.h
avr32dci.c Make sure the avr32dci_odevd structure is used. 2022-03-10 09:29:22 +01:00
avr32dci.h
dwc3.c dwc3: add ACPI attachment 2022-07-18 01:00:21 +00:00
dwc3.h dwc3: add more quirks and checks 2022-07-18 01:00:21 +00:00
dwc_otg.c usb(4): Remove a double word in a source code comment 2022-04-14 08:12:05 +02:00
dwc_otg.h
dwc_otg_acpi.c
dwc_otg_fdt.c
dwc_otg_fdt.h
dwc_otg_hisi.c
dwc_otgreg.h
ehci.c Factor out repeated code in the USB controller drivers to avoid bugs 2022-03-10 09:29:19 +01:00
ehci.h
ehci_fsl.c
ehci_imx.c
ehci_msm.c
ehci_mv.c
ehci_pci.c Add new USB host controller PCI ID's. 2022-02-24 10:58:16 +01:00
ehcireg.h
generic_ehci.c
generic_ehci.h
generic_ehci_acpi.c
generic_ehci_fdt.c usb: Make ext_resources non-optional 2022-05-16 13:45:36 +02:00
generic_ohci.c usb: Make ext_resources non-optional 2022-05-16 13:45:36 +02:00
generic_usb_if.m
generic_xhci.c
generic_xhci.h
generic_xhci_acpi.c
generic_xhci_fdt.c usb: Make ext_resources non-optional 2022-05-16 13:45:36 +02:00
musb_otg.c Factor out repeated code in the USB controller drivers to avoid bugs 2022-03-10 09:29:19 +01:00
musb_otg.h
musb_otg_allwinner.c musb/allwinner: add support for configuring phy as well as device mode 2020-09-07 06:53:29 +00:00
ohci.c Factor out repeated code in the USB controller drivers to avoid bugs 2022-03-10 09:29:19 +01:00
ohci.h
ohci_pci.c ohci(4): remove support for Sun PCIO-2 USB controllers 2020-12-25 19:47:46 +01:00
ohcireg.h
saf1761_otg.c Factor out repeated code in the USB controller drivers to avoid bugs 2022-03-10 09:29:19 +01:00
saf1761_otg.h
saf1761_otg_boot.c
saf1761_otg_fdt.c
saf1761_otg_reg.h
uhci.c Factor out repeated code in the USB controller drivers to avoid bugs 2022-03-10 09:29:19 +01:00
uhci.h
uhci_pci.c
uhcireg.h
usb_controller.c Create wrapper for Giant taken for newbus 2022-06-21 17:13:20 +02:00
usb_nop_xceiv.c
uss820dci.c Factor out repeated code in the USB controller drivers to avoid bugs 2022-03-10 09:29:19 +01:00
uss820dci.h
xhci.c USB: add quirks to XHCI 2022-07-01 13:50:10 +00:00
xhci.h USB: add quirks to XHCI 2022-07-01 13:50:10 +00:00
xhci_pci.c xhci(4): Add quirk for "Fresco Logic FL1009 USB3.0 xHCI Controller". 2022-03-17 10:55:18 +01:00
xhcireg.h xhci(4): Properly define all basic USB port speeds. 2022-05-10 10:05:29 +02:00