/openbmc/linux/drivers/usb/core/ |
H A D | hcd-pci.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * (C) Copyright David Brownell 2000-2002 23 /* PCI-based HCs are common, but plenty of non-PCI HCs are used too */ 26 * Coordinate handoffs between EHCI and companion controllers 38 return pdev->class == CL_OHCI || pdev->class == CL_UHCI; in is_ohci_or_uhci() 42 struct pci_dev *companion, struct usb_hcd *companion_hcd); 48 struct pci_dev *companion; in for_each_companion() local 50 unsigned int slot = PCI_SLOT(pdev->devfn); in for_each_companion() 57 companion = NULL; in for_each_companion() 58 for_each_pci_dev(companion) { in for_each_companion() [all …]
|
H A D | usb-acpi.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * USB-ACPI glue code 16 #include "hub.h" 19 * usb_acpi_power_manageable - check whether usb port has 21 * @hdev: USB device belonging to the usb hub 40 #define UUID_USB_CONTROLLER_DSM "ce2ee385-00e6-48cb-9f05-2edb927c4899" 44 * usb_acpi_port_lpm_incapable - check if lpm should be disabled for a port. 45 * @hdev: USB device belonging to the usb hub 51 * Arg0: UUID = ce2ee385-00e6-48cb-9f05-2edb927c4899 73 dev_dbg(&hdev->dev, "port-%d no acpi handle\n", port1); in usb_acpi_port_lpm_incapable() [all …]
|
H A D | config.c | 1 // SPDX-License-Identifier: GPL-2.0 37 if (h->bDescriptorType == dt1 || h->bDescriptorType == dt2) in find_next_descriptor() 39 buffer += h->bLength; in find_next_descriptor() 40 size -= h->bLength; in find_next_descriptor() 48 return buffer - buffer0; in find_next_descriptor() 58 * The SuperSpeedPlus Isoc endpoint companion descriptor immediately in usb_parse_ssp_isoc_endpoint_companion() 59 * follows the SuperSpeed Endpoint Companion descriptor in usb_parse_ssp_isoc_endpoint_companion() 62 if (desc->bDescriptorType != USB_DT_SSP_ISOC_ENDPOINT_COMP || in usb_parse_ssp_isoc_endpoint_companion() 64 dev_notice(ddev, "Invalid SuperSpeedPlus isoc endpoint companion" in usb_parse_ssp_isoc_endpoint_companion() 66 cfgno, inum, asnum, ep->desc.bEndpointAddress); in usb_parse_ssp_isoc_endpoint_companion() [all …]
|
/openbmc/linux/Documentation/ABI/testing/ |
H A D | sysfs-bus-pci-drivers-ehci_hcd | 1 What: /sys/bus/pci/drivers/ehci_hcd/.../companion 2 /sys/bus/usb/devices/usbN/../companion 7 PCI-based EHCI USB controllers (i.e., high-speed USB-2.0 9 "companion" full/low-speed USB-1.1 controllers. When a 10 high-speed device is plugged in, the connection is routed 11 to the EHCI controller; when a full- or low-speed device 12 is plugged in, the connection is routed to the companion 15 Sometimes you want to force a high-speed device to connect 17 connection to be routed to the companion controller. 20 companion controller, and writing the negative of a port [all …]
|
/openbmc/linux/drivers/usb/host/ |
H A D | ehci-hub.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright (C) 2001-2004 by David Brownell 6 /* this file is part of ehci-hcd.c */ 8 /*-------------------------------------------------------------------------*/ 11 * EHCI Root Hub ... the nonsharable stuff 16 /*-------------------------------------------------------------------------*/ 26 return !udev->maxchild && udev->persist_enabled && in persist_enabled_on_companion() 27 udev->bus->root_hub->speed < USB_SPEED_HIGH; in persist_enabled_on_companion() 30 /* After a power loss, ports that were owned by the companion must be 31 * reset so that the companion can still own them. [all …]
|
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 11 The Cypress C67x00 (EZ-Host/EZ-OTG) chips are dual-role 28 module will be called xhci-hcd. 90 tristate "xHCI support for Renesas R-Car SoCs" 96 found in Renesas R-Car ARM SoCs. 132 modules will be called ohci-platform.ko, ehci-brcm.ko and 133 xhci-plat-hcd.ko 147 EHCI controllers are packaged with "companion" host controllers (OHCI 148 or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports 150 connect to a companion controller. If you configure EHCI, you should [all …]
|
H A D | ehci-hcd.c | 1 // SPDX-License-Identifier: GPL-2.0+ 7 * Copyright (c) 2000-2004 by David Brownell 27 #include <linux/dma-mapping.h> 41 /*-------------------------------------------------------------------------*/ 53 * test this driver on, and Cypress (including In-System Design) for 66 #define EHCI_TUNE_CERR 3 /* 0-3 qtd retries; 0 == don't stop */ 69 #define EHCI_TUNE_MULT_HS 1 /* 1-3 transactions/uframe; 4.10.3 */ 77 #define EHCI_TUNE_FLS 1 /* (medium) 512-frame schedule */ 82 MODULE_PARM_DESC (log2_irq_thresh, "log2 IRQ latency, 1-64 microframes"); 87 MODULE_PARM_DESC (park, "park setting; 1-3 back-to-back async packets"); [all …]
|
H A D | oxu210hp-hcd.c | 1 // SPDX-License-Identifier: GPL-2.0+ 6 * This code is *strongly* based on EHCI-HCD code by David Brownell since 7 * the chip is a quasi-EHCI compatible. 25 #include <linux/dma-mapping.h> 82 #define EHCI_TUNE_CERR 3 /* 0-3 qtd retries; 0 == don't stop */ 85 #define EHCI_TUNE_MULT_HS 1 /* 1-3 transactions/uframe; 4.10.3 */ 101 u32 hcs_params; /* HCSPARAMS - offset 0x4 */ 104 #define HCS_N_CC(p) (((p)>>12)&0xf) /* bits 15:12, #companion HCs */ 110 u32 hcc_params; /* HCCPARAMS - offset 0x8 */ 116 #define HCC_64BIT_ADDR(p) ((p)&(1)) /* true: can use 64-bit addr */ [all …]
|
H A D | ehci.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 3 * Copyright (c) 2001-2002 by David Brownell 16 * To facilitate the strongest possible byte-order checking from "sparse" 46 * high-speed devices and full/low-speed devices lying behind a TT. 53 u16 cs_mask; /* C-mask and S-mask bytes */ 66 /* ehci_hcd->lock guards shared data against other CPUs: 92 * ehci-timer.c) in parallel with this list. 177 /* per root hub port */ 184 dedicated to the companion controller */ 186 owned by the companion during a bus suspend */ [all …]
|
/openbmc/linux/drivers/net/ethernet/oki-semi/pch_gbe/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 15 EG20T PCH is the platform controller hub that is used in Intel's 21 Output Hub), ML7223/ML7831. 24 ML7223/ML7831 is companion chip for Intel Atom E6xx series.
|
/openbmc/linux/Documentation/devicetree/bindings/usb/ |
H A D | usb-hcd.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/usb/usb-hcd.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Greg Kroah-Hartman <gregkh@linuxfoundation.org> 13 - $ref: usb.yaml# 16 companion: 17 description: Phandle of a companion device 20 tpl-support: 23 targeted hosts (non-PC hosts). [all …]
|
/openbmc/linux/Documentation/usb/ |
H A D | ehci.rst | 5 27-Dec-2002 8 USB 2.0-capable host controller hardware. The USB 2.0 standard is 11 - "High Speed" 480 Mbit/sec (60 MByte/sec) 12 - "Full Speed" 12 Mbit/sec (1.5 MByte/sec) 13 - "Low Speed" 1.5 Mbit/sec 19 into an EHCI controller, they are given to a USB 1.1 "companion" 23 (TT) in the hub, which turns low or full speed transactions into 31 While usb-storage devices have been available since mid-2001 (working 34 appear to be on hold until more systems come with USB 2.0 built-in. 39 other changes to the Linux-USB core APIs, including the hub driver, [all …]
|
/openbmc/linux/arch/arm64/boot/dts/nvidia/ |
H A D | tegra234-p3768-0000.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 4 compatible = "nvidia,p3768-0000"; 11 stdout-path = "serial0:115200n8"; 23 vcc-supply = <&vdd_1v8_sys>; 24 address-width = <8>; 27 read-only; 36 assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>; 37 assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>; 47 usb2-0 { 52 usb2-1 { [all …]
|
/openbmc/qemu/docs/system/devices/ |
H A D | usb.rst | 2 ------------- 16 more virtualization-friendly when compared to EHCI and UHCI, thus XHCI 21 |qemu_system| -device qemu-xhci 33 standalone or with companion controllers (UHCI, OHCI) for USB 1.1 34 devices. The companion controller setup is more convenient to use 46 ``-usb`` switch. QEMU will create the UHCI controller as function of 47 the PIIX3 chipset. The USB 1.1 bus will carry the name ``usb-bus.0``. 49 You can use the standard ``-device`` switch to add a EHCI controller to 52 ``-device usb-ehci,id=ehci``. This will give you a USB 2.0 bus named 55 When adding USB devices using the ``-device`` switch you can specify the [all …]
|
/openbmc/u-boot/include/ |
H A D | usb.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 6 * Adapted for U-Boot driver model 45 * time for a BULK device to react - some are slow. 69 * Companion Descriptor (section 9.6.7 of usb 3.0 spec) 92 * struct usb_device - information about a USB device 96 * other hubs and there is always a single root hub for each controller. 135 * Child devices - if this is a hub device 141 int maxchild; /* Number of ports if hub */ 144 /* parent hub, or NULL if this is the root hub */ 149 /* slot_id - for xHCI enabled devices */ [all …]
|
/openbmc/linux/drivers/misc/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 27 See Documentation/misc-devices/ad525x_dpot.rst for the 40 module will be called ad525x_dpot-i2c. 51 module will be called ad525x_dpot-spi. 65 This option enables device driver support for in-band access to the 78 website <https://www-03.ibm.com/systems/info/x86servers/serverproven/compat/us/> 189 called smpro-errmon. 199 called smpro-misc. 202 tristate "CS5535/CS5536 Geode Multi-Function General Purpose Timer (MFGPT) support" 207 CS5536 companion chips that are found in AMD Geode and several [all …]
|
/openbmc/u-boot/drivers/usb/host/ |
H A D | usb-uclass.c | 1 // SPDX-License-Identifier: GPL-2.0+ 14 #include <dm/device-internal.h> 16 #include <dm/uclass-internal.h> 36 struct udevice *bus = udev->controller_dev; in submit_int_msg() 39 if (!ops->interrupt) in submit_int_msg() 40 return -ENOSYS; in submit_int_msg() 42 return ops->interrupt(bus, udev, pipe, buffer, length, interval); in submit_int_msg() 48 struct udevice *bus = udev->controller_dev; in submit_control_msg() 50 struct usb_uclass_priv *uc_priv = bus->uclass->priv; in submit_control_msg() 53 if (!ops->control) in submit_control_msg() [all …]
|
H A D | Kconfig | 12 ---help--- 43 bool "Support for PCI-based xHCI USB controller" 47 Enables support for the PCI-based xHCI controller. 50 bool "Support for Rockchip on-chip xHCI USB controller" 56 Enables support for the on-chip xHCI controller on Rockchip SoCs. 67 bool "Support for STMicroelectronics STiH407 family on-chip xHCI USB controller" 71 Enables support for the on-chip xHCI controller on STMicroelectronics 76 bool "Support for Xilinx ZynqMP on-chip xHCI USB controller" 80 Enables support for the on-chip xHCI controller on Xilinx ZynqMP SoCs. 92 bool "Support for NXP Layerscape on-chip xHCI USB controller" [all …]
|
H A D | xhci.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Based on xHCI host controller driver in linux-kernel 38 struct usb_hub_descriptor hub; member 47 0x2a, /* bDescriptorType: hub descriptor */ 48 2, /* bNrPorts -- runtime modified */ 102 0x30, /* ss_bDescriptorType: SS EP Companion */ 121 for (dev = udev->dev; in xhci_get_ctrl() 123 dev = dev->parent) in xhci_get_ctrl() 127 return udev->controller; in xhci_get_ctrl() 149 return -ENODEV; in handshake() [all …]
|
/openbmc/linux/include/linux/usb/ |
H A D | hcd.h | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright (c) 2001-2002 by David Brownell 42 /*-------------------------------------------------------------------------*/ 51 /*-------------------------------------------------------------------------*/ 73 struct usb_bus self; /* hcd is-a bus */ 79 * hcd->driver->flags & HCD_MASK 83 struct timer_list rh_timer; /* drives root-hub polling */ 93 const struct hc_driver *driver; /* hw-specific hooks */ 97 * other external phys should be software-transparent 110 #define HCD_FLAG_WAKEUP_PENDING 4 /* root hub is resuming? */ [all …]
|
/openbmc/u-boot/board/theobroma-systems/puma_rk3399/ |
H A D | README | 4 The RK3399-Q7 (Puma) is a system-on-module featuring the Rockchip 5 RK3399 in a Qseven-compatible form-factor. 7 RK3399-Q7 features: 8 * CPU: ARMv8 64bit Big-Little architecture, 9 * Big: dual-core Cortex-A72 10 * Little: quad-core Cortex-A53 12 * DRAM: 4GB-128MB dual-channel 18 * 2x USB3.0 host, 1x USB2.0 host via onboard USB3.0 hub 22 * Companion Controller: onboard additional Cortex-M0 microcontroller 27 Here is the step-by-step to boot to U-Boot on rk3399. [all …]
|
/openbmc/linux/include/uapi/linux/usb/ |
H A D | ch9.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 9 * - the master/host side Linux-USB kernel driver API; 10 * - the "usbfs" user space API; and 11 * - the Linux "gadget" slave/device/peripheral side driver API. 22 * [b] so that accessing bigger-than-a-bytes fields will never 27 * someone that the two other points are non-issues for that 37 /*-------------------------------------------------------------------------*/ 136 * See USB 2.0 spec Table 9-7 150 * See USB 3.0 spec Table 9-7 159 * Suspend Options, Table 9-8 USB 3.0 spec [all …]
|
/openbmc/linux/drivers/usb/fotg210/ |
H A D | fotg210-hcd.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 5 #include <linux/usb/ehci-dbgp.h> 14 * To facilitate the strongest possible byte-order checking from "sparse" 33 /* fotg210_hcd->lock guards shared data against other CPUs: 59 * ehci-timer.c) in parallel with this list. 138 /* per root hub port */ 146 /* which ports are edicated to the companion controller */ 149 /* which ports are owned by the companion during a bus suspend */ 152 /* which ports have the change-suspend feature turned on */ 161 /* per-HC memory pools (could be per-bus, but ...) */ [all …]
|
/openbmc/qemu/hw/usb/ |
H A D | bus.c | 2 #include "hw/qdev-properties.h" 5 #include "qapi/qapi-commands-machine.h" 6 #include "qapi/type-helpers.h" 7 #include "qemu/error-report.h" 24 DEFINE_PROP_BIT("msos-desc", USBDevice, flags, 35 k->print_dev = usb_bus_dev_print; in usb_bus_class_init() 36 k->get_dev_path = usb_get_dev_path; in usb_bus_class_init() 37 k->get_fw_dev_path = usb_get_fw_dev_path; in usb_bus_class_init() 38 hc->unplug = qdev_simple_device_unplug_cb; in usb_bus_class_init() 59 if (dev->state == USB_STATE_NOTATTACHED) { in usb_device_post_load() [all …]
|
/openbmc/linux/include/linux/ |
H A D | usb.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 14 #include <linux/errno.h> /* for -ENODEV */ 29 /*-------------------------------------------------------------------------*/ 32 * Host-side wrappers for standard USB descriptors ... these are parsed 36 * - devices have one (usually) or more configs; 37 * - configs have one (often) or more interfaces; 38 * - interfaces have one (usually) or more settings; 39 * - each interface setting has zero or (usually) more endpoints. 40 * - a SuperSpeed endpoint has a companion descriptor 44 * Devices may also have class-specific or vendor-specific descriptors. [all …]
|