Home
last modified time | relevance | path

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

12345678910>>...17

/Linux-v6.1/drivers/usb/roles/
Dclass.c1 // SPDX-License-Identifier: GPL-2.0
3 * USB Role Switch Support
10 #include <linux/usb/role.h>
22 enum usb_role role; member
36 * usb_role_switch_set_role - Set USB role for a switch
37 * @sw: USB role switch
38 * @role: USB role to be switched to
40 * Set USB role @role for @sw.
42 int usb_role_switch_set_role(struct usb_role_switch *sw, enum usb_role role) in usb_role_switch_set_role() argument
49 mutex_lock(&sw->lock); in usb_role_switch_set_role()
[all …]
Dintel-xhci-usb-role-switch.c1 // SPDX-License-Identifier: GPL-2.0+
3 * Intel XHCI (Cherry Trail, Broxton and others) USB OTG role switch driver
5 * Copyright (c) 2016-2017 Hans de Goede <hdegoede@redhat.com>
23 #include <linux/usb/role.h>
52 "intel-xhci-usb-sw",
56 enum usb_role role) in intel_xhci_usb_set_role() argument
58 struct intel_xhci_usb_data *data = usb_role_switch_get_drvdata(sw); in intel_xhci_usb_set_role() local
71 dev_err(data->dev, "Error could not acquire lock\n"); in intel_xhci_usb_set_role()
72 return -EIO; in intel_xhci_usb_set_role()
75 pm_runtime_get_sync(data->dev); in intel_xhci_usb_set_role()
[all …]
DKconfig1 # SPDX-License-Identifier: GPL-2.0
4 tristate "USB Role Switch Support"
6 USB Role Switch is a device that can select the USB role - host or
7 device - for a USB port (connector). In most cases dual-role capable
9 multiplexer/demultiplexer switch is used to route the data lines on
19 tristate "Intel XHCI USB Role Switch"
22 Driver for the internal USB role switch for switching the USB data
27 be called intel-xhci-usb-role-switch.
/Linux-v6.1/drivers/usb/chipidea/
Dci.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * ci.h - common structures, functions, and macros of the ChipIdea driver
5 * Copyright (C) 2008 Chipidea - MIPS Technologies, Inc. All rights reserved.
17 #include <linux/usb/otg-fsm.h>
19 #include <linux/usb/role.h>
76 * struct ci_hw_ep - endpoint representation
127 * struct ci_role_driver - host/gadget role driver
128 * @start: start this role
129 * @stop: stop this role
130 * @irq: irq handler for this role
[all …]
Dotg.c1 // SPDX-License-Identifier: GPL-2.0
3 * otg.c - ChipIdea USB IP core OTG driver
25 * hw_read_otgsc - returns otgsc register bits value.
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()
50 if (cable->enabled) in hw_read_otgsc()
56 cable = &ci->platdata->id_extcon; in hw_read_otgsc()
57 if (!IS_ERR(cable->edev) || ci->role_switch) { in hw_read_otgsc()
[all …]
Ddebug.c1 // SPDX-License-Identifier: GPL-2.0
13 #include <linux/usb/otg-fsm.h>
24 static int ci_device_show(struct seq_file *s, void *data) in ci_device_show() argument
26 struct ci_hdrc *ci = s->private; in ci_device_show()
27 struct usb_gadget *gadget = &ci->gadget; in ci_device_show()
29 seq_printf(s, "speed = %d\n", gadget->speed); in ci_device_show()
30 seq_printf(s, "max_speed = %d\n", gadget->max_speed); in ci_device_show()
31 seq_printf(s, "is_otg = %d\n", gadget->is_otg); in ci_device_show()
32 seq_printf(s, "is_a_peripheral = %d\n", gadget->is_a_peripheral); in ci_device_show()
33 seq_printf(s, "b_hnp_enable = %d\n", gadget->b_hnp_enable); in ci_device_show()
[all …]
/Linux-v6.1/include/linux/usb/
Dtypec.h1 /* SPDX-License-Identifier: GPL-2.0 */
8 /* USB Type-C Specification releases */
57 static inline int is_sink(enum typec_role role) in is_sink() argument
59 return role == TYPEC_SINK; in is_sink()
62 static inline int is_source(enum typec_role role) in is_source() argument
64 return role == TYPEC_SOURCE; in is_source()
89 * struct enter_usb_data - Enter_USB Message details
90 * @eudo: Enter_USB Data Object
93 * @active_link_training is a flag that should be set with uni-directional SBRX
94 * communication, and left 0 with passive cables and with bi-directional SBRX
[all …]
Drole.h1 // SPDX-License-Identifier: GPL-2.0
17 enum usb_role role);
21 * struct usb_role_switch_desc - USB Role Switch Descriptor
22 * @fwnode: The device node to be associated with the role switch
26 * @set: Callback for setting the role
27 * @get: Callback for getting the role (optional)
28 * @allow_userspace_control: If true userspace may change the role through sysfs
29 * @driver_data: Private data pointer
33 * device controller behind the USB connector with the role switch. If
52 int usb_role_switch_set_role(struct usb_role_switch *sw, enum usb_role role);
[all …]
Dtcpm.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * Copyright 2015-2017 Google, Inc
59 * struct tcpc_dev - Port configuration and callback functions
64 * and cc=Rp-def. This allows the tcpm to provide a fallback
65 * current-limit detection method for the cc=Rp-def case.
80 * @set_roles: Called to set power and data roles
82 * Optional; if supported by hardware, called to start dual-role
83 * toggling or single-role connection detection. Toggling stops
85 * @try_role: Optional; called to set a preferred role
87 * @set_bist_data: Turn on/off bist data mode for compliance testing
[all …]
/Linux-v6.1/security/selinux/ss/
Dpolicydb.h1 /* SPDX-License-Identifier: GPL-2.0-only */
4 * configuration data for the security policy.
18 * Copyright (C) 2004-2005 Trusted Computer Solutions, Inc.
19 * Copyright (C) 2003 - 2004 Tresys Technology, LLC
35 * in the configuration data: individual permissions,
56 struct symtab permissions; /* class-specific permission symbol table */
59 /* Options how a new object user, role, and type should be decided */
76 /* Role attributes */
78 u32 value; /* internal role value */
79 u32 bounds; /* boundary of role */
[all …]
/Linux-v6.1/drivers/usb/cdns3/
Dcore.c1 // SPDX-License-Identifier: GPL-2.0
5 * Copyright (C) 2018-2019 Cadence.
6 * Copyright (C) 2017-2018 NXP
14 #include <linux/dma-mapping.h>
23 #include "host-export.h"
28 static int cdns_role_start(struct cdns *cdns, enum usb_role role) in cdns_role_start() argument
32 if (WARN_ON(role > USB_ROLE_DEVICE)) in cdns_role_start()
35 mutex_lock(&cdns->mutex); in cdns_role_start()
36 cdns->role = role; in cdns_role_start()
37 mutex_unlock(&cdns->mutex); in cdns_role_start()
[all …]
Dcore.h1 /* SPDX-License-Identifier: GPL-2.0 */
5 * Copyright (C) 2017-2018 NXP
6 * Copyright (C) 2018-2019 Cadence.
15 #include <linux/usb/role.h>
20 * struct cdns_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-v6.1/drivers/extcon/
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.
53 * @outdata: EC command output data
55 * @indata: EC command input data
71 msg = kzalloc(struct_size(msg, data, max(outsize, insize)), GFP_KERNEL); in cros_ec_pd_command()
73 return -ENOMEM; in cros_ec_pd_command()
75 msg->version = version; in cros_ec_pd_command()
[all …]
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>
137 ret = regmap_read(info->regmap, AXP288_PS_BOOT_REASON_REG, &val); in axp288_extcon_log_rsi()
139 dev_err(info->dev, "failed to read reset source indicator\n"); in axp288_extcon_log_rsi()
143 bits = val & GENMASK(ARRAY_SIZE(axp288_pwr_up_down_info) - 1, 0); in axp288_extcon_log_rsi()
145 dev_dbg(info->dev, "%s\n", axp288_pwr_up_down_info[i]); in axp288_extcon_log_rsi()
[all …]
/Linux-v6.1/drivers/usb/typec/mux/
Dintel_pmc_mux.c1 // SPDX-License-Identifier: GPL-2.0
14 #include <linux/usb/role.h>
59 /* Common Mode Data bits */
65 /* DP specific Mode Data bits */
68 /* TBT specific Mode Data bits */
129 enum usb_role role; member
152 /* SoC expects the USB Type-C port numbers to start with 0 */ in update_port_status()
153 port_num = port->usb3_port - 1; in update_port_status()
155 port->iom_status = readl(port->pmc->iom_base + in update_port_status()
156 port->pmc->iom_port_status_offset + in update_port_status()
[all …]
/Linux-v6.1/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-v6.1/drivers/usb/typec/
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-v6.1/drivers/net/ethernet/intel/ice/
Dice_lag.c1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright (C) 2018-2021, Intel Corporation. */
10 * ice_lag_nop_handler - no-op Rx handler to disable LAG
19 * ice_lag_set_primary - set PF LAG state as Primary
24 struct ice_pf *pf = lag->pf; in ice_lag_set_primary()
29 if (lag->role != ICE_LAG_UNSET && lag->role != ICE_LAG_BACKUP) { in ice_lag_set_primary()
31 netdev_name(lag->netdev)); in ice_lag_set_primary()
35 lag->role = ICE_LAG_PRIMARY; in ice_lag_set_primary()
39 * ice_lag_set_backup - set PF LAG state to Backup
44 struct ice_pf *pf = lag->pf; in ice_lag_set_backup()
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/usb/
Danalogix,anx7411.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Analogix ANX7411 Type-C controller bindings
10 - Xin Ji <xji@analogixsemi.com>
15 - analogix,anx7411
25 $ref: ../connector/usb-connector.yaml
33 const: usb-c-connector
35 power-role: true
37 data-role: true
[all …]
Dmediatek,mtu3.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 ---
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
11 - Chunfeng Yun <chunfeng.yun@mediatek.com>
14 - $ref: "usb-drd.yaml"
23 - enum:
24 - mediatek,mt2712-mtu3
25 - mediatek,mt8173-mtu3
26 - mediatek,mt8183-mtu3
27 - mediatek,mt8188-mtu3
[all …]
/Linux-v6.1/drivers/usb/musb/
Dmediatek.c1 // SPDX-License-Identifier: GPL-2.0
11 #include <linux/dma-mapping.h>
15 #include <linux/usb/role.h>
50 enum usb_role role; member
56 struct device *dev = glue->dev; in mtk_musb_clks_get()
58 glue->clks[0].id = "main"; in mtk_musb_clks_get()
59 glue->clks[1].id = "mcu"; in mtk_musb_clks_get()
60 glue->clks[2].id = "univpll"; in mtk_musb_clks_get()
62 return devm_clk_bulk_get(dev, MTK_MUSB_CLKS_NUM, glue->clks); in mtk_musb_clks_get()
65 static int mtk_otg_switch_set(struct mtk_glue *glue, enum usb_role role) in mtk_otg_switch_set() argument
[all …]
/Linux-v6.1/Documentation/ABI/testing/
Dsysfs-class-usb_role5 Place in sysfs for USB Role Switches. USB Role Switch is a
6 device that can select the data role (host or device) for USB
9 What: /sys/class/usb_role/<switch>/role
13 The current role of the switch. This attribute can be used for
14 requesting role swapping with non-USB Type-C ports. With USB
15 Type-C ports, the ABI defined for USB Type-C connector class
19 - none
20 - host
21 - device
/Linux-v6.1/drivers/usb/mtu3/
Dmtu3.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * mtu3.h - MediaTek USB3 DRD header
25 #include <linux/usb/role.h>
34 #define MU3D_EP_TXCR0(epnum) (U3D_TX1CSR0 + (((epnum) - 1) * 0x10))
35 #define MU3D_EP_TXCR1(epnum) (U3D_TX1CSR1 + (((epnum) - 1) * 0x10))
36 #define MU3D_EP_TXCR2(epnum) (U3D_TX1CSR2 + (((epnum) - 1) * 0x10))
38 #define MU3D_EP_RXCR0(epnum) (U3D_RX1CSR0 + (((epnum) - 1) * 0x10))
39 #define MU3D_EP_RXCR1(epnum) (U3D_RX1CSR1 + (((epnum) - 1) * 0x10))
40 #define MU3D_EP_RXCR2(epnum) (U3D_RX1CSR2 + (((epnum) - 1) * 0x10))
42 #define USB_QMU_TQHIAR(epnum) (U3D_TXQHIAR1 + (((epnum) - 1) * 0x4))
[all …]
/Linux-v6.1/arch/arm64/boot/dts/qcom/
Dsc7280-idp-ec-h1.dtsi1 // SPDX-License-Identifier: BSD-3-Clause
11 pinctrl-0 = <&qup_spi10_data_clk>, <&qup_spi10_cs_gpio_init_high>, <&qup_spi10_cs_gpio>;
12 cs-gpios = <&tlmm 43 GPIO_ACTIVE_LOW>;
15 compatible = "google,cros-ec-spi";
17 interrupt-parent = <&tlmm>;
19 pinctrl-names = "default";
20 pinctrl-0 = <&ap_ec_int_l>;
21 spi-max-frequency = <3000000>;
24 compatible = "google,cros-ec-pwm";
25 #pwm-cells = <1>;
[all …]
/Linux-v6.1/drivers/platform/chrome/
Dcros_ec_typec.c1 // SPDX-License-Identifier: GPL-2.0-only
25 #include <linux/usb/role.h>
27 #define DRV_NAME "cros-ec-typec"
45 /* Per port data. */
66 uint8_t role; member
70 /* Flag indicating that PD partner discovery data parsing is completed. */
77 /* PDO-related structs */
83 /* Platform-specific data for the Chrome OS EC Type C controller. */
105 ret = fwnode_property_read_string(fwnode, "power-role", &buf); in cros_typec_parse_port_props()
107 dev_err(dev, "power-role not found: %d\n", ret); in cros_typec_parse_port_props()
[all …]

12345678910>>...17