/openbmc/u-boot/drivers/i2c/muxes/ |
H A D | i2c-mux-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0+ 11 #include <asm-generic/gpio.h> 22 * struct i2c_mux_gpio_priv - private data for i2c mux gpio 26 * @gpios: the mux-gpios array 27 * @n_gpios: num of gpios in mux-gpios 28 * @idle: the value of idle-state 33 struct gpio_desc *gpios; member 45 for (i = 0; i < priv->n_gpios; i++) { in i2c_mux_gpio_select() 46 ret = dm_gpio_set_value(&priv->gpios[i], (channel >> i) & 1); in i2c_mux_gpio_select() 60 for (i = 0; i < priv->n_gpios; i++) { in i2c_mux_gpio_deselect() [all …]
|
/openbmc/linux/drivers/mux/ |
H A D | gpio.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * GPIO-controlled multiplexer driver 15 #include <linux/mux/driver.h> 20 struct gpio_descs *gpios; member 23 static int mux_gpio_set(struct mux_control *mux, int state) in mux_gpio_set() argument 25 struct mux_gpio *mux_gpio = mux_chip_priv(mux->chip); in mux_gpio_set() 31 gpiod_set_array_value_cansleep(mux_gpio->gpios->ndescs, in mux_gpio_set() 32 mux_gpio->gpios->desc, in mux_gpio_set() 33 mux_gpio->gpios->info, values); in mux_gpio_set() 43 { .compatible = "gpio-mux", }, [all …]
|
/openbmc/linux/arch/arm/boot/dts/nuvoton/ |
H A D | nuvoton-npcm730-gbs.dts | 1 // SPDX-License-Identifier: GPL-2.0 4 /dts-v1/; 5 #include "nuvoton-npcm730.dtsi" 6 #include <dt-bindings/gpio/gpio.h> 10 compatible = "quanta,gbs-bmc","nuvoton,npcm730"; 71 stdout-path = &serial0; 78 gpio-keys { 79 compatible = "gpio-keys"; 80 sas-cable0 { 81 label = "sas-cable0"; [all …]
|
H A D | nuvoton-npcm750-runbmc-olympus.dts | 1 // SPDX-License-Identifier: GPL-2.0 5 /dts-v1/; 6 #include "nuvoton-npcm750.dtsi" 7 #include "nuvoton-npcm750-runbmc-olympus-pincfg.dtsi" 9 #include <dt-bindings/i2c/i2c.h> 10 #include <dt-bindings/gpio/gpio.h> 43 stdout-path = &serial3; 50 iio-hwmon { 51 compatible = "iio-hwmon"; 52 io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>, [all …]
|
/openbmc/linux/arch/arm/boot/dts/microchip/ |
H A D | lan966x-pcb8309.dts | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 3 * lan966x_pcb8309.dts - Device Tree file for PCB8309 5 /dts-v1/; 7 #include "dt-bindings/phy/phy-lan966x-serdes.h" 10 model = "Microchip EVB - LAN9662"; 11 compatible = "microchip,lan9662-pcb8309", "microchip,lan9662", "microchip,lan966"; 20 stdout-path = "serial0:115200n8"; 23 gpio-restart { 24 compatible = "gpio-restart"; 25 gpios = <&gpio 56 GPIO_ACTIVE_LOW>; [all …]
|
H A D | at91-tse850-3.dts | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * at91-tse850-3.dts - Device Tree file for the Axentia TSE-850 3.0 board 9 /dts-v1/; 10 #include <dt-bindings/pwm/pwm.h> 11 #include "at91-linea.dtsi" 14 model = "Axentia TSE-850 3.0"; 19 compatible = "fixed-clock"; 21 #clock-cells = <0>; 22 clock-frequency = <16000000>; 23 clock-output-names = "sck"; [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/sound/ |
H A D | simple-audio-mux.yaml | 1 # SPDX-License-Identifier: (GPL-2.0+ OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/sound/simple-audio-mux.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Alexandre Belloni <aleandre.belloni@bootlin.com> 13 Simple audio multiplexers are driven using gpios, allowing to select which of 17 - $ref: dai-common.yaml# 21 const: simple-audio-mux 23 mux-gpios: 25 GPIOs used to select the input line. [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/mux/ |
H A D | gpio-mux.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/mux/gpio-mux.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: GPIO-based multiplexer controller 10 - Peter Rosin <peda@axentia.se> 22 const: gpio-mux 24 mux-gpios: 26 List of gpios used to control the multiplexer, least significant bit first. 28 '#mux-control-cells': [all …]
|
H A D | mux-controller.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/mux/mux-controller.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Peter Rosin <peda@axentia.se> 13 A multiplexer (or mux) controller will have one, or several, consumer devices 14 that uses the mux controller. Thus, a mux controller can possibly control 16 multiplexer needed by each consumer, but a single mux controller can of course 19 A mux controller provides a number of states to its consumers, and the state 20 space is a simple zero-based enumeration. I.e. 0-1 for a 2-way multiplexer, [all …]
|
/openbmc/linux/drivers/i2c/muxes/ |
H A D | i2c-mux-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #include <linux/i2c-mux.h> 11 #include <linux/platform_data/i2c-mux-gpio.h> 23 struct gpio_desc **gpios; member 26 static void i2c_mux_gpio_set(const struct gpiomux *mux, unsigned val) in i2c_mux_gpio_set() argument 32 gpiod_set_array_value_cansleep(mux->ngpios, mux->gpios, NULL, values); in i2c_mux_gpio_set() 37 struct gpiomux *mux = i2c_mux_priv(muxc); in i2c_mux_gpio_select() local 39 i2c_mux_gpio_set(mux, chan); in i2c_mux_gpio_select() 46 struct gpiomux *mux = i2c_mux_priv(muxc); in i2c_mux_gpio_deselect() local 48 i2c_mux_gpio_set(mux, mux->data.idle); in i2c_mux_gpio_deselect() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/i2c/ |
H A D | i2c-mux-gpio.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/i2c/i2c-mux-gpio.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: GPIO-based I2C Bus Mux 10 - Wolfram Sang <wsa@kernel.org> 13 This binding describes an I2C bus multiplexer that uses GPIOs to route the I2C signals. 15 +-----+ +-----+ 17 +------------+ +-----+ +-----+ 19 | | /--------+--------+ [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/usb/ |
H A D | gpio-sbu-mux.yaml | 1 # 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 21 - enum: 22 - onnn,fsusb43l10x 23 - pericom,pi3usb102 [all …]
|
/openbmc/linux/arch/arm64/boot/dts/mediatek/ |
H A D | mt7986a-bananapi-bpi-r3.dts | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 5 * Frank Wunderlich <frank-w@public-files.de> 9 /dts-v1/; 10 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/input/input.h> 12 #include <dt-bindings/leds/common.h> 13 #include <dt-bindings/pinctrl/mt65xx.h> 18 model = "Bananapi BPI-R3"; 19 chassis-type = "embedded"; 20 compatible = "bananapi,bpi-r3", "mediatek,mt7986a"; [all …]
|
H A D | pumpkin-common.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 7 #include <dt-bindings/gpio/gpio.h> 16 stdout-path = "serial0:921600n8"; 21 compatible = "linaro,optee-tz"; 26 gpio-keys { 27 compatible = "gpio-keys"; 28 pinctrl-names = "default"; 29 pinctrl-0 = <&gpio_keys_default>; 31 key-volume-up { 32 gpios = <&pio 42 GPIO_ACTIVE_LOW>; [all …]
|
H A D | mt7622-bananapi-bpi-r64.dts | 5 * SPDX-License-Identifier: (GPL-2.0 OR MIT) 8 /dts-v1/; 9 #include <dt-bindings/input/input.h> 10 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/leds/common.h> 17 model = "Bananapi BPI-R64"; 18 chassis-type = "embedded"; 19 compatible = "bananapi,bpi-r64", "mediatek,mt7622"; 26 stdout-path = "serial0:115200n8"; 32 proc-supply = <&mt6380_vcpu_reg>; [all …]
|
/openbmc/linux/drivers/net/mdio/ |
H A D | mdio-mux-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0 8 #include <linux/mdio-mux.h> 18 struct gpio_descs *gpios; member 33 gpiod_set_array_value_cansleep(s->gpios->ndescs, s->gpios->desc, in mdio_mux_gpio_switch_fn() 34 s->gpios->info, values); in mdio_mux_gpio_switch_fn() 42 struct gpio_descs *gpios; in mdio_mux_gpio_probe() local 45 gpios = devm_gpiod_get_array(&pdev->dev, NULL, GPIOD_OUT_LOW); in mdio_mux_gpio_probe() 46 if (IS_ERR(gpios)) in mdio_mux_gpio_probe() 47 return PTR_ERR(gpios); in mdio_mux_gpio_probe() 49 s = devm_kzalloc(&pdev->dev, sizeof(*s), GFP_KERNEL); in mdio_mux_gpio_probe() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/fsi/ |
H A D | fsi-master-aspeed.txt | 1 Device-tree bindings for AST2600 FSI master 2 ------------------------------------------- 8 - compatible: "aspeed,ast2600-fsi-master" 9 - reg: base address and length 10 - clocks: phandle and clock number 11 - interrupts: platform dependent interrupt description 12 - pinctrl-0: phandle to pinctrl node 13 - pinctrl-names: pinctrl state 16 - cfam-reset-gpios: GPIO for CFAM reset 18 - fsi-routing-gpios: GPIO for setting the FSI mux (internal or cabled) [all …]
|
H A D | fsi-master-gpio.txt | 1 Device-tree bindings for gpio-based FSI master driver 2 ----------------------------------------------------- 5 - compatible = "fsi-master-gpio"; 6 - clock-gpios = <gpio-descriptor>; : GPIO for FSI clock 7 - data-gpios = <gpio-descriptor>; : GPIO for FSI data signal 10 - enable-gpios = <gpio-descriptor>; : GPIO for enable signal 11 - trans-gpios = <gpio-descriptor>; : GPIO for voltage translator enable 12 - mux-gpios = <gpio-descriptor>; : GPIO for pin multiplexing with other 14 - no-gpio-delays; : Don't add extra delays between GPIO 21 fsi-master { [all …]
|
/openbmc/linux/arch/arm64/boot/dts/rockchip/ |
H A D | rk3326-odroid-go3.dts | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 8 /dts-v1/; 9 #include "rk3326-odroid-go.dtsi" 12 model = "ODROID-GO Super"; 13 compatible = "hardkernel,rk3326-odroid-go3", "rockchip,rk3326"; 15 joystick_mux_controller: mux-controller { 16 compatible = "gpio-mux"; 18 #mux-control-cells = <0>; 20 mux-gpios = <&gpio3 RK_PB3 GPIO_ACTIVE_LOW>, 24 joystick_mux: adc-mux { [all …]
|
/openbmc/obmc-console/docs/ |
H A D | mux-support.md | 1 # Mux Support 3 In some hardware designs, multiple UARTS may be available behind a Mux, which 4 requires obmc-console to select one at a time. 7 a mux. GPIO `UART-MUX-CTL` can be used to select one. This scenario is shown in 8 the [Example Diagram](#example-diagram) 10 Then there will be one obmc-console-server process, and 2 consoles will be 13 The obmc-console-server will receive configuration for both consoles detailing 14 the gpios to be used to control the mux and the values they should have when 18 [design document](https://github.com/openbmc/docs/blob/master/designs/uart-mux-support.md) 22 The kernel will not be aware of this mux and the support can be implemented in [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/display/msm/ |
H A D | hdmi.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Rob Clark <robdclark@gmail.com> 16 - qcom,hdmi-tx-8084 17 - qcom,hdmi-tx-8660 18 - qcom,hdmi-tx-8960 19 - qcom,hdmi-tx-8974 20 - qcom,hdmi-tx-8994 21 - qcom,hdmi-tx-8996 [all …]
|
/openbmc/u-boot/arch/arm/dts/ |
H A D | mt7623n-bananapi-bpi-r2.dts | 5 * SPDX-License-Identifier: (GPL-2.0 OR MIT) 8 /dts-v1/; 12 model = "Bananapi BPI-R2"; 13 compatible = "bananapi,bpi-r2", "mediatek,mt7623"; 16 stdout-path = &uart2; 17 tick-timer = &timer0; 20 reg_1p8v: regulator-1p8v { 21 compatible = "regulator-fixed"; 22 regulator-name = "fixed-1.8V"; 23 regulator-min-microvolt = <1800000>; [all …]
|
/openbmc/linux/arch/arm64/boot/dts/xilinx/ |
H A D | zynqmp-zcu100-revC.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * (C) Copyright 2016 - 2022, Xilinx, Inc. 6 * (C) Copyright 2022 - 2023, Advanced Micro Devices, Inc. 12 /dts-v1/; 15 #include "zynqmp-clk-ccf.dtsi" 16 #include <dt-bindings/input/input.h> 17 #include <dt-bindings/interrupt-controller/irq.h> 18 #include <dt-bindings/gpio/gpio.h> 19 #include <dt-bindings/pinctrl/pinctrl-zynqmp.h> 20 #include <dt-bindings/phy/phy.h> [all …]
|
/openbmc/linux/arch/arm/boot/dts/aspeed/ |
H A D | aspeed-bmc-lenovo-hr630.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Copyright (C) 2019-present Lenovo 8 /dts-v1/; 10 #include "aspeed-g5.dtsi" 11 #include <dt-bindings/gpio/aspeed-gpio.h> 15 compatible = "lenovo,hr630-bmc", "aspeed,ast2500"; 29 stdout-path = &uart5; 38 reserved-memory { 39 #address-cells = <1>; 40 #size-cells = <1>; [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/phy/ |
H A D | ti,tcan104x-can.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/phy/ti,tcan104x-can.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Aswath Govindraju <a-govindraju@ti.com> 14 pattern: "^can-phy" 18 - nxp,tjr1443 19 - ti,tcan1042 20 - ti,tcan1043 22 '#phy-cells': [all …]
|