| /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 20 #include <linux/usb/otg.h> 24 * A simple GPIO VBUS sensing driver for B peripheral only devices 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() 74 gpio_vbus->vbus_draw_enabled = 1; in set_vbus_draw() [all …]
|
| D | phy-generic.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * NOP USB transceiver for all USB transceiver which are either built-in 16 #include <linux/dma-mapping.h> 18 #include <linux/usb/otg.h> 27 #include "phy-generic.h" 48 struct usb_phy_generic *nop = dev_get_drvdata(x->dev); in nop_set_suspend() 50 if (!IS_ERR(nop->clk)) { in nop_set_suspend() 52 clk_disable_unprepare(nop->clk); in nop_set_suspend() 54 clk_prepare_enable(nop->clk); in nop_set_suspend() 62 if (!nop->gpiod_reset) in nop_reset() [all …]
|
| D | phy-mv-usb.c | 1 // SPDX-License-Identifier: GPL-2.0+ 21 #include <linux/usb/otg.h> 26 #include "phy-mv-usb.h" 28 #define DRIVER_DESC "Marvell USB OTG transceiver driver" 33 static const char driver_name[] = "mv-otg"; 52 static int mv_otg_set_vbus(struct usb_otg *otg, bool on) in mv_otg_set_vbus() argument 54 struct mv_otg *mvotg = container_of(otg->usb_phy, struct mv_otg, phy); in mv_otg_set_vbus() 55 if (mvotg->pdata->set_vbus == NULL) in mv_otg_set_vbus() 56 return -ENODEV; in mv_otg_set_vbus() 58 return mvotg->pdata->set_vbus(on); in mv_otg_set_vbus() [all …]
|
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 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. 42 depends on USB_GADGET || !USB_GADGET # if USB_GADGET=m, NOP can't be built-in 46 built-in with usb ip or which are autonomous and doesn't require any 68 Enable this to support the USB OTG transceiver on TWL6030 69 family chips. This TWL6030 transceiver has the VBUS and ID GND 70 and OTG SRP events capabilities. For all other transceiver functionality 73 The definition of internal PHY APIs are in the mach-omap2 layer. [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 20 #include <linux/usb/otg.h> 24 * A simple GPIO VBUS sensing driver for B peripheral only devices 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() 74 gpio_vbus->vbus_draw_enabled = 1; in set_vbus_draw() [all …]
|
| D | phy-generic.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * NOP USB transceiver for all USB transceiver which are either built-in 16 #include <linux/dma-mapping.h> 18 #include <linux/usb/otg.h> 27 #include "phy-generic.h" 48 struct usb_phy_generic *nop = dev_get_drvdata(x->dev); in nop_set_suspend() 50 if (!IS_ERR(nop->clk)) { in nop_set_suspend() 52 clk_disable_unprepare(nop->clk); in nop_set_suspend() 54 clk_prepare_enable(nop->clk); in nop_set_suspend() 62 if (!nop->gpiod_reset) in nop_reset() [all …]
|
| D | phy-mv-usb.c | 1 // SPDX-License-Identifier: GPL-2.0+ 21 #include <linux/usb/otg.h> 26 #include "phy-mv-usb.h" 28 #define DRIVER_DESC "Marvell USB OTG transceiver driver" 33 static const char driver_name[] = "mv-otg"; 52 static int mv_otg_set_vbus(struct usb_otg *otg, bool on) in mv_otg_set_vbus() argument 54 struct mv_otg *mvotg = container_of(otg->usb_phy, struct mv_otg, phy); in mv_otg_set_vbus() 55 if (mvotg->pdata->set_vbus == NULL) in mv_otg_set_vbus() 56 return -ENODEV; in mv_otg_set_vbus() 58 return mvotg->pdata->set_vbus(on); in mv_otg_set_vbus() [all …]
|
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 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 "Philips ISP1301 with OMAP OTG" 39 USB-On-The-Go transceiver working with the OMAP OTG controller. 45 will be called phy-isp1301-omap. 58 depends on USB_GADGET || !USB_GADGET # if USB_GADGET=m, NOP can't be built-in 62 built-in with usb ip or which are autonomous and doesn't require any 84 Enable this to support the USB OTG transceiver on TWL6030 [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. 26 #include <linux/mfd/motorola-cpcap.h> 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() 145 static int cpcap_usb_phy_set_host(struct usb_otg *otg, struct usb_bus *host) in cpcap_usb_phy_set_host() argument 147 otg->host = host; in cpcap_usb_phy_set_host() 149 otg->state = OTG_STATE_UNDEFINED; 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. 34 #include <linux/mfd/motorola-cpcap.h> 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() 153 static int cpcap_usb_phy_set_host(struct usb_otg *otg, struct usb_bus *host) in cpcap_usb_phy_set_host() argument 155 otg->host = host; in cpcap_usb_phy_set_host() 157 otg->state = OTG_STATE_UNDEFINED; in cpcap_usb_phy_set_host() 162 static int cpcap_usb_phy_set_peripheral(struct usb_otg *otg, in cpcap_usb_phy_set_peripheral() argument [all …]
|
| /kernel/linux/linux-5.10/drivers/usb/musb/ |
| D | davinci.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2005-2006 by Texas Instruments 18 #include <linux/dma-mapping.h> 24 #include <asm/mach-types.h> 40 struct gpio_desc *vbus; member 54 /* power everything up; start the on-chip PHY and its PLL */ in phy_on() 68 /* powerdown the on-chip PHY, its PLL, and the OTG block */ in phy_off() 81 tmp = (musb->epmask & DAVINCI_USB_TX_ENDPTS_MASK) in davinci_musb_enable() 83 musb_writel(musb->ctrl_base, DAVINCI_USB_INT_MASK_SET_REG, tmp); in davinci_musb_enable() 85 tmp = (musb->epmask & (0xfffe & DAVINCI_USB_RX_ENDPTS_MASK)) in davinci_musb_enable() [all …]
|
| D | tusb6010.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * TUSB6010 USB 2.0 OTG Dual Role controller 9 * - Driver assumes that interface to external host (main CPU) is 24 #include <linux/dma-mapping.h> 46 void __iomem *tbase = musb->ctrl_base; in tusb_get_revision() 63 void __iomem *tbase = musb->ctrl_base; in tusb_print_revision() 66 rev = musb->tusb_revision; in tusb_print_revision() 91 * Workaround for spontaneous WBUS wake-up issue #2 for tusb3.0. 96 void __iomem *tbase = musb->ctrl_base; in tusb_wbus_quirk() 109 dev_dbg(musb->controller, "Enabled tusb wbus quirk ctrl %08x ena %08x\n", in tusb_wbus_quirk() [all …]
|
| D | da8xx.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments DA8xx/OMAP-L1x "glue layer" 5 * Copyright (c) 2008-2009 MontaVista Software, Inc. <source@mvista.com> 8 * Copyright (C) 2005-2006 by Texas Instruments 23 #include <linux/dma-mapping.h> 32 /* USB 2.0 OTG module registers */ 46 #define DA8XX_USB_GENERIC_RNDIS_EP_SIZE_REG(n) (0x50 + (((n) - 1) << 2)) 76 * - not read/write INTRUSB/INTRUSBE (except during 78 * - use INTSET/INTCLR instead. 82 * da8xx_musb_enable - enable interrupts [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/chipidea/ |
| D | otg.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * otg.c - ChipIdea USB IP core OTG driver 11 * This file mainly handles otgsc register, OTG fsm operations for HNP and SRP 15 #include <linux/usb/otg.h> 21 #include "otg.h" 25 * hw_read_otgsc - returns otgsc register bits value. 35 * If using extcon framework for VBUS and/or ID signal in hw_read_otgsc() 38 cable = &ci->platdata->vbus_extcon; in hw_read_otgsc() 39 if (!IS_ERR(cable->edev) || ci->role_switch) { in hw_read_otgsc() 40 if (cable->changed) in hw_read_otgsc() [all …]
|
| /kernel/linux/linux-5.10/drivers/usb/chipidea/ |
| D | otg.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * otg.c - ChipIdea USB IP core OTG driver 11 * This file mainly handles otgsc register, OTG fsm operations for HNP and SRP 15 #include <linux/usb/otg.h> 21 #include "otg.h" 35 * If using extcon framework for VBUS and/or ID signal in hw_read_otgsc() 38 cable = &ci->platdata->vbus_extcon; in hw_read_otgsc() 39 if (!IS_ERR(cable->edev) || ci->role_switch) { in hw_read_otgsc() 40 if (cable->changed) in hw_read_otgsc() 45 if (cable->connected) in hw_read_otgsc() [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/usb/ |
| D | mediatek,musb.txt | 1 MediaTek musb DRD/OTG controller 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", [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/power/supply/ |
| D | mt6360_charger.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Gene Chen <gene_chen@richtek.com> 14 Provides Battery Charger, Boost for OTG devices and BC1.2 detection. 18 const: mediatek,mt6360-chg 20 richtek,vinovp-microvolt: 25 usb-otg-vbus-regulator: 27 description: OTG boost regulator. 32 - compatible [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/phy/ |
| D | allwinner,suniv-f1c100s-usb-phy.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/phy/allwinner,suniv-f1c100s-usb-phy.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Chen-Yu Tsai <wens@csie.org> 11 - Maxime Ripard <mripard@kernel.org> 14 "#phy-cells": 18 const: allwinner,suniv-f1c100s-usb-phy 24 reg-names: 29 description: USB OTG PHY bus clock [all …]
|
| D | allwinner,sun8i-v3s-usb-phy.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/phy/allwinner,sun8i-v3s-usb-phy.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Chen-Yu Tsai <wens@csie.org> 11 - Maxime Ripard <mripard@kernel.org> 14 "#phy-cells": 18 const: allwinner,sun8i-v3s-usb-phy 22 - description: PHY Control registers 23 - description: PHY PMU0 registers [all …]
|
| /kernel/linux/linux-6.6/include/linux/platform_data/ |
| D | mv_usb.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 25 struct mv_usb_addon_irq *id; /* Only valid for OTG. ID pin change*/ 26 struct mv_usb_addon_irq *vbus; /* valid for OTG/UDC. VBUS change*/ member 28 /* only valid for HCD. OTG or Host only*/ 31 /* This flag is used for that needs id pin checked by otg */ 38 int (*set_vbus)(unsigned int vbus);
|
| /kernel/linux/linux-5.10/include/linux/platform_data/ |
| D | mv_usb.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 25 struct mv_usb_addon_irq *id; /* Only valid for OTG. ID pin change*/ 26 struct mv_usb_addon_irq *vbus; /* valid for OTG/UDC. VBUS change*/ member 28 /* only valid for HCD. OTG or Host only*/ 31 /* This flag is used for that needs id pin checked by otg */ 38 int (*set_vbus)(unsigned int vbus);
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/phy/ |
| D | allwinner,sun8i-v3s-usb-phy.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/phy/allwinner,sun8i-v3s-usb-phy.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Chen-Yu Tsai <wens@csie.org> 11 - Maxime Ripard <mripard@kernel.org> 14 "#phy-cells": 18 const: allwinner,sun8i-v3s-usb-phy 22 - description: PHY Control registers 23 - description: PHY PMU0 registers [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/power/supply/ |
| D | bq24190.txt | 1 TI BQ24190 Li-Ion Battery Charger 4 - compatible: contains one of the following: 9 - reg: integer, I2C address of the charger. 10 - interrupts[-extended]: configuration for charger INT pin. 13 - monitored-battery: phandle of battery characteristics devicetree node 15 + precharge-current-microamp: maximum charge current during precharge 17 + charge-term-current-microamp: a charge cycle terminates when the 21 - ti,system-minimum-microvolt: when power is connected and the battery is below 25 - usb-otg-vbus: 27 Description: Regulator that is used to control the VBUS voltage direction for [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/musb/ |
| D | da8xx.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments DA8xx/OMAP-L1x "glue layer" 5 * Copyright (c) 2008-2009 MontaVista Software, Inc. <source@mvista.com> 8 * Copyright (C) 2005-2006 by Texas Instruments 23 #include <linux/dma-mapping.h> 32 /* USB 2.0 OTG module registers */ 46 #define DA8XX_USB_GENERIC_RNDIS_EP_SIZE_REG(n) (0x50 + (((n) - 1) << 2)) 76 * - not read/write INTRUSB/INTRUSBE (except during 78 * - use INTSET/INTCLR instead. 82 * da8xx_musb_enable - enable interrupts [all …]
|
| D | tusb6010.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * TUSB6010 USB 2.0 OTG Dual Role controller 9 * - Driver assumes that interface to external host (main CPU) is 27 #include <linux/dma-mapping.h> 51 void __iomem *tbase = musb->ctrl_base; in tusb_get_revision() 68 void __iomem *tbase = musb->ctrl_base; in tusb_print_revision() 71 rev = musb->tusb_revision; in tusb_print_revision() 96 * Workaround for spontaneous WBUS wake-up issue #2 for tusb3.0. 101 void __iomem *tbase = musb->ctrl_base; in tusb_wbus_quirk() 114 dev_dbg(musb->controller, "Enabled tusb wbus quirk ctrl %08x ena %08x\n", in tusb_wbus_quirk() [all …]
|