/linux-6.8/drivers/usb/roles/ |
D | class.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * USB Role Switch Support 10 #include <linux/usb/role.h> 25 enum usb_role role; member 40 * usb_role_switch_set_role - Set USB role for a switch 41 * @sw: USB role switch 42 * @role: USB role to be switched to 44 * Set USB role @role for @sw. 46 int usb_role_switch_set_role(struct usb_role_switch *sw, enum usb_role role) in usb_role_switch_set_role() argument 53 if (!sw->registered) in usb_role_switch_set_role() [all …]
|
D | intel-xhci-usb-role-switch.c | 1 // 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 …]
|
D | Kconfig | 1 # 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-6.8/drivers/usb/chipidea/ |
D | ci.h | 1 /* 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 * @suspend: system suspend handler for this role [all …]
|
D | otg.c | 1 // 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 …]
|
/linux-6.8/include/linux/usb/ |
D | role.h | 1 // 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 …]
|
D | typec.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 8 /* USB Type-C Specification releases */ 58 static inline int is_sink(enum typec_role role) in is_sink() argument 60 return role == TYPEC_SINK; in is_sink() 63 static inline int is_source(enum typec_role role) in is_source() argument 65 return role == TYPEC_SOURCE; in is_source() 90 * struct enter_usb_data - Enter_USB Message details 91 * @eudo: Enter_USB Data Object 94 * @active_link_training is a flag that should be set with uni-directional SBRX 95 * communication, and left 0 with passive cables and with bi-directional SBRX [all …]
|
D | tcpm.h | 1 /* 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-6.8/security/selinux/ss/ |
D | policydb.h | 1 /* 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-6.8/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" 29 static int cdns_role_start(struct cdns *cdns, enum usb_role role) in cdns_role_start() argument 33 if (WARN_ON(role > USB_ROLE_DEVICE)) in cdns_role_start() 36 mutex_lock(&cdns->mutex); in cdns_role_start() 37 cdns->role = role; in cdns_role_start() 38 mutex_unlock(&cdns->mutex); in cdns_role_start() [all …]
|
D | core.h | 1 /* 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-6.8/drivers/extcon/ |
D | extcon-usbc-cros-ec.c | 1 // 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 …]
|
D | extcon-axp288.c | 1 // 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-6.8/drivers/usb/typec/mux/ |
D | intel_pmc_mux.c | 1 // SPDX-License-Identifier: GPL-2.0 14 #include <linux/usb/role.h> 61 /* Common Mode Data bits */ 67 /* DP specific Mode Data bits */ 70 /* TBT specific Mode Data bits */ 142 enum usb_role role; member 170 /* SoC expects the USB Type-C port numbers to start with 0 */ in update_port_status() 171 port_num = port->usb3_port - 1; in update_port_status() 173 port->iom_status = readl(port->pmc->iom_base + in update_port_status() 174 port->pmc->iom_port_status_offset + in update_port_status() [all …]
|
/linux-6.8/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-6.8/Documentation/devicetree/bindings/usb/ |
D | analogix,anx7411.yaml | 1 # 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 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 …]
|
D | mediatek,mtu3.yaml | 1 # 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,mt8186-mtu3 [all …]
|
/linux-6.8/drivers/usb/musb/ |
D | mediatek.c | 1 // SPDX-License-Identifier: GPL-2.0 11 #include <linux/dma-mapping.h> 16 #include <linux/usb/role.h> 51 enum usb_role role; member 57 struct device *dev = glue->dev; in mtk_musb_clks_get() 59 glue->clks[0].id = "main"; in mtk_musb_clks_get() 60 glue->clks[1].id = "mcu"; in mtk_musb_clks_get() 61 glue->clks[2].id = "univpll"; in mtk_musb_clks_get() 63 return devm_clk_bulk_get(dev, MTK_MUSB_CLKS_NUM, glue->clks); in mtk_musb_clks_get() 66 static int mtk_otg_switch_set(struct mtk_glue *glue, enum usb_role role) in mtk_otg_switch_set() argument [all …]
|
/linux-6.8/Documentation/ABI/testing/ |
D | sysfs-class-usb_role | 5 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-6.8/drivers/net/wireless/realtek/rtw89/ |
D | chan.c | 1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause 2 /* Copyright(c) 2020-2022 Realtek Corporation 78 offset = (primary_freq - center_freq - 10) / 20; in rtw89_get_primary_chan_idx() 81 offset = (center_freq - primary_freq - 10) / 20; in rtw89_get_primary_chan_idx() 100 return (prisb_cal_ofst[bw] + pri_ch - central_ch) / 4; in rtw89_get_primary_sb_idx() 110 chan->channel = center_chan; in rtw89_chan_create() 111 chan->primary_channel = primary_chan; in rtw89_chan_create() 112 chan->band_type = band; in rtw89_chan_create() 113 chan->band_width = bandwidth; in rtw89_chan_create() 118 chan->freq = center_freq; in rtw89_chan_create() [all …]
|
/linux-6.8/drivers/usb/mtu3/ |
D | mtu3.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * mtu3.h - MediaTek USB3 DRD header 26 #include <linux/usb/role.h> 35 #define MU3D_EP_TXCR0(epnum) (U3D_TX1CSR0 + (((epnum) - 1) * 0x10)) 36 #define MU3D_EP_TXCR1(epnum) (U3D_TX1CSR1 + (((epnum) - 1) * 0x10)) 37 #define MU3D_EP_TXCR2(epnum) (U3D_TX1CSR2 + (((epnum) - 1) * 0x10)) 39 #define MU3D_EP_RXCR0(epnum) (U3D_RX1CSR0 + (((epnum) - 1) * 0x10)) 40 #define MU3D_EP_RXCR1(epnum) (U3D_RX1CSR1 + (((epnum) - 1) * 0x10)) 41 #define MU3D_EP_RXCR2(epnum) (U3D_RX1CSR2 + (((epnum) - 1) * 0x10)) 43 #define USB_QMU_TQHIAR(epnum) (U3D_TXQHIAR1 + (((epnum) - 1) * 0x4)) [all …]
|
/linux-6.8/arch/arm64/boot/dts/qcom/ |
D | sc7280-idp-ec-h1.dtsi | 1 // 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-6.8/drivers/platform/chrome/ |
D | cros_ec_typec.c | 1 // SPDX-License-Identifier: GPL-2.0-only 22 #define DRV_NAME "cros-ec-typec" 35 ret = fwnode_property_read_string(fwnode, "power-role", &buf); in cros_typec_parse_port_props() 37 dev_err(dev, "power-role not found: %d\n", ret); in cros_typec_parse_port_props() 44 cap->type = ret; in cros_typec_parse_port_props() 46 ret = fwnode_property_read_string(fwnode, "data-role", &buf); in cros_typec_parse_port_props() 48 dev_err(dev, "data-role not found: %d\n", ret); in cros_typec_parse_port_props() 55 cap->data = ret; in cros_typec_parse_port_props() 57 /* Try-power-role is optional. */ in cros_typec_parse_port_props() 58 ret = fwnode_property_read_string(fwnode, "try-power-role", &buf); in cros_typec_parse_port_props() [all …]
|
/linux-6.8/net/bridge/ |
D | br_private_mrp.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 53 * BR_MRP_NONE - means the HW can't run at all the protocol, so the SW stops 55 * BR_MRP_SW - the HW can help the SW to run the protocol, by redirecting MRP 57 * BR_MRP_HW - the HW can implement completely the protocol. 71 enum br_mrp_port_role_type role); 74 int br_mrp_set_ring_role(struct net_bridge *br, struct br_mrp_ring_role *role); 77 int br_mrp_set_in_role(struct net_bridge *br, struct br_mrp_in_role *role); 86 enum br_mrp_ring_role_type role); 95 enum br_mrp_port_role_type role); 99 enum br_mrp_in_role_type role); [all …]
|
/linux-6.8/Documentation/virt/kvm/x86/ |
D | mmu.rst | 1 .. SPDX-License-Identifier: GPL-2.0 13 - correctness: 18 - security: 21 - performance: 23 - scaling: 25 - hardware: 27 - integration: 31 - dirty tracking: 33 and framebuffer-based displays 34 - footprint: [all …]
|