| /kernel/linux/linux-6.6/drivers/usb/roles/ |
| D | class.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * USB Role Switch Support 10 #include <linux/usb/role.h> 40 * usb_role_switch_set_role - Set USB role for a switch 41 * @sw: USB role switch 42 * @role: USB role to be switched to 44 * Set USB role @role for @sw. 53 if (!sw->registered) in usb_role_switch_set_role() 54 return -EOPNOTSUPP; in usb_role_switch_set_role() 56 mutex_lock(&sw->lock); in usb_role_switch_set_role() [all …]
|
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 4 tristate "USB Role Switch Support" 6 USB Role Switch is a device that can select the USB role - host or 7 device - for a USB port (connector). In most cases dual-role capable 8 USB controller will also represent the switch, but on some platforms 9 multiplexer/demultiplexer switch is used to route the data lines on 10 the USB connector between separate USB host and device controllers. 12 Say Y here if your USB connectors support both device and host roles. 19 tristate "Intel XHCI USB Role Switch" 22 Driver for the internal USB role switch for switching the USB data [all …]
|
| /kernel/linux/linux-5.10/drivers/usb/roles/ |
| D | class.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * USB Role Switch Support 10 #include <linux/usb/role.h> 37 * usb_role_switch_set_role - Set USB role for a switch 38 * @sw: USB role switch 39 * @role: USB role to be switched to 41 * Set USB role @role for @sw. 50 mutex_lock(&sw->lock); in usb_role_switch_set_role() 52 ret = sw->set(sw, role); in usb_role_switch_set_role() 54 sw->role = role; in usb_role_switch_set_role() [all …]
|
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 4 tristate "USB Role Switch Support" 6 USB Role Switch is a device that can select the USB role - host or 7 device - for a USB port (connector). In most cases dual-role capable 8 USB controller will also represent the switch, but on some platforms 9 multiplexer/demultiplexer switch is used to route the data lines on 10 the USB connector between separate USB host and device controllers. 12 Say Y here if your USB connectors support both device and host roles. 19 tristate "Intel XHCI USB Role Switch" 22 Driver for the internal USB role switch for switching the USB data [all …]
|
| /kernel/linux/linux-6.6/drivers/extcon/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 11 host USB ports. Many of 30-pin connectors including PDMI are 25 tristate "X-Power AXP288 EXTCON support" 29 Say Y here to enable support for USB peripheral detection 30 and USB MUX switching by X-Power AXP288 PMIC. 39 FSA9480 microUSB switch and accessory detector chip. The FSA9480 is a USB 40 port accessory detector and switch. The FSA9480 is fully controlled using 41 I2C and enables USB data, stereo and mono audio, video, microphone 55 Say Y here to enable extcon support for USB OTG ports controlled by 85 Maxim MAX14577/77836. The MAX14577/77836 MUIC is a USB port accessory [all …]
|
| /kernel/linux/linux-5.10/drivers/extcon/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 11 host USB ports. Many of 30-pin connectors including PDMI are 33 tristate "X-Power AXP288 EXTCON support" 37 Say Y here to enable support for USB peripheral detection 38 and USB MUX switching by X-Power AXP288 PMIC. 47 FSA9480 microUSB switch and accessory detector chip. The FSA9480 is a USB 48 port accessory detector and switch. The FSA9480 is fully controlled using 49 I2C and enables USB data, stereo and mono audio, video, microphone 63 Say Y here to enable extcon support for USB OTG ports controlled by 90 Maxim MAX14577/77836. The MAX14577/77836 MUIC is a USB port accessory [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/usb/ |
| D | mediatek,mtu3.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/usb/mediatek,mtu3.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Chunfeng Yun <chunfeng.yun@mediatek.com> 14 - $ref: usb-drd.yaml 23 - enum: 24 - mediatek,mt2712-mtu3 25 - mediatek,mt8173-mtu3 26 - mediatek,mt8183-mtu3 [all …]
|
| D | dwc2.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/usb/dwc2.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: DesignWare HS OTG USB 2.0 controller 10 - Rob Herring <robh@kernel.org> 13 - $ref: usb-drd.yaml# 14 - $ref: usb-hcd.yaml# 19 - const: brcm,bcm2835-usb 20 - const: hisilicon,hi6220-usb [all …]
|
| D | mediatek,musb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/usb/mediatek,musb.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Min Guo <min.guo@mediatek.com> 15 pattern: '^usb@[0-9a-f]+$' 19 - enum: 20 - mediatek,mt8516-musb 21 - mediatek,mt2701-musb 22 - mediatek,mt7623-musb [all …]
|
| D | usb-drd.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/usb/usb-drd.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Generic USB OTG Controller 10 - Greg Kroah-Hartman <gregkh@linuxfoundation.org> 13 otg-rev: 15 Tells usb driver the release number of the OTG and EH supplement with 16 which the device and its descriptors are compliant, in binary-coded 18 features (HNP/SRP/ADP) is enabled. If ADP is required, otg-rev should be [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/usb/ |
| D | mediatek,mtu3.txt | 4 - compatible : should be "mediatek,<soc-model>-mtu3", "mediatek,mtu3", 5 soc-model is the name of SoC, such as mt8173, mt2712 etc, 8 - "mediatek,mt8173-mtu3" 9 - reg : specifies physical base address and size of the registers 10 - reg-names: should be "mac" for device IP and "ippc" for IP port control 11 - interrupts : interrupt used by the device IP 12 - power-domains : a phandle to USB power domain node to control USB's 14 - vusb33-supply : regulator of USB avdd3.3v 15 - clocks : a list of phandle + clock-specifier pairs, one for each 16 entry in clock-names [all …]
|
| D | mediatek,musb.txt | 2 ------------------------------------------- 5 - compatible : should be one of: 6 "mediatek,mt2701-musb" 8 followed by "mediatek,mtk-musb" 9 - reg : specifies physical base address and size of 11 - interrupts : interrupt used by musb controller 12 - interrupt-names : must be "mc" 13 - phys : PHY specifier for the OTG phy 14 - dr_mode : should be one of "host", "peripheral" or "otg", 15 refer to usb/generic.txt [all …]
|
| D | generic.txt | 1 Generic USB Properties 4 - maximum-speed: tells USB controllers we want to work up to a certain 5 speed. Valid arguments are "super-speed-plus", 6 "super-speed", "high-speed", "full-speed" and 7 "low-speed". In case this isn't passed via DT, USB 10 - dr_mode: tells Dual-Role USB controllers that we want to work on a 13 passed via DT, USB DRD controllers should default to 15 - phy_type: tells USB controllers that we want to configure the core to support 16 a UTMI+ PHY with an 8- or 16-bit interface if UTMI+ is 18 In case this isn't passed via DT, USB controllers should [all …]
|
| /kernel/linux/linux-5.10/drivers/usb/typec/ |
| D | mux.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * USB Type-C Multiplexer/DeMultiplexer Switch support 16 #include <linux/usb/typec_mux.h> 29 return strcmp(name + (name_len - suffix_len), suffix) == 0; in dev_name_ends_with() 34 return dev_fwnode(dev) == fwnode && dev_name_ends_with(dev, "-switch"); in switch_fwnode_match() 48 return dev ? to_typec_switch(dev) : ERR_PTR(-EPROBE_DEFER); in typec_switch_match() 52 * fwnode_typec_switch_get - Find USB Type-C orientation switch 55 * Finds a switch linked with @dev. Returns a reference to the switch on 57 * ERR_PTR(-EPROBE_DEFER) when a connection was found but the switch 64 sw = fwnode_connection_find_match(fwnode, "orientation-switch", NULL, in fwnode_typec_switch_get() [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/phy/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 3 # Physical Layer USB driver configuration 5 menu "USB Physical Layer drivers" 12 # USB Transceiver Drivers 15 tristate "AB8500 USB Transceiver Driver" 19 Enable this to support the USB OTG transceiver in AB8500 chip. 24 tristate "Freescale USB OTG Transceiver Driver" 29 Enable this to support Freescale USB OTG transceiver. 32 tristate "Keystone USB PHY Driver" 36 Enable this to support Keystone USB phy. This driver provides [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/typec/mux/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 3 menu "USB Type-C Multiplexer/DeMultiplexer Switch support" 6 tristate "ON Semi FSA4480 Analog Audio Switch driver" 10 Driver for the ON Semiconductor FSA4480 Analog Audio Switch, which 12 common USB Type-C connector. 16 tristate "Generic GPIO based SBU mux for USB Type-C applications" 19 connected state and the swapping of the SBU lines in a Type-C port. 22 tristate "Pericom PI3USB30532 Type-C cross switch driver" 25 Say Y or M if your system has a Pericom PI3USB30532 Type-C cross 26 switch / mux chip found on some devices with a Type-C port. [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/typec/ |
| D | mux.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * USB Type-C Multiplexer/DeMultiplexer Switch support 45 * property is named "orientation-switch" (@id). The value of the device in typec_switch_match() 52 * At this point we are sure that @fwnode is a typec switch in all in typec_switch_match() 53 * cases. If the switch hasn't yet been registered for some reason, the in typec_switch_match() 59 return dev ? to_typec_switch_dev(dev) : ERR_PTR(-EPROBE_DEFER); in typec_switch_match() 63 * fwnode_typec_switch_get - Find USB Type-C orientation switch 66 * Finds a switch linked with @dev. Returns a reference to the switch on 68 * ERR_PTR(-EPROBE_DEFER) when a connection was found but the switch 81 return ERR_PTR(-ENOMEM); in fwnode_typec_switch_get() [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/phy/ |
| D | nvidia,tegra194-xusb-padctl.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/phy/nvidia,tegra194-xusb-padctl.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 21 Some of the lanes are high-speed lanes, which can be used for PCIe, SATA or 22 super-speed USB. Other lanes are for various types of low-speed, full-speed 23 or high-speed USB (such as UTMI, ULPI and HSIC). The XUSB pad controller 24 contains a software-configurable mux that sits between the I/O controller [all …]
|
| D | nvidia,tegra186-xusb-padctl.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/phy/nvidia,tegra186-xusb-padctl.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 21 Some of the lanes are high-speed lanes, which can be used for PCIe, SATA or 22 super-speed USB. Other lanes are for various types of low-speed, full-speed 23 or high-speed USB (such as UTMI, ULPI and HSIC). The XUSB pad controller 24 contains a software-configurable mux that sits between the I/O controller [all …]
|
| /kernel/linux/linux-6.6/Documentation/ABI/testing/ |
| D | sysfs-class-usb_role | 5 Place in sysfs for USB Role Switches. USB Role Switch is a 6 device that can select the data role (host or device) for USB 9 What: /sys/class/usb_role/<switch>/role 13 The current role of the switch. This attribute can be used for 14 requesting role swapping with non-USB Type-C ports. With USB 15 Type-C ports, the ABI defined for USB Type-C connector class 19 - none 20 - host 21 - device
|
| /kernel/linux/linux-5.10/Documentation/ABI/testing/ |
| D | sysfs-class-usb_role | 5 Place in sysfs for USB Role Switches. USB Role Switch is a 6 device that can select the data role (host or device) for USB 9 What: /sys/class/usb_role/<switch>/role 13 The current role of the switch. This attribute can be used for 14 requesting role swapping with non-USB Type-C ports. With USB 15 Type-C ports, the ABI defined for USB Type-C connector class 19 - none 20 - host 21 - device
|
| /kernel/linux/linux-5.10/drivers/usb/host/ |
| D | fhci-hub.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Freescale QUICC Engine USB Host Controller Driver 7 * Jerry Huang <Chang-Ming.Huang@freescale.com> 20 #include <linux/usb.h> 21 #include <linux/usb/hcd.h> 29 USB_DT_HUB, /* bDescriptorType;hub-descriptor */ 32 0x00, /* per-port power, no overcurrent */ 41 int gpio = fhci->gpios[gpio_nr]; in fhci_gpio_set_value() 42 bool alow = fhci->alow_gpios[gpio_nr]; in fhci_gpio_set_value() 54 fhci_dbg(fhci, "-> %s: %d\n", __func__, status); in fhci_config_transceiver() [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/host/ |
| D | fhci-hub.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Freescale QUICC Engine USB Host Controller Driver 7 * Jerry Huang <Chang-Ming.Huang@freescale.com> 20 #include <linux/usb.h> 21 #include <linux/usb/hcd.h> 29 USB_DT_HUB, /* bDescriptorType;hub-descriptor */ 32 0x00, /* per-port power, no overcurrent */ 41 struct gpio_desc *gpiod = fhci->gpiods[gpio_nr]; in fhci_gpio_set_value() 53 fhci_dbg(fhci, "-> %s: %d\n", __func__, status); in fhci_config_transceiver() 55 switch (status) { in fhci_config_transceiver() [all …]
|
| /kernel/linux/linux-5.10/drivers/usb/typec/mux/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 3 menu "USB Type-C Multiplexer/DeMultiplexer Switch support" 6 tristate "Pericom PI3USB30532 Type-C cross switch driver" 9 Say Y or M if your system has a Pericom PI3USB30532 Type-C cross 10 switch / mux chip found on some devices with a Type-C port. 18 Driver for USB muxes controlled by Intel PMC FW. Intel PMC FW can 19 control the USB role switch and also the multiplexer/demultiplexer 20 switches used with USB Type-C Alternate Modes.
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/extcon/ |
| D | extcon-rt8973a.txt | 2 * Richtek RT8973A - Micro USB Switch device 4 The Richtek RT8973A is Micro USB Switch with OVP and I2C interface. The RT8973A 5 is a USB port accessory detector and switch that is optimized to protect low 7 speed USB operation. Also, RT8973A support 'auto-configuration' mode. 8 If auto-configuration mode is enabled, RT8973A would control internal h/w patch 9 for USB D-/D+ switching. 12 - compatible: Should be "richtek,rt8973a-muic" 13 - reg: Specifies the I2C slave address of the MUIC block. It should be 0x14 14 - interrupts: Interrupt specifiers for detection interrupt sources. 19 compatible = "richtek,rt8973a-muic"; [all …]
|