/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 …]
|
/linux-5.10/Documentation/ABI/testing/ |
D | sysfs-class-typec | 1 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/driver-api/usb/ |
D | typec.rst | 3 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/Documentation/devicetree/bindings/usb/ |
D | richtek,rt1711h.txt | 4 - 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 …]
|
D | mediatek,mt6360-tcpc.yaml | 1 # 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 …]
|
D | typec-tcpci.txt | 2 --------------------------------------------- 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 …]
|
D | fcs,fusb302.txt | 1 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 …]
|
/linux-5.10/Documentation/devicetree/bindings/chrome/ |
D | google,cros-ec-typec.yaml | 1 # 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/drivers/platform/chrome/ |
D | cros_ec_typec.c | 1 // 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 …]
|
/linux-5.10/arch/arm64/boot/dts/freescale/ |
D | imx8mq-hummingboard-pulse.dts | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 3 * Copyright (C) 2018 Jon Nettleton <jon@solid-run.com> 6 /dts-v1/; 8 #include "dt-bindings/usb/pd.h" 9 #include "imx8mq-sr-som.dtsi" 13 compatible = "solidrun,hummingboard-pulse", "fsl,imx8mq"; 16 stdout-path = &uart1; 19 reg_usdhc2_vmmc: regulator-usdhc2-vmmc { 20 compatible = "regulator-fixed"; 21 pinctrl-names = "default"; [all …]
|
D | imx8mn-evk.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 #include <dt-bindings/usb/pd.h> 11 stdout-path = &uart2; 14 gpio-leds { 15 compatible = "gpio-leds"; 16 pinctrl-names = "default"; 17 pinctrl-0 = <&pinctrl_gpio_led>; 22 default-state = "on"; 31 reg_usdhc2_vmmc: regulator-usdhc2 { 32 compatible = "regulator-fixed"; [all …]
|
D | imx8mm-evk.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 /dts-v1/; 8 #include <dt-bindings/usb/pd.h> 13 stdout-path = &uart2; 22 compatible = "gpio-leds"; 23 pinctrl-names = "default"; 24 pinctrl-0 = <&pinctrl_gpio_led>; 29 default-state = "on"; 33 reg_usdhc2_vmmc: regulator-usdhc2 { 34 compatible = "regulator-fixed"; [all …]
|
D | imx8mq-librem5-devkit.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright 2018-2019 Purism SPC 6 /dts-v1/; 8 #include "dt-bindings/input/input.h" 9 #include <dt-bindings/interrupt-controller/irq.h> 10 #include "dt-bindings/pwm/pwm.h" 11 #include "dt-bindings/usb/pd.h" 16 compatible = "purism,librem5-devkit", "fsl,imx8mq"; 18 backlight_dsi: backlight-dsi { 19 compatible = "pwm-backlight"; [all …]
|
/linux-5.10/drivers/platform/x86/ |
D | intel_cht_int33fe_typec.c | 1 // SPDX-License-Identifier: GPL-2.0 12 * 3. FUSB302 USB Type-C Controller 16 * instantiate I²C clients for chips 2 - 4, so that standard I²C drivers 32 * Grrr, I severely dislike buggy BIOS-es. At least one BIOS enumerates 56 static const char * const max17047_suppliers[] = { "bq24190-charger" }; 59 PROPERTY_ENTRY_STRING_ARRAY("supplied-from", max17047_suppliers), 78 PROPERTY_ENTRY_STRING("linux,extcon-name", "cht_wcove_pwrsrc"), 79 PROPERTY_ENTRY_REF_ARRAY("usb-role-switch", fusb302_mux_refs), 109 PROPERTY_ENTRY_STRING("data-role", "dual"), 110 PROPERTY_ENTRY_STRING("power-role", "dual"), [all …]
|
/linux-5.10/drivers/usb/cdns3/ |
D | core.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2018-2019 Cadence. 6 * Copyright (C) 2017-2018 NXP 14 #include <linux/dma-mapping.h> 24 #include "host-export.h" 25 #include "gadget-export.h" 30 static int cdns3_role_start(struct cdns3 *cdns, enum usb_role role) in cdns3_role_start() argument 34 if (WARN_ON(role > USB_ROLE_DEVICE)) in cdns3_role_start() 37 mutex_lock(&cdns->mutex); in cdns3_role_start() 38 cdns->role = role; in cdns3_role_start() [all …]
|
/linux-5.10/arch/arm64/boot/dts/hisilicon/ |
D | hi3660-hikey960.dts | 1 // SPDX-License-Identifier: GPL-2.0 9 /dts-v1/; 12 #include "hikey960-pinctrl.dtsi" 13 #include <dt-bindings/gpio/gpio.h> 14 #include <dt-bindings/input/input.h> 15 #include <dt-bindings/interrupt-controller/irq.h> 16 #include <dt-bindings/usb/pd.h> 20 compatible = "hisilicon,hi3660-hikey960", "hisilicon,hi3660"; 35 stdout-path = "serial6:115200n8"; 44 reserved-memory { [all …]
|
/linux-5.10/include/linux/ |
D | power_supply.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Universal power supply monitor class 186 POWER_SUPPLY_TYPE_USB_PD, /* Power Delivery Port */ 187 POWER_SUPPLY_TYPE_USB_PD_DRP, /* PD Dual Role Port */ 199 POWER_SUPPLY_USB_TYPE_PD, /* Power Delivery Port */ 200 POWER_SUPPLY_USB_TYPE_PD_DRP, /* PD Dual Role Port */ 201 POWER_SUPPLY_USB_TYPE_PD_PPS, /* PD Programmable Power Supply */ 217 /* Run-time specific power supply configuration */ 232 /* Description of power supply */ 242 * Functions for drivers implementing power supply class. [all …]
|
D | pm.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * pm.h - Power management interface 39 * Device power management 45 extern const char power_group_name[]; /* = "power" */ 55 * struct dev_pm_ops - device PM callbacks. 57 * @prepare: The principal role of this callback is to prevent new children of 62 * registration of a child already in progress), it may return -EAGAIN, so 72 * runtime-suspended and it may be left in that state during the entire 77 * The PM core executes subsystem-level @prepare() for all devices before 95 * The PM core executes subsystem-level @complete() after it has executed [all …]
|
/linux-5.10/drivers/usb/typec/tcpm/ |
D | tcpm.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright 2015-2017 Google, Inc 5 * USB Power Delivery protocol stack. 30 #include <linux/usb/role.h> 156 VDM_STATE_ERR_BUSY = -3, 157 VDM_STATE_ERR_SEND = -2, 158 VDM_STATE_ERR_TMOUT = -1, 184 * Initial current capability of the new source when vSafe5V is applied during PD3.0 Fast Role Swap. 185 * Based on "Table 6-14 Fixed Supply PDO - Sink" of "USB Power Delivery Specification Revision 3.0, 392 ((tcpm_cc_is_sink((port)->cc1) && !tcpm_cc_is_sink((port)->cc2)) || \ [all …]
|
D | wcove.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * typec_wcove.c - WhiskeyCove PMIC USB Type-C PHY driver 177 #define WCOVE_DSM_UUID "482383f0-2876-4e49-8685-db66211af037" 189 obj = acpi_evaluate_dsm(ACPI_HANDLE(wcove->dev), &wcove->guid, 1, func, in wcove_typec_func() 192 dev_err(wcove->dev, "%s: failed to evaluate _DSM\n", __func__); in wcove_typec_func() 193 return -EIO; in wcove_typec_func() 205 ret = regmap_write(wcove->regmap, USBC_CONTROL1, 0); in wcove_init() 210 ret = regmap_write(wcove->regmap, USBC_IRQMASK1, 0); in wcove_init() 214 return regmap_write(wcove->regmap, USBC_IRQMASK2, 0); in wcove_init() 223 ret = regmap_read(wcove->regmap, USBC_CC1_CTRL, &cc1ctrl); in wcove_get_vbus() [all …]
|
/linux-5.10/arch/arm64/boot/dts/qcom/ |
D | sc7180-trogdor.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 8 #include <dt-bindings/gpio/gpio.h> 9 #include <dt-bindings/input/input.h> 10 #include <dt-bindings/regulator/qcom,rpmh-regulator.h> 23 /delete-node/ &hyp_mem; 24 /delete-node/ &xbl_mem; 25 /delete-node/ &aop_mem; 26 /delete-node/ &sec_apps_mem; 27 /delete-node/ &tz_mem; 35 reserved-memory { [all …]
|
/linux-5.10/arch/arm64/boot/dts/rockchip/ |
D | rk3399-pinebook-pro.dts | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 8 /dts-v1/; 9 #include <dt-bindings/input/gpio-keys.h> 10 #include <dt-bindings/input/linux-event-codes.h> 11 #include <dt-bindings/pwm/pwm.h> 12 #include <dt-bindings/usb/pd.h> 13 #include <dt-bindings/leds/common.h> 15 #include "rk3399-opp.dtsi" 19 compatible = "pine64,pinebook-pro", "rockchip,rk3399"; 22 stdout-path = "serial2:1500000n8"; [all …]
|
/linux-5.10/arch/arm/mach-omap2/ |
D | omap_hwmod_3xxx_data.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * omap_hwmod_3xxx_data.c - hardware modules present on the OMAP3xxx chips 5 * Copyright (C) 2009-2011 Nokia Corporation 12 * XXX these should be marked initdata for multi-OMAP kernels 15 #include <linux/platform_data/i2c-omap.h> 16 #include <linux/power/smartreflex.h> 17 #include <linux/platform_data/hsmmc-omap.h> 25 #include "prm-regbits-34xx.h" 26 #include "cm-regbits-34xx.h" 37 * is driver-specific or driver-kernel integration-specific belongs [all …]
|
/linux-5.10/net/smc/ |
D | smc_core.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Shared Memory Communications over RDMA (SMC-R) and RoCE 57 if (lgr->is_smcd) { in smc_lgr_list_head() 58 *lgr_lock = &lgr->smcd->lgr_lock; in smc_lgr_list_head() 59 return &lgr->smcd->lgr_list; in smc_lgr_list_head() 70 * otherwise there is a risk of out-of-sync link groups. in smc_lgr_schedule_free_work() 72 if (!lgr->freeing) { in smc_lgr_schedule_free_work() 73 mod_delayed_work(system_wq, &lgr->free_work, in smc_lgr_schedule_free_work() 74 (!lgr->is_smcd && lgr->role == SMC_CLNT) ? in smc_lgr_schedule_free_work() 89 u32 token = conn->alert_token_local; in smc_lgr_add_alert_token() [all …]
|
/linux-5.10/Documentation/driver-api/driver-model/ |
D | platform.rst | 6 platform bus: platform_device, and platform_driver. This pseudo-bus 8 like those used to integrate peripherals on many system-on-chip 16 entities in the system. This includes legacy port-based devices and 18 into system-on-chip platforms. What they usually have in common 39 provide probe() and remove() methods. They support power management 61 Or, in common situations where the device is known not to be hot-pluggable, 85 As a rule, platform specific (and often board-specific) setup code will 101 a kernel for a specific target board. Such board-specific kernels are 110 which are normally kept off until they're actively needed (to save power). 112 calls to clk_get(&pdev->dev, clock_name) return them as needed. [all …]
|