Home
last modified time | relevance | path

Searched +full:power +full:- +full:role (Results 1 – 25 of 201) sorted by relevance

123456789

/linux-5.10/Documentation/devicetree/bindings/connector/
Dusb-connector.yaml1 # 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 …]
/linux-5.10/include/linux/usb/
Dtypec.h1 /* SPDX-License-Identifier: GPL-2.0 */
8 /* USB Type-C Specification releases */
76 * struct enter_usb_data - Enter_USB Message details
80 * @active_link_training is a flag that should be set with uni-directional SBRX
81 * communication, and left 0 with passive cables and with bi-directional SBRX
90 * struct usb_pd_identity - USB Power Delivery identity data
96 * USB power delivery Discover Identity command response data.
98 * REVISIT: This is USB Power Delivery specific information, so this structure
99 * probable belongs to USB Power Delivery header file once we have them.
112 * struct typec_altmode_desc - USB Type-C Alternate Mode Descriptor
[all …]
Dtcpm.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * Copyright 2015-2017 Google, Inc
55 * struct tcpc_dev - Port configuration and callback functions
60 * and cc=Rp-def. This allows the tcpm to provide a fallback
61 * current-limit detection method for the cc=Rp-def case.
74 * @set_roles: Called to set power and data roles
76 * Optional; if supported by hardware, called to start dual-role
77 * toggling or single-role connection detection. Toggling stops
79 * @try_role: Optional; called to set a preferred role
83 * Optional; Called to enable/disable PD 3.0 fast role swap.
[all …]
/linux-5.10/Documentation/ABI/testing/
Dsysfs-class-typec1 USB Type-C port devices (eg. /sys/class/typec/port0/)
8 requesting data role swapping on the port. Swapping is supported
11 notified about role changes so that poll(2) on the attribute
12 wakes up. Change on the role will also generate uevent
13 KOBJ_CHANGE on the port. The current role is show in brackets,
22 The supported power roles. This attribute can be used to request
23 power role swap on the port. Swapping is supported as
26 notified about role changes so that poll(2) on the attribute
27 wakes up. Change on the role will also generate uevent
28 KOBJ_CHANGE. The current role is show in brackets, for example
[all …]
/linux-5.10/Documentation/devicetree/bindings/usb/
Dmediatek,mtu3.txt4 - 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 …]
Dmediatek,musb.txt2 -------------------------------------------
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 …]
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 …]
Drichtek,rt1711h.txt4 - compatible : Must be "richtek,rt1711h".
5 - reg : Must be 0x4e, it's slave address of RT1711H.
6 - interrupts : <a b> where a is the interrupt number and b represents an
9 Required sub-node:
10 - connector: The "usb-c-connector" attached to the tcpci chip, the bindings
12 Documentation/devicetree/bindings/connector/usb-connector.yaml
18 interrupt-parent = <&gpio26>;
22 compatible = "usb-c-connector";
23 label = "USB-C";
24 data-role = "dual";
[all …]
Dtypec-tcpci.txt2 ---------------------------------------------
5 - compatible: should be set one of following:
6 - "nxp,ptn5110" for NXP USB PD TCPC PHY IC ptn5110.
8 - reg: the i2c slave address of typec port controller device.
9 - interrupt-parent: the phandle to the interrupt controller which provides
11 - interrupts: interrupt specification for tcpci alert.
13 Required sub-node:
14 - connector: The "usb-c-connector" attached to the tcpci chip, the bindings
16 Documentation/devicetree/bindings/connector/usb-connector.yaml
23 interrupt-parent = <&gpio3>;
[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#
10 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
15 - enum:
16 - renesas,r8a774a1-usb3-peri # RZ/G2M
17 - renesas,r8a774b1-usb3-peri # RZ/G2N
18 - renesas,r8a774c0-usb3-peri # RZ/G2E
19 - renesas,r8a774e1-usb3-peri # RZ/G2H
[all …]
Dfcs,fusb302.txt1 Fairchild FUSB302 Type-C Port controllers
4 - compatible : "fcs,fusb302"
5 - reg : I2C slave address
6 - interrupts : Interrupt specifier
8 Required sub-node:
9 - connector : The "usb-c-connector" attached to the FUSB302 IC. The bindings
12 Documentation/devicetree/bindings/connector/usb-connector.yaml
17 fusb302: typec-portc@54 {
20 interrupt-parent = <&nmi_intc>;
24 compatible = "usb-c-connector";
[all …]
Dfsl-usb.txt9 - compatible : Should be "fsl-usb2-mph" for multi port host USB
10 controllers, or "fsl-usb2-dr" for dual role USB controllers
11 or "fsl,mpc5121-usb2-dr" for dual role USB controllers of MPC5121.
13 also be mentioned (for eg. fsl-usb2-dr-v2.2 for bsc9132).
14 - phy_type : For multi port host USB controllers, should be one of
15 "ulpi", or "serial". For dual role USB controllers, should be
17 - reg : Offset and length of the register set for the device
18 - port0 : boolean; if defined, indicates port0 is connected for
19 fsl-usb2-mph compatible controllers. Either this property or
20 "port1" (or both) must be defined for "fsl-usb2-mph" compatible
[all …]
/linux-5.10/drivers/net/dsa/sja1105/
Dsja1105_clocking.c1 // SPDX-License-Identifier: BSD-3-Clause
2 /* Copyright (c) 2016-2018, NXP Semiconductors
3 * Copyright (c) 2018-2019, Vladimir Oltean <olteanv@gmail.com>
99 sja1105_packing(buf, &idiv->clksrc, 28, 24, size, op); in sja1105_cgu_idiv_packing()
100 sja1105_packing(buf, &idiv->autoblock, 11, 11, size, op); in sja1105_cgu_idiv_packing()
101 sja1105_packing(buf, &idiv->idiv, 5, 2, size, op); in sja1105_cgu_idiv_packing()
102 sja1105_packing(buf, &idiv->pd, 0, 0, size, op); in sja1105_cgu_idiv_packing()
108 const struct sja1105_regs *regs = priv->info->regs; in sja1105_cgu_idiv_config()
109 struct device *dev = priv->ds->dev; in sja1105_cgu_idiv_config()
115 return -ERANGE; in sja1105_cgu_idiv_config()
[all …]
/linux-5.10/drivers/usb/typec/
DKconfig1 # SPDX-License-Identifier: GPL-2.0
4 tristate "USB Type-C Support"
6 USB Type-C Specification defines a cable and connector for USB where
8 be Type-A plug on one end of the cable and Type-B plug on the other.
9 Determination of the host-to-device relationship happens through a
10 specific Configuration Channel (CC) which goes through the USB Type-C
12 Accessory Modes - Analog Audio and Debug - and if USB Power Delivery
16 USB Power Delivery Specification defines a protocol that can be used
18 partners. USB Power Delivery allows higher voltages then the normal
19 5V, up to 20V, and current up to 5A over the cable. The USB Power
[all …]
Dclass.c1 // SPDX-License-Identifier: GPL-2.0
3 * USB Type-C Connector Class
68 #define is_typec_partner(_dev_) (_dev_->type == &typec_partner_dev_type)
69 #define is_typec_cable(_dev_) (_dev_->type == &typec_cable_dev_type)
70 #define is_typec_plug(_dev_) (_dev_->type == &typec_plug_dev_type)
75 /* ------------------------------------------------------------------------- */
89 return partner->identity; in get_pd_identity()
93 return cable->identity; in get_pd_identity()
103 return sprintf(buf, "0x%08x\n", id->id_header); in id_header_show()
112 return sprintf(buf, "0x%08x\n", id->cert_stat); in cert_stat_show()
[all …]
Dqcom-pmic-typec.c1 // SPDX-License-Identifier: GPL-2.0
15 #include <linux/usb/role.h>
51 if (enable == qcom_usb->vbus_enabled) in qcom_pmic_typec_enable_vbus_regulator()
55 ret = regulator_enable(qcom_usb->vbus_reg); in qcom_pmic_typec_enable_vbus_regulator()
59 ret = regulator_disable(qcom_usb->vbus_reg); in qcom_pmic_typec_enable_vbus_regulator()
63 qcom_usb->vbus_enabled = enable; in qcom_pmic_typec_enable_vbus_regulator()
69 enum usb_role role; in qcom_pmic_typec_check_connection() local
73 regmap_read(qcom_usb->regmap, qcom_usb->base + TYPEC_MISC_STATUS, in qcom_pmic_typec_check_connection()
80 typec_set_orientation(qcom_usb->port, orientation); in qcom_pmic_typec_check_connection()
82 role = (stat & SNK_SRC_MODE) ? USB_ROLE_HOST : USB_ROLE_DEVICE; in qcom_pmic_typec_check_connection()
[all …]
/linux-5.10/drivers/extcon/
Dextcon-axp288.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * extcon-axp288.c - X-Power AXP288 PMIC extcon cable detection driver
5 * Copyright (c) 2017-2018 Hans de Goede <hdegoede@redhat.com>
19 #include <linux/extcon-provider.h>
22 #include <linux/usb/role.h>
26 #include <asm/intel-family.h>
28 /* Power source status register */
114 /* Power up/down reason string array */
116 "Last wake caused by user pressing the power button",
123 "Last shutdown caused by user pressing the power button",
[all …]
Dextcon-usbc-cros-ec.c1 // SPDX-License-Identifier: GPL-2.0
7 #include <linux/extcon-provider.h>
28 unsigned int dr; /* data role */
29 bool pr; /* power role (true if VBUS enabled) */
49 * cros_ec_pd_command() - Send a command to the EC.
73 return -ENOMEM; in cros_ec_pd_command()
75 msg->version = version; in cros_ec_pd_command()
76 msg->command = command; in cros_ec_pd_command()
77 msg->outsize = outsize; in cros_ec_pd_command()
78 msg->insize = insize; in cros_ec_pd_command()
[all …]
/linux-5.10/Documentation/usb/
Dchipidea.rst2 ChipIdea Highspeed Dual Role Controller Driver
6 -----------------------------------
12 -------------------------
29 otg-rev = <0x0200>;
30 adp-disable;
33 -------------------
35 1) Power up 2 Freescale i.MX6Q sabre SD boards with gadget class driver loaded
41 The A-device(with micro A plug inserted) should enumerate B-device.
43 3) Role switch
45 On B-device::
[all …]
/linux-5.10/drivers/usb/mtu3/
Dmtu3_dr.c1 // SPDX-License-Identifier: GPL-2.0
3 * mtu3_dr.c - dual role switch and host glue layer
10 #include <linux/usb/role.h>
44 if (!ssusb->otg_switch.is_u3_drd) { in toggle_opstate()
45 mtu3_setbits(ssusb->mac_base, U3D_DEVICE_CONTROL, DC_SESSION); in toggle_opstate()
46 mtu3_setbits(ssusb->mac_base, U3D_POWER_MANAGEMENT, SOFT_CONN); in toggle_opstate()
50 /* only port0 supports dual-role mode */
54 void __iomem *ibase = ssusb->ippc_base; in ssusb_port0_switch()
57 dev_dbg(ssusb->dev, "%s (switch u%d port0 to %s)\n", __func__, in ssusb_port0_switch()
61 /* 1. power off and disable u2 port0 */ in ssusb_port0_switch()
[all …]
/linux-5.10/drivers/usb/cdns3/
Dcore.h1 /* SPDX-License-Identifier: GPL-2.0 */
5 * Copyright (C) 2017-2018 NXP
6 * Copyright (C) 2018-2019 Cadence.
12 #include <linux/usb/role.h>
20 * struct cdns3_role_driver - host/gadget role driver
21 * @start: start this role
22 * @stop: stop this role
23 * @suspend: suspend callback for this role
24 * @resume: resume callback for this role
25 * @irq: irq handler for this role
[all …]
/linux-5.10/Documentation/devicetree/bindings/chrome/
Dgoogle,cros-ec-typec.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/chrome/google,cros-ec-typec.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Benson Leung <bleung@chromium.org>
11 - Prashant Malani <pmalani@chromium.org>
17 cros-ec node like google,cros-ec-spi.
21 const: google,cros-ec-typec
24 $ref: /schemas/connector/usb-connector.yaml#
27 - compatible
[all …]
/linux-5.10/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
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
37 /sys/class/typec/port0/port0-partner/.
[all …]
/linux-5.10/drivers/usb/core/
DKconfig1 # SPDX-License-Identifier: GPL-2.0
24 Say N here if you don't want USB power session persistence
26 devices that lose power get reenumerated as if they had been
29 through the power/persist sysfs node. See
30 Documentation/driver-api/usb/persist.rst for more info.
45 Say N here unless you require new-device enumeration failure to
64 "Dual-Role" device, which can act as either a device
65 or a host. The initial role is decided by the type of
67 role devices talk to each other.
69 Select this only if your board has Mini-AB/Micro-AB
[all …]
/linux-5.10/drivers/platform/chrome/
Dcros_ec_typec.c1 // SPDX-License-Identifier: GPL-2.0-only
22 #include <linux/usb/role.h>
24 #define DRV_NAME "cros-ec-typec"
53 /* Platform-specific data for the Chrome OS EC Type C controller. */
73 ret = fwnode_property_read_string(fwnode, "power-role", &buf); in cros_typec_parse_port_props()
75 dev_err(dev, "power-role not found: %d\n", ret); in cros_typec_parse_port_props()
82 cap->type = ret; in cros_typec_parse_port_props()
84 ret = fwnode_property_read_string(fwnode, "data-role", &buf); in cros_typec_parse_port_props()
86 dev_err(dev, "data-role not found: %d\n", ret); in cros_typec_parse_port_props()
93 cap->data = ret; in cros_typec_parse_port_props()
[all …]

123456789