Home
last modified time | relevance | path

Searched +full:usb +full:- +full:switch (Results 1 – 25 of 1023) sorted by relevance

12345678910>>...41

/Linux-v6.1/drivers/usb/roles/
Dclass.c1 // SPDX-License-Identifier: GPL-2.0
3 * USB Role Switch Support
10 #include <linux/usb/role.h>
36 * usb_role_switch_set_role - Set USB role for a switch
37 * @sw: USB role switch
38 * @role: USB role to be switched to
40 * Set USB role @role for @sw.
49 mutex_lock(&sw->lock); in usb_role_switch_set_role()
51 ret = sw->set(sw, role); in usb_role_switch_set_role()
53 sw->role = role; in usb_role_switch_set_role()
[all …]
DKconfig1 # 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 …]
/Linux-v6.1/drivers/extcon/
DKconfig1 # 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
84 Maxim MAX14577/77836. The MAX14577/77836 MUIC is a USB port accessory
[all …]
Dextcon-max77693.c1 // SPDX-License-Identifier: GPL-2.0+
3 // extcon-max77693.c - MAX77693 extcon driver to support MAX77693 MUIC
8 #include <linux/devm-helpers.h>
18 #include <linux/mfd/max77693-common.h>
19 #include <linux/mfd/max77693-private.h>
20 #include <linux/extcon-provider.h>
24 #define DEV_NAME "max77693-muic"
30 * extcon-max77693 driver use 'default_init_data' to bring up base operation
35 /* STATUS2 - [3]ChgDetRun */
39 /* INTMASK1 - Unmask [3]ADC1KM,[0]ADCM */
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/usb/
Dmediatek,mtu3.yaml1 # 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 …]
Ddwc2.yaml1 # 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 Bindings
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 …]
Dmediatek,musb.yaml1 # 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 …]
Dusb-drd.yaml1 # 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 …]
Dmediatek,mt6360-tcpc.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: "http://devicetree.org/schemas/usb/mediatek,mt6360-tcpc.yaml#"
5 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
7 title: Mediatek MT6360 Type-C Port Switch and Power Delivery controller DT bindings
10 - ChiYuan Huang <cy_huang@richtek.com>
13 Mediatek MT6360 is a multi-functional device. It integrates charger, ADC, flash, RGB indicators,
14 regulators (BUCKs/LDOs), and TypeC Port Switch with Power Delivery controller.
15 This document only describes MT6360 Type-C Port Switch and Power Delivery controller.
20 - mediatek,mt6360-tcpc
[all …]
Drenesas,usb3-peri.yaml1 # SPDX-License-Identifier: GPL-2.0-only
3 ---
4 $id: http://devicetree.org/schemas/usb/renesas,usb3-peri.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Renesas USB 3.0 Peripheral controller
10 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
15 - items:
16 - enum:
17 - renesas,r8a774a1-usb3-peri # RZ/G2M
18 - renesas,r8a774b1-usb3-peri # RZ/G2N
[all …]
Dmsm-hsusb.txt6 - compatible: Should contain "qcom,ehci-host"
7 - regs: offset and length of the register set in the memory map
8 - usb-phy: phandle for the PHY device
13 compatible = "qcom,ehci-host";
15 usb-phy = <&usb_otg>;
18 USB PHY with optional OTG:
21 - compatible: Should contain:
22 "qcom,usb-otg-ci" for chipsets with ChipIdea 45nm PHY
23 "qcom,usb-otg-snps" for chipsets with Synopsys 28nm PHY
25 - regs: Offset and length of the register set in the memory map
[all …]
/Linux-v6.1/drivers/usb/typec/mux/
DKconfig1 # 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 "Pericom PI3USB30532 Type-C cross switch driver"
19 Say Y or M if your system has a Pericom PI3USB30532 Type-C cross
20 switch / mux chip found on some devices with a Type-C port.
28 Driver for USB muxes controlled by Intel PMC FW. Intel PMC FW can
29 control the USB role switch and also the multiplexer/demultiplexer
[all …]
/Linux-v6.1/drivers/usb/typec/
Dmux.c1 // 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 …]
/Linux-v6.1/drivers/usb/host/
Dfhci-hub.c1 // 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 …]
/Linux-v6.1/Documentation/ABI/testing/
Dsysfs-class-usb_role5 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
/Linux-v6.1/Documentation/driver-api/usb/
Dtypec.rst3 USB Type-C connector class
7 ------------
9 The typec class is meant for describing the USB Type-C ports in a system to the
14 The platforms are expected to register every USB Type-C port they have with the
15 class. In a normal case the registration will be done by a USB Type-C or PD PHY
17 USB PD controller or even driver for Thunderbolt3 controller. This document
18 considers the component registering the USB Type-C ports with the class as "port
26 attributes are described in Documentation/ABI/testing/sysfs-class-typec.
29 --------------------
36 "port0-partner". Full path to the device would be
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/extcon/
Dextcon-rt8973a.txt2 * 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 …]
/Linux-v6.1/Documentation/usb/
Dchipidea.rst6 -----------------------------------
12 -------------------------
29 otg-rev = <0x0200>;
30 adp-disable;
33 -------------------
38 2) Connect 2 boards with usb cable with one end is micro A plug, the other end
41 The A-device(with micro A plug inserted) should enumerate B-device.
43 3) Role switch
45 On B-device::
49 B-device should take host role and enumerate A-device.
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/phy/
Dqcom,usb-8x16-phy.txt1 Qualcomm's APQ8016/MSM8916 USB transceiver controller
3 - compatible:
6 Definition: Should contain "qcom,usb-8x16-phy".
8 - reg:
10 Value type: <prop-encoded-array>
11 Definition: USB PHY base address and length of the register map
13 - clocks:
15 Value type: <prop-encoded-array>
16 Definition: See clock-bindings.txt section "consumers". List of
20 - clock-names:
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/net/
Dmarvell,mvusb.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Marvell USB to MDIO Controller
10 - Tobias Waldekranz <tobias@waldekranz.com>
14 family of Ethernet switches. It allows you to configure the switch's registers
17 Since the device is connected over USB, there is no strict requirement of
19 the mv88e6xxx driver, you need a device tree node in which to place the switch
23 - $ref: "mdio.yaml#"
30 description: The USB port number on the host controller
[all …]
/Linux-v6.1/drivers/usb/cdns3/
DKconfig2 tristate "Cadence USB Support"
3 depends on USB_SUPPORT && (USB || USB_GADGET) && HAS_DMA
8 dual-role controller.
9 It supports: dual-role switch, Host-only, and Peripheral-only.
17 tristate "Cadence USB3 Dual-Role Controller"
20 Say Y here if your system has a Cadence USB3 dual-role controller.
21 It supports: dual-role switch, Host-only, and Peripheral-only.
34 Cadence USBSS-DEV driver.
41 depends on USB=y || USB=USB_CDNS3
51 tristate "Cadence USB3 support on PCIe-based platforms"
[all …]
/Linux-v6.1/drivers/usb/phy/
DKconfig1 # 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.
35 depends on USB
40 USB-On-The-Go transceiver working with the OMAP OTG controller.
[all …]
/Linux-v6.1/drivers/power/supply/
Dda9150-charger.c1 // SPDX-License-Identifier: GPL-2.0-or-later
19 #include <linux/usb/phy.h>
29 struct power_supply *usb; member
48 val->intval = (psy == charger->supply_online) ? 1 : 0; in da9150_charger_supply_online()
59 /* Read processed value - mV units */ in da9150_charger_vbus_voltage_now()
60 ret = iio_read_channel_processed(charger->vbus_chan, &v_val); in da9150_charger_vbus_voltage_now()
65 val->intval = v_val * 1000; in da9150_charger_vbus_voltage_now()
75 /* Read processed value - mA units */ in da9150_charger_ibus_current_avg()
76 ret = iio_read_channel_processed(charger->ibus_chan, &i_val); in da9150_charger_ibus_current_avg()
81 val->intval = i_val * 1000; in da9150_charger_ibus_current_avg()
[all …]
/Linux-v6.1/include/linux/usb/
Drole.h1 // SPDX-License-Identifier: GPL-2.0
21 * struct usb_role_switch_desc - USB Role Switch Descriptor
22 * @fwnode: The device node to be associated with the role switch
30 * @name: Name for the switch (optional)
32 * @usb2_port and @usb3_port will point to the USB host port and @udc to the USB
33 * device controller behind the USB connector with the role switch. If
36 * usb_role_switch_register() before registering the switch.
83 return ERR_PTR(-ENODEV); in usb_role_switch_get()
89 return ERR_PTR(-ENODEV); in fwnode_usb_role_switch_get()
104 return ERR_PTR(-ENODEV); in usb_role_switch_register()
/Linux-v6.1/drivers/usb/common/
Ddebug.c1 // SPDX-License-Identifier: GPL-2.0
3 * Common USB debugging functions
5 * Copyright (C) 2010-2011 Texas Instruments Incorporated - https://www.ti.com
12 #include <linux/usb/ch9.h>
17 switch (bRequestType & USB_RECIP_MASK) { in usb_decode_get_status()
36 switch (wValue) { in usb_decode_device_feature()
56 switch (wIndex) { in usb_decode_test_mode()
76 switch (bRequestType & USB_RECIP_MASK) { in usb_decode_set_clear_feature()
111 switch (wValue >> 8) { in usb_decode_get_set_descriptor()
234 switch (bRequest) { in usb_decode_ctrl_standard()
[all …]

12345678910>>...41