| /kernel/linux/linux-6.6/drivers/usb/phy/ |
| D | phy-gpio-vbus-usb.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * gpio-vbus.c - simple GPIO VBUS sensing driver for B peripheral devices 10 #include <linux/gpio/consumer.h> 24 * A simple GPIO VBUS sensing driver for B peripheral only devices 25 * with internal transceivers. It can control a D+ pullup GPIO and 26 * a regulator to limit the current drawn from VBUS. 39 int vbus; member 45 * This driver relies on "both edges" triggering. VBUS has 100 msec to 60 struct regulator *vbus_draw = gpio_vbus->vbus_draw; in set_vbus_draw() 67 enabled = gpio_vbus->vbus_draw_enabled; in set_vbus_draw() [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/usb/ |
| D | usb-nop-xceiv.txt | 4 - compatible: should be usb-nop-xceiv 5 - #phy-cells: Must be 0 8 - clocks: phandle to the PHY clock. Use as per Documentation/devicetree 9 /bindings/clock/clock-bindings.txt 10 This property is required if clock-frequency is specified. 12 - clock-names: Should be "main_clk" 14 - clock-frequency: the clock frequency (in Hz) that the PHY clock must 17 - vcc-supply: phandle to the regulator that provides power to the PHY. 19 - reset-gpios: Should specify the GPIO for reset. 21 - vbus-detect-gpio: should specify the GPIO detecting a VBus insertion [all …]
|
| D | atmel-usb.txt | 6 - compatible: Should be "atmel,at91rm9200-ohci" for USB controllers 8 - reg: Address and length of the register set for the device 9 - interrupts: Should contain ohci interrupt 10 - clocks: Should reference the peripheral, host and system clocks 11 - clock-names: Should contain three strings 15 - num-ports: Number of ports. 16 - atmel,vbus-gpio: If present, specifies a gpio that needs to be 18 - atmel,oc-gpio: If present, specifies a gpio that needs to be 22 compatible = "atmel,at91rm9200-ohci", "usb-ohci"; 25 clock-names = "ohci_clk", "hclk", "uhpck"; [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", 16 - clocks : a list of phandle + clock-specifier pairs, one for [all …]
|
| /kernel/linux/linux-5.10/drivers/usb/phy/ |
| D | phy-gpio-vbus-usb.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * gpio-vbus.c - simple GPIO VBUS sensing driver for B peripheral devices 10 #include <linux/gpio/consumer.h> 24 * A simple GPIO VBUS sensing driver for B peripheral only devices 25 * with internal transceivers. It can control a D+ pullup GPIO and 26 * a regulator to limit the current drawn from VBUS. 39 int vbus; member 45 * This driver relies on "both edges" triggering. VBUS has 100 msec to 60 struct regulator *vbus_draw = gpio_vbus->vbus_draw; in set_vbus_draw() 67 enabled = gpio_vbus->vbus_draw_enabled; in set_vbus_draw() [all …]
|
| /kernel/linux/linux-5.10/drivers/usb/common/ |
| D | usb-conn-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * USB GPIO Based Connection Detection Driver 9 * Some code borrowed from drivers/extcon/extcon-usb-gpio.c 13 #include <linux/gpio/consumer.h> 34 struct regulator *vbus; member 49 * "DEVICE" = VBUS and "HOST" = !ID, so we have: 52 * even if VBUS is on. 54 * Role | ID | VBUS 55 * ------------------------------------ 62 * - VBUS only - we want to distinguish between [1] and [2], so ID is always 1 [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/usb/ |
| D | usb-nop-xceiv.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/usb/usb-nop-xceiv.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Rob Herring <robh@kernel.org> 14 const: usb-nop-xceiv 19 clock-names: 22 clock-frequency: true 24 '#phy-cells': 27 vcc-supply: [all …]
|
| D | atmel-usb.txt | 6 - compatible: Should be "atmel,at91rm9200-ohci" for USB controllers 8 - reg: Address and length of the register set for the device 9 - interrupts: Should contain ohci interrupt 10 - clocks: Should reference the peripheral, host and system clocks 11 - clock-names: Should contain three strings 15 - num-ports: Number of ports. 16 - atmel,vbus-gpio: If present, specifies a gpio that needs to be 18 - atmel,oc-gpio: If present, specifies a gpio that needs to be 22 compatible = "atmel,at91rm9200-ohci", "usb-ohci"; 25 clock-names = "ohci_clk", "hclk", "uhpck"; [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/common/ |
| D | usb-conn-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * USB GPIO Based Connection Detection Driver 9 * Some code borrowed from drivers/extcon/extcon-usb-gpio.c 13 #include <linux/gpio/consumer.h> 35 int conn_id; /* store the IDA-allocated ID */ 38 struct regulator *vbus; member 53 * "DEVICE" = VBUS and "HOST" = !ID, so we have: 56 * even if VBUS is on. 58 * Role | ID | VBUS 59 * ------------------------------------ [all …]
|
| /kernel/linux/linux-6.6/arch/arm64/boot/dts/mediatek/ |
| D | mt2712-evb.dts | 5 * SPDX-License-Identifier: (GPL-2.0 OR MIT) 8 /dts-v1/; 9 #include <dt-bindings/gpio/gpio.h> 14 chassis-type = "embedded"; 15 compatible = "mediatek,mt2712-evb", "mediatek,mt2712"; 27 stdout-path = "serial0:921600n8"; 30 cpus_fixed_vproc0: regulator-vproc-buck0 { 31 compatible = "regulator-fixed"; 32 regulator-name = "vproc_buck0"; 33 regulator-min-microvolt = <1000000>; [all …]
|
| /kernel/linux/linux-5.10/arch/arm64/boot/dts/mediatek/ |
| D | mt2712-evb.dts | 5 * SPDX-License-Identifier: (GPL-2.0 OR MIT) 8 /dts-v1/; 9 #include <dt-bindings/gpio/gpio.h> 14 compatible = "mediatek,mt2712-evb", "mediatek,mt2712"; 26 stdout-path = "serial0:921600n8"; 29 cpus_fixed_vproc0: regulator-vproc-buck0 { 30 compatible = "regulator-fixed"; 31 regulator-name = "vproc_buck0"; 32 regulator-min-microvolt = <1000000>; 33 regulator-max-microvolt = <1000000>; [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/extcon/ |
| D | extcon-usb-gpio.txt | 1 USB GPIO Extcon device 4 connected to a GPIO pin. 7 - compatible: Should be "linux,extcon-usb-gpio" 9 Either one of id-gpio or vbus-gpio must be present. Both can be present as well. 10 - id-gpio: gpio for USB ID pin. See gpio binding. 11 - vbus-gpio: gpio for USB VBUS pin. 13 Example: Examples of extcon-usb-gpio node in dra7-evm.dts as listed below: 15 compatible = "linux,extcon-usb-gpio"; 16 id-gpio = <&gpio6 1 GPIO_ACTIVE_HIGH>;
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/extcon/ |
| D | extcon-usb-gpio.txt | 1 USB GPIO Extcon device 4 connected to a GPIO pin. 7 - compatible: Should be "linux,extcon-usb-gpio" 9 Either one of id-gpio or vbus-gpio must be present. Both can be present as well. 10 - id-gpio: gpio for USB ID pin. See gpio binding. 11 - vbus-gpio: gpio for USB VBUS pin. 13 Example: Examples of extcon-usb-gpio node in dra7-evm.dts as listed below: 15 compatible = "linux,extcon-usb-gpio"; 16 id-gpio = <&gpio6 1 GPIO_ACTIVE_HIGH>;
|
| /kernel/linux/linux-5.10/drivers/extcon/ |
| D | extcon-usb-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * drivers/extcon/extcon-usb-gpio.c - USB GPIO extcon driver 5 * Copyright (C) 2015 Texas Instruments Incorporated - https://www.ti.com 9 #include <linux/extcon-provider.h> 10 #include <linux/gpio.h> 11 #include <linux/gpio/consumer.h> 45 * "USB" = VBUS and "USB-HOST" = !ID, so we have: 46 * Both "USB" and "USB-HOST" can't be set as active at the 47 * same time so if "USB-HOST" is active (i.e. ID is 0) we keep "USB" inactive 48 * even if VBUS is on. [all …]
|
| /kernel/linux/linux-5.10/arch/arm/boot/dts/ |
| D | sunxi-common-regulators.dtsi | 2 * sunxi boards common regulator (ahci target power supply, usb-vbus) code 4 * Copyright 2014 - Hans de Goede <hdegoede@redhat.com> 6 * This file is dual-licensed: you can use it either under the terms 45 #include <dt-bindings/gpio/gpio.h> 48 reg_ahci_5v: ahci-5v { 49 compatible = "regulator-fixed"; 50 regulator-name = "ahci-5v"; 51 regulator-min-microvolt = <5000000>; 52 regulator-max-microvolt = <5000000>; 53 regulator-boot-on; [all …]
|
| /kernel/linux/linux-6.6/arch/arm/boot/dts/allwinner/ |
| D | sunxi-common-regulators.dtsi | 2 * sunxi boards common regulator (ahci target power supply, usb-vbus) code 4 * Copyright 2014 - Hans de Goede <hdegoede@redhat.com> 6 * This file is dual-licensed: you can use it either under the terms 45 #include <dt-bindings/gpio/gpio.h> 48 reg_ahci_5v: ahci-5v { 49 compatible = "regulator-fixed"; 50 regulator-name = "ahci-5v"; 51 regulator-min-microvolt = <5000000>; 52 regulator-max-microvolt = <5000000>; 53 regulator-boot-on; [all …]
|
| /kernel/linux/linux-6.6/drivers/extcon/ |
| D | extcon-usb-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * drivers/extcon/extcon-usb-gpio.c - USB GPIO extcon driver 5 * Copyright (C) 2015 Texas Instruments Incorporated - https://www.ti.com 9 #include <linux/extcon-provider.h> 10 #include <linux/gpio/consumer.h> 44 * "USB" = VBUS and "USB-HOST" = !ID, so we have: 45 * Both "USB" and "USB-HOST" can't be set as active at the 46 * same time so if "USB-HOST" is active (i.e. ID is 0) we keep "USB" inactive 47 * even if VBUS is on. 49 * State | ID | VBUS [all …]
|
| D | extcon-intel-int3496.c | 1 // SPDX-License-Identifier: GPL-2.0 14 #include <linux/devm-helpers.h> 15 #include <linux/extcon-provider.h> 16 #include <linux/gpio/consumer.h> 50 * Some platforms have a bug in ACPI GPIO description making IRQ 51 * GPIO to be output only. Ask the GPIO core to ignore this limit. 53 { "id-gpios", &id_gpios, 1, ACPI_GPIO_QUIRK_NO_IO_RESTRICTION }, 54 { "vbus-gpios", &vbus_gpios, 1 }, 55 { "mux-gpios", &mux_gpios, 1 }, 63 if (IS_ERR_OR_NULL(data->vbus_boost)) in int3496_set_vbus_boost() [all …]
|
| /kernel/linux/linux-6.6/drivers/phy/motorola/ |
| D | phy-cpcap-usb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 * board-mapphone-usb.c and cpcap-usb-det.c: 8 * Copyright (C) 2007 - 2011 Motorola, Inc. 25 #include <linux/gpio/consumer.h> 26 #include <linux/mfd/motorola-cpcap.h> 123 struct gpio_desc *gpio[2]; member 124 struct iio_channel *vbus; member 136 error = iio_read_channel_processed(ddata->vbus, &value); in cpcap_usb_vbus_valid() 140 dev_err(ddata->dev, "error reading VBUS: %i\n", error); in cpcap_usb_vbus_valid() 147 otg->host = host; in cpcap_usb_phy_set_host() [all …]
|
| /kernel/linux/linux-5.10/drivers/phy/motorola/ |
| D | phy-cpcap-usb.c | 6 * board-mapphone-usb.c and cpcap-usb-det.c: 7 * Copyright (C) 2007 - 2011 Motorola, Inc. 33 #include <linux/gpio/consumer.h> 34 #include <linux/mfd/motorola-cpcap.h> 131 struct gpio_desc *gpio[2]; member 132 struct iio_channel *vbus; member 144 error = iio_read_channel_processed(ddata->vbus, &value); in cpcap_usb_vbus_valid() 148 dev_err(ddata->dev, "error reading VBUS: %i\n", error); in cpcap_usb_vbus_valid() 155 otg->host = host; in cpcap_usb_phy_set_host() 157 otg->state = OTG_STATE_UNDEFINED; in cpcap_usb_phy_set_host() [all …]
|
| /kernel/linux/linux-5.10/Documentation/firmware-guide/acpi/ |
| D | extcon-intel-int3496.rst | 6 devices with an acpi-id of INT3496, such as found for example on 9 This ACPI device describes how the OS can read the id-pin of the devices' 10 USB-otg port, as well as how it optionally can enable Vbus output on the 15 to 3 gpio descriptors from its ACPI _CRS (Current Resource Settings) call: 18 Index 0 The input gpio for the id-pin, this is always present and valid 19 Index 1 The output gpio for enabling Vbus output from the device to the otg 20 port, write 1 to enable the Vbus output (this gpio descriptor may 22 Index 2 The output gpio for muxing of the data pins between the USB host and 27 There is a mapping between indices and GPIO connection IDs as follows 31 vbus index 1
|
| /kernel/linux/linux-6.6/Documentation/firmware-guide/acpi/ |
| D | extcon-intel-int3496.rst | 6 devices with an acpi-id of INT3496, such as found for example on 9 This ACPI device describes how the OS can read the id-pin of the devices' 10 USB-otg port, as well as how it optionally can enable Vbus output on the 15 to 3 gpio descriptors from its ACPI _CRS (Current Resource Settings) call: 18 Index 0 The input gpio for the id-pin, this is always present and valid 19 Index 1 The output gpio for enabling Vbus output from the device to the otg 20 port, write 1 to enable the Vbus output (this gpio descriptor may 22 Index 2 The output gpio for muxing of the data pins between the USB host and 27 There is a mapping between indices and GPIO connection IDs as follows 31 vbus index 1
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/connector/ |
| D | usb-connector.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/connector/usb-connector.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Rob Herring <robh@kernel.org> 20 - enum: 21 - usb-a-connector 22 - usb-b-connector 23 - usb-c-connector 25 - items: [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/phy/ |
| 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/arch/arm/boot/dts/nvidia/ |
| D | tegra30-apalis-eval.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/input.h> 5 #include "tegra30-apalis.dtsi" 9 compatible = "toradex,apalis_t30-eval", "toradex,apalis_t30", 23 stdout-path = "serial0:115200n8"; 46 hdmi-supply = <®_5v0>; 50 gpio@6000d000 { 52 pex-perst-n-hog { 53 gpio-hog; [all …]
|