/linux-6.8/drivers/usb/common/ |
D | usb-conn-gpio.c | 34 struct regulator *vbus; member 49 * "DEVICE" = VBUS and "HOST" = !ID, so we have: 52 * even if VBUS is on. 54 * Role | ID | VBUS 62 * - VBUS only - we want to distinguish between [1] and [2], so ID is always 1 63 * - ID only - we want to distinguish between [1] and [4], so VBUS = ID 69 int id, vbus, ret; in usb_conn_detect_cable() local 74 /* check ID and VBUS */ in usb_conn_detect_cable() 77 vbus = info->vbus_gpiod ? in usb_conn_detect_cable() 82 else if (vbus) in usb_conn_detect_cable() [all …]
|
/linux-6.8/drivers/usb/phy/ |
D | phy-gpio-vbus-usb.c | 3 * gpio-vbus.c - simple GPIO VBUS sensing driver for B peripheral devices 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 96 int status, vbus; in gpio_vbus_work() local 101 vbus = is_vbus_powered(gpio_vbus); in gpio_vbus_work() 102 if ((vbus ^ gpio_vbus->vbus) == 0) in gpio_vbus_work() 104 gpio_vbus->vbus = vbus; in gpio_vbus_work() 112 if (vbus) { in gpio_vbus_work() [all …]
|
D | phy-omap-otg.c | 24 bool vbus; member 52 if (!otg_dev->id && otg_dev->vbus) in omap_otg_set_mode() 55 else if (otg_dev->vbus) in omap_otg_set_mode() 59 /* Set B-session end to indicate no VBUS. */ in omap_otg_set_mode() 80 otg_dev->vbus = event; in omap_otg_vbus_notifier() 125 otg_dev->vbus = extcon_get_state(extcon, EXTCON_USB); in omap_otg_probe() 131 "OMAP USB OTG controller rev %d.%d (%s, id=%d, vbus=%d)\n", in omap_otg_probe() 133 otg_dev->vbus); in omap_otg_probe()
|
D | phy-generic.c | 111 int vbus, status; in nop_gpio_vbus_thread() local 113 vbus = gpiod_get_value(nop->gpiod_vbus); in nop_gpio_vbus_thread() 114 if ((vbus ^ nop->vbus) == 0) in nop_gpio_vbus_thread() 116 nop->vbus = vbus; in nop_gpio_vbus_thread() 118 if (vbus) { in nop_gpio_vbus_thread() 233 "vbus-detect", in usb_phy_gen_create_phy() 240 "Error requesting RESET or VBUS GPIO\n"); in usb_phy_gen_create_phy() 270 nop->vbus_draw = devm_regulator_get_exclusive(dev, "vbus"); in usb_phy_gen_create_phy() 275 "could not get vbus regulator\n"); in usb_phy_gen_create_phy()
|
/linux-6.8/Documentation/devicetree/bindings/regulator/ |
D | qcom,usb-vbus-regulator.yaml | 4 $id: http://devicetree.org/schemas/regulator/qcom,usb-vbus-regulator.yaml# 7 title: The Qualcomm PMIC VBUS output regulator driver 13 This regulator driver controls the VBUS output by the Qualcomm PMIC. This 23 - qcom,pm8150b-vbus-reg 27 description: VBUS output base address 43 usb-vbus-regulator@1100 { 44 compatible = "qcom,pm8150b-vbus-reg";
|
/linux-6.8/Documentation/devicetree/bindings/phy/ |
D | nvidia,tegra194-xusb-padctl.yaml | 40 for the USB signal, the VBUS power supply, the USB 2.0 companion port for 72 description: USB I/Os, VBUS, ID, REXT, D+/D- power supply. Must 254 vbus-supply: 255 description: A phandle to the regulator supplying the VBUS 292 vbus-supply: 293 description: A phandle to the regulator supplying the VBUS 330 vbus-supply: 331 description: A phandle to the regulator supplying the VBUS 368 vbus-supply: 369 description: A phandle to the regulator supplying the VBUS [all …]
|
D | nvidia,tegra210-xusb-padctl.yaml | 40 for the USB signal, the VBUS power supply, the USB 2.0 companion port for 382 vbus-supply: 383 description: A phandle to the regulator supplying the VBUS 420 vbus-supply: 421 description: A phandle to the regulator supplying the VBUS 458 vbus-supply: 459 description: A phandle to the regulator supplying the VBUS 496 vbus-supply: 497 description: A phandle to the regulator supplying the VBUS 507 vbus-supply: [all …]
|
D | nvidia,tegra186-xusb-padctl.yaml | 40 for the USB signal, the VBUS power supply, the USB 2.0 companion port for 74 description: USB I/Os, VBUS, ID, REXT, D+/D- power supply. Must 263 vbus-supply: 264 description: A phandle to the regulator supplying the VBUS 301 vbus-supply: 302 description: A phandle to the regulator supplying the VBUS 339 vbus-supply: 340 description: A phandle to the regulator supplying the VBUS 367 vbus-supply: 368 description: A phandle to the regulator supplying the VBUS [all …]
|
D | nvidia,tegra124-xusb-padctl.yaml | 40 for the USB signal, the VBUS power supply, the USB 2.0 companion port for 360 vbus-supply: 361 description: A phandle to the regulator supplying the VBUS 395 vbus-supply: 396 description: A phandle to the regulator supplying the VBUS 430 vbus-supply: 431 description: A phandle to the regulator supplying the VBUS 444 vbus-supply: 445 description: A phandle to the regulator supplying the VBUS 452 vbus-supply: [all …]
|
/linux-6.8/drivers/extcon/ |
D | extcon-usb-gpio.c | 44 * "USB" = VBUS and "USB-HOST" = !ID, so we have: 47 * even if VBUS is on. 49 * State | ID | VBUS 57 * - VBUS only - we want to distinguish between [1] and [2], so ID is always 1. 58 * - ID only - we want to distinguish between [1] and [4], so VBUS = ID. 62 int id, vbus; in usb_extcon_detect_cable() local 67 /* check ID and VBUS and update cable state */ in usb_extcon_detect_cable() 70 vbus = info->vbus_gpiod ? in usb_extcon_detect_cable() 76 if (!vbus) in usb_extcon_detect_cable() 82 if (vbus) in usb_extcon_detect_cable() [all …]
|
/linux-6.8/drivers/phy/socionext/ |
D | phy-uniphier-usb2.c | 42 struct regulator *vbus; member 52 if (priv->vbus) in uniphier_u2phy_power_on() 53 ret = regulator_enable(priv->vbus); in uniphier_u2phy_power_on() 62 if (priv->vbus) in uniphier_u2phy_power_off() 63 regulator_disable(priv->vbus); in uniphier_u2phy_power_off() 140 priv->vbus = devm_regulator_get_optional(dev, "vbus"); in uniphier_u2phy_probe() 141 if (IS_ERR(priv->vbus)) { in uniphier_u2phy_probe() 142 if (PTR_ERR(priv->vbus) == -EPROBE_DEFER) { in uniphier_u2phy_probe() 143 ret = PTR_ERR(priv->vbus); in uniphier_u2phy_probe() 146 priv->vbus = NULL; in uniphier_u2phy_probe()
|
D | phy-uniphier-usb3ss.c | 59 struct regulator *vbus; member 124 if (priv->vbus) { in uniphier_u3ssphy_power_on() 125 ret = regulator_enable(priv->vbus); in uniphier_u3ssphy_power_on() 146 if (priv->vbus) in uniphier_u3ssphy_power_off() 147 regulator_disable(priv->vbus); in uniphier_u3ssphy_power_off() 267 priv->vbus = devm_regulator_get_optional(dev, "vbus"); in uniphier_u3ssphy_probe() 268 if (IS_ERR(priv->vbus)) { in uniphier_u3ssphy_probe() 269 if (PTR_ERR(priv->vbus) == -EPROBE_DEFER) in uniphier_u3ssphy_probe() 270 return PTR_ERR(priv->vbus); in uniphier_u3ssphy_probe() 271 priv->vbus = NULL; in uniphier_u3ssphy_probe()
|
/linux-6.8/Documentation/devicetree/bindings/usb/ |
D | usb-nop-xceiv.yaml | 36 vbus-detect-gpio: 37 description: Should specify the GPIO detecting a VBus insertion 40 vbus-regulator: 42 the VBus line. 67 vbus-detect-gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>; 68 vbus-regulator = <&vbus_regulator>;
|
D | qcom,pmic-typec.yaml | 31 - description: Type-C CC attach notification, VBUS error, tCCDebounce done 35 - description: Type-C VBUS state change 54 - const: vbus-change 67 vdd-vbus-supply: 68 description: VBUS power supply. 83 - vdd-vbus-supply 123 "vbus-change", 136 vdd-vbus-supply = <&pm8150b_vbus>;
|
D | atmel-usb.txt | 16 - atmel,vbus-gpio: If present, specifies a gpio that needs to be 70 - atmel,vbus-gpio: If present, specifies a gpio that needs to be 79 atmel,vbus-gpio = <&pioC 5 0>; 104 - atmel,vbus-gpio: If present, specifies a gpio that allows to detect whether 105 vbus is present (USB is connected). 124 atmel,vbus-gpio = <&pioB 19 0>;
|
/linux-6.8/include/linux/usb/ |
D | tcpm.h | 61 * @get_vbus: Called to read current VBUS state 75 * @set_vbus: Called to enable or disable VBUS 93 * Optional; Called to notify that vbus is now being sourced. 97 * support hardware to autonomously dischrge vbus upon disconnecting 103 * vbus threshold voltage below which the vbus discharge circuit 104 * will be turned on. requested_vbus_voltage is set to 0 when vbus 109 * detect VSAFE0V voltage level at vbus. When detection of VSAFE0V 111 * whether vbus is at VSAFE0V when needed. 112 * Returns true when vbus is at VSAFE0V, false otherwise.
|
/linux-6.8/drivers/phy/samsung/ |
D | phy-samsung-usb2.c | 27 if (drv->vbus) { in samsung_usb2_phy_power_on() 28 ret = regulator_enable(drv->vbus); in samsung_usb2_phy_power_on() 54 if (drv->vbus) in samsung_usb2_phy_power_on() 55 regulator_disable(drv->vbus); in samsung_usb2_phy_power_on() 77 if (drv->vbus) in samsung_usb2_phy_power_off() 78 ret = regulator_disable(drv->vbus); in samsung_usb2_phy_power_off() 212 drv->vbus = devm_regulator_get(dev, "vbus"); in samsung_usb2_phy_probe() 213 if (IS_ERR(drv->vbus)) { in samsung_usb2_phy_probe() 214 ret = PTR_ERR(drv->vbus); in samsung_usb2_phy_probe() 217 drv->vbus = NULL; in samsung_usb2_phy_probe()
|
/linux-6.8/drivers/phy/allwinner/ |
D | phy-sun4i-usb.c | 58 /* sunxi has the phy id/vbus pins not connected, so we use the force bits */ 95 * otherwise we get Vbus errors 122 struct regulator *vbus; member 434 /* Fallback: report vbus as high */ in sun4i_usb_phy0_get_vbus_det() 451 * generate vbus change interrupts when the board is driving in sun4i_usb_phy0_poll() 452 * vbus using the N_VBUSEN pin on the pmic, so we must poll in sun4i_usb_phy0_poll() 453 * when using the pmic for vbus-det _and_ we're driving vbus. in sun4i_usb_phy0_poll() 468 if (!phy->vbus || phy->regulator_on) in sun4i_usb_phy_power_on() 471 /* For phy0 only turn on Vbus if we don't have an ext. Vbus */ in sun4i_usb_phy_power_on() 474 dev_warn(&_phy->dev, "External vbus detected, not enabling our own vbus\n"); in sun4i_usb_phy_power_on() [all …]
|
/linux-6.8/drivers/phy/motorola/ |
D | phy-cpcap-usb.c | 123 struct iio_channel *vbus; member 135 error = iio_read_channel_processed(ddata->vbus, &value); in cpcap_usb_vbus_valid() 139 dev_err(ddata->dev, "error reading VBUS: %i\n", error); in cpcap_usb_vbus_valid() 219 bool vbus = false; in cpcap_usb_detect() local 228 vbus = cpcap_usb_vbus_valid(ddata); in cpcap_usb_detect() 230 /* We need to kick the VBUS as USB A-host */ in cpcap_usb_detect() 232 dev_dbg(ddata->dev, "still in USB A-host mode, kicking VBUS\n"); in cpcap_usb_detect() 246 if (vbus && s.id_ground && ddata->docked) { in cpcap_usb_detect() 254 /* No VBUS needed with docks */ in cpcap_usb_detect() 255 if (vbus && s.id_ground && !ddata->vbus_provider) { in cpcap_usb_detect() [all …]
|
/linux-6.8/arch/arm/boot/dts/allwinner/ |
D | sunxi-common-regulators.dtsi | 2 * sunxi boards common regulator (ahci target power supply, usb-vbus) code 59 reg_usb0_vbus: usb0-vbus { 61 regulator-name = "usb0-vbus"; 69 reg_usb1_vbus: usb1-vbus { 71 regulator-name = "usb1-vbus"; 80 reg_usb2_vbus: usb2-vbus { 82 regulator-name = "usb2-vbus";
|
/linux-6.8/drivers/regulator/ |
D | qcom_usb_vbus-regulator.c | 3 // Qualcomm PMIC VBUS output regulator driver 83 dev_err(dev, "not able to register vbus reg %d\n", ret); in qcom_usb_vbus_regulator_probe() 87 /* Disable HW logic for VBUS enable */ in qcom_usb_vbus_regulator_probe() 94 { .compatible = "qcom,pm8150b-vbus-reg" }, 101 .name = "qcom-usb-vbus-regulator", 109 MODULE_DESCRIPTION("Qualcomm USB vbus regulator driver");
|
/linux-6.8/arch/arm/boot/dts/nxp/imx/ |
D | imx6qdl-prti6q.dtsi | 21 reg_usb_h1_vbus: regulator-h1-vbus { 23 regulator-name = "h1-vbus"; 28 reg_usb_otg_vbus: regulator-otg-vbus { 30 regulator-name = "otg-vbus"; 69 vbus-supply = <®_usb_h1_vbus>; 77 vbus-supply = <®_usb_otg_vbus>;
|
/linux-6.8/arch/arm64/boot/dts/mediatek/ |
D | mt2712-evb.dts | 54 usb_p0_vbus: regulator-usb-p0-vbus { 63 usb_p1_vbus: regulator-usb-p1-vbus { 72 usb_p2_vbus: regulator-usb-p2-vbus { 81 usb_p3_vbus: regulator-usb-p3-vbus { 201 vbus-supply = <&usb_p0_vbus>; 214 vbus-supply = <&usb_p1_vbus>; 231 vbus-supply = <&usb_p2_vbus>;
|
/linux-6.8/drivers/phy/ |
D | phy-lgm-usb.c | 42 struct regulator *vbus; member 127 ret = regulator_enable(ta->vbus); in phy_set_vbus() 129 ret = regulator_disable(ta->vbus); in phy_set_vbus() 134 dev_dbg(ta->phy.dev, "set vbus: %d\n", on); in phy_set_vbus() 169 dev_err(ta->phy.dev, "failed to set VBUS\n"); in tca_work() 216 ta->vbus = devm_regulator_get(dev, "vbus"); in phy_probe() 217 if (IS_ERR(ta->vbus)) in phy_probe() 218 return PTR_ERR(ta->vbus); in phy_probe()
|
/linux-6.8/drivers/usb/chipidea/ |
D | otg.c | 35 * If using extcon framework for VBUS and/or ID signal in hw_read_otgsc() 92 /* Don't enable vbus interrupt if using external notifier */ in hw_write_otgsc() 146 * hw_wait_vbus_lower_bsv - When we switch to device mode, the vbus value 183 * vbus disconnect event is lost due to role in ci_handle_id_switch() 193 * Wait vbus lower than OTGSC_BSV before connecting in ci_handle_id_switch() 196 * care vbus on the board, since it will not affect in ci_handle_id_switch() 202 /* vbus change may have already occurred */ in ci_handle_id_switch() 209 * ci_otg_work - perform otg (vbus/id) event handle
|