Home
last modified time | relevance | path

Searched +full:gpio +full:- +full:sbu +full:- +full:mux (Results 1 – 12 of 12) sorted by relevance

/linux-6.12.1/Documentation/devicetree/bindings/usb/
Dgpio-sbu-mux.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/usb/gpio-sbu-mux.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: GPIO-based SBU mux
10 - Bjorn Andersson <andersson@kernel.org>
13 In USB Type-C applications the SBU lines needs to be connected, disconnected
15 a family of hardware solutions which switches between these modes using GPIO
21 - enum:
22 - nxp,cbdtu02043
[all …]
/linux-6.12.1/drivers/usb/typec/mux/
DKconfig1 # SPDX-License-Identifier: GPL-2.0
3 menu "USB Type-C Multiplexer/DeMultiplexer Switch support"
12 common USB Type-C connector.
16 tristate "Generic GPIO based SBU mux for USB Type-C applications"
18 Say Y or M if your system uses a GPIO based mux for managing the
19 connected state and the swapping of the SBU lines in a Type-C port.
22 tristate "Pericom PI3USB30532 Type-C cross switch driver"
25 Say Y or M if your system has a Pericom PI3USB30532 Type-C cross
26 switch / mux chip found on some devices with a Type-C port.
29 tristate "Intel PMC mux control"
[all …]
Dgpio-sbu-mux.c1 // SPDX-License-Identifier: GPL-2.0
9 #include <linux/gpio/consumer.h>
19 struct typec_mux_dev *mux; member
33 mutex_lock(&sbu_mux->lock); in gpio_sbu_switch_set()
35 enabled = sbu_mux->enabled; in gpio_sbu_switch_set()
36 swapped = sbu_mux->swapped; in gpio_sbu_switch_set()
50 if (enabled != sbu_mux->enabled) in gpio_sbu_switch_set()
51 gpiod_set_value_cansleep(sbu_mux->enable_gpio, enabled); in gpio_sbu_switch_set()
53 if (swapped != sbu_mux->swapped) in gpio_sbu_switch_set()
54 gpiod_set_value_cansleep(sbu_mux->select_gpio, swapped); in gpio_sbu_switch_set()
[all …]
DMakefile1 # SPDX-License-Identifier: GPL-2.0
3 obj-$(CONFIG_TYPEC_MUX_FSA4480) += fsa4480.o
4 obj-$(CONFIG_TYPEC_MUX_GPIO_SBU) += gpio-sbu-mux.o
5 obj-$(CONFIG_TYPEC_MUX_PI3USB30532) += pi3usb30532.o
6 obj-$(CONFIG_TYPEC_MUX_INTEL_PMC) += intel_pmc_mux.o
7 obj-$(CONFIG_TYPEC_MUX_IT5205) += it5205.o
8 obj-$(CONFIG_TYPEC_MUX_NB7VPQ904M) += nb7vpq904m.o
9 obj-$(CONFIG_TYPEC_MUX_PTN36502) += ptn36502.o
10 obj-$(CONFIG_TYPEC_MUX_WCD939X_USBSS) += wcd939x-usbss.o
Dwcd939x-usbss.c1 // SPDX-License-Identifier: GPL-2.0-only
14 #include <linux/gpio/consumer.h>
72 #define WCD_USBSS_SWITCH_SELECT0_DP_AUXP_SWITCHES BIT(7) /* 1-> MG2 */
73 #define WCD_USBSS_SWITCH_SELECT0_DP_AUXM_SWITCHES BIT(6) /* 1-> MG2 */
76 #define WCD_USBSS_SWITCH_SELECT0_SENSE_SWITCHES BIT(1) /* 1-> SBU2 */
77 #define WCD_USBSS_SWITCH_SELECT0_MIC_SWITCHES BIT(0) /* 1-> MG2 */
89 #define WCD_USBSS_SWITCH_SELECT1_AGND_SWITCHES BIT(0) /* 1-> MG2 */
190 struct typec_mux_dev *mux; member
242 bool reverse = (usbss->orientation == TYPEC_ORIENTATION_REVERSE); in wcd939x_usbss_set()
249 if (usbss->mode < TYPEC_STATE_MODAL || in wcd939x_usbss_set()
[all …]
/linux-6.12.1/arch/arm64/boot/dts/qcom/
Dsc8180x-lenovo-flex-5g.dts1 // SPDX-License-Identifier: BSD-3-Clause
3 * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
4 * Copyright (c) 2020-2023, Linaro Limited
7 /dts-v1/;
9 #include <dt-bindings/firmware/qcom,scm.h>
10 #include <dt-bindings/gpio/gpio.h>
11 #include <dt-bindings/input/gpio-keys.h>
12 #include <dt-bindings/input/input.h>
13 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
15 #include "sc8180x-pmics.dtsi"
[all …]
Dsc8280xp-crd.dts1 // SPDX-License-Identifier: BSD-3-Clause
7 /dts-v1/;
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
13 #include "sc8280xp-pmics.dtsi"
17 compatible = "qcom,sc8280xp-crd", "qcom,sc8280xp";
26 compatible = "pwm-backlight";
28 enable-gpios = <&pmc8280_1_gpios 8 GPIO_ACTIVE_HIGH>;
29 power-supply = <&vreg_edp_bl>;
31 pinctrl-names = "default";
[all …]
Dsc8180x-primus.dts1 // SPDX-License-Identifier: BSD-3-Clause
3 * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
4 * Copyright (c) 2020-2023, Linaro Limited
7 /dts-v1/;
9 #include <dt-bindings/firmware/qcom,scm.h>
10 #include <dt-bindings/gpio/gpio.h>
11 #include <dt-bindings/input/gpio-keys.h>
12 #include <dt-bindings/input/input.h>
13 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
15 #include "sc8180x-pmics.dtsi"
[all …]
Dsc8280xp-lenovo-thinkpad-x13s.dts1 // SPDX-License-Identifier: BSD-3-Clause
7 /dts-v1/;
9 #include <dt-bindings/iio/qcom,spmi-adc7-pm8350.h>
10 #include <dt-bindings/gpio/gpio.h>
11 #include <dt-bindings/input/gpio-keys.h>
12 #include <dt-bindings/input/input.h>
13 #include <dt-bindings/leds/common.h>
14 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
17 #include "sc8280xp-pmics.dtsi"
21 compatible = "lenovo,thinkpad-x13s", "qcom,sc8280xp";
[all …]
/linux-6.12.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>
15 MUX and USB interface controller.
20 - enum:
21 - usb-a-connector
22 - usb-b-connector
23 - usb-c-connector
[all …]
/linux-6.12.1/arch/arm64/boot/dts/freescale/
Dimx8qxp-mek.dts1 // SPDX-License-Identifier: GPL-2.0+
6 /dts-v1/;
9 #include <dt-bindings/usb/pd.h>
13 compatible = "fsl,imx8qxp-mek", "fsl,imx8qxp";
16 stdout-path = &lpuart0;
24 reg_usdhc2_vmmc: usdhc2-vmmc {
25 compatible = "regulator-fixed";
26 regulator-name = "SD1_SPWR";
27 regulator-min-microvolt = <3000000>;
28 regulator-max-microvolt = <3000000>;
[all …]
Dimx8qm-mek.dts1 // SPDX-License-Identifier: GPL-2.0+
3 * Copyright 2018-2019 NXP
7 /dts-v1/;
9 #include <dt-bindings/usb/pd.h>
14 compatible = "fsl,imx8qm-mek", "fsl,imx8qm";
17 stdout-path = &lpuart0;
21 /delete-node/ cpu-map;
22 /delete-node/ cpu@100;
23 /delete-node/ cpu@101;
26 thermal-zones {
[all …]