38#include <sys/condvar.h>
39#include <sys/kernel.h>
40#include <sys/module.h>
53#include <dev/ofw/ofw_bus.h>
54#include <dev/ofw/ofw_bus_subr.h>
56#include <dev/extres/phy/phy.h>
61 {
"marvell,armada-380-xhci",
true},
62 {
"marvell,armada3700-xhci",
true},
63 {
"marvell,armada-8k-xhci",
true},
64 {
"generic-xhci",
true},
72 if (!ofw_bus_status_okay(
dev))
80 return (BUS_PROBE_DEFAULT);
89 node = ofw_bus_get_node(
dev);
90 if (phy_get_by_ofw_property(
dev, node,
"usb-phy", &phy) == 0)
91 if (phy_enable(phy) != 0)
92 device_printf(
dev,
"Cannot enable phy\n");
108 node = ofw_bus_get_node(
dev);
109 if (phy_get_by_ofw_property(
dev, node,
"usb-phy", &phy) == 0)
driver_t generic_xhci_driver
device_attach_t generic_xhci_attach
device_detach_t generic_xhci_detach
DEFINE_CLASS_1(xhci, xhci_fdt_driver, xhci_fdt_methods, sizeof(struct xhci_softc), generic_xhci_driver)
static device_method_t xhci_fdt_methods[]
static int generic_xhci_fdt_detach(device_t dev)
static int generic_xhci_fdt_attach(device_t dev)
MODULE_DEPEND(xhci, usb, 1, 1, 1)
static struct ofw_compat_data compat_data[]
DRIVER_MODULE(xhci, simplebus, xhci_fdt_driver, xhci_fdt_devclass, 0, 0)
static int generic_xhci_fdt_probe(device_t dev)
static devclass_t xhci_fdt_devclass