| /kernel/linux/linux-4.19/drivers/i2c/muxes/ |
| D | i2c-mux-gpio.c | 12 #include <linux/i2c-mux.h> 13 #include <linux/platform_data/i2c-mux-gpio.h> 24 struct gpio_desc **gpios; member 28 static void i2c_mux_gpio_set(const struct gpiomux *mux, unsigned val) in i2c_mux_gpio_set() argument 32 for (i = 0; i < mux->data.n_gpios; i++) in i2c_mux_gpio_set() 33 mux->values[i] = (val >> i) & 1; in i2c_mux_gpio_set() 35 gpiod_set_array_value_cansleep(mux->data.n_gpios, in i2c_mux_gpio_set() 36 mux->gpios, mux->values); in i2c_mux_gpio_set() 41 struct gpiomux *mux = i2c_mux_priv(muxc); in i2c_mux_gpio_select() local 43 i2c_mux_gpio_set(mux, chan); in i2c_mux_gpio_select() [all …]
|
| /kernel/linux/linux-5.10/drivers/mux/ |
| D | gpio.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * GPIO-controlled multiplexer driver 13 #include <linux/mux/driver.h> 19 struct gpio_descs *gpios; member 22 static int mux_gpio_set(struct mux_control *mux, int state) in mux_gpio_set() argument 24 struct mux_gpio *mux_gpio = mux_chip_priv(mux->chip); in mux_gpio_set() 29 gpiod_set_array_value_cansleep(mux_gpio->gpios->ndescs, in mux_gpio_set() 30 mux_gpio->gpios->desc, in mux_gpio_set() 31 mux_gpio->gpios->info, values); in mux_gpio_set() 41 { .compatible = "gpio-mux", }, [all …]
|
| /kernel/linux/linux-4.19/drivers/mux/ |
| D | gpio.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * GPIO-controlled multiplexer driver 13 #include <linux/mux/driver.h> 19 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() 28 for (i = 0; i < mux_gpio->gpios->ndescs; i++) in mux_gpio_set() 29 mux_gpio->val[i] = (state >> i) & 1; 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() [all …]
|
| /kernel/linux/linux-5.10/drivers/i2c/muxes/ |
| D | i2c-mux-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #include <linux/i2c-mux.h> 10 #include <linux/platform_data/i2c-mux-gpio.h> 22 struct gpio_desc **gpios; member 25 static void i2c_mux_gpio_set(const struct gpiomux *mux, unsigned val) in i2c_mux_gpio_set() argument 31 gpiod_set_array_value_cansleep(mux->ngpios, mux->gpios, NULL, values); in i2c_mux_gpio_set() 36 struct gpiomux *mux = i2c_mux_priv(muxc); in i2c_mux_gpio_select() local 38 i2c_mux_gpio_set(mux, chan); in i2c_mux_gpio_select() 45 struct gpiomux *mux = i2c_mux_priv(muxc); in i2c_mux_gpio_deselect() local 47 i2c_mux_gpio_set(mux, mux->data.idle); in i2c_mux_gpio_deselect() [all …]
|
| /kernel/linux/linux-4.19/Documentation/devicetree/bindings/i2c/ |
| D | i2c-mux-gpio.txt | 1 GPIO-based I2C Bus Mux 3 This binding describes an I2C bus multiplexer that uses GPIOs to 6 +-----+ +-----+ 8 +------------+ +-----+ +-----+ 10 | | /--------+--------+ 11 | +------+ | +------+ child bus A, on GPIO value set to 0 12 | | I2C |-|--| Mux | 13 | +------+ | +--+---+ child bus B, on GPIO value set to 1 14 | | | \----------+--------+--------+ 15 | +------+ | | | | | [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/i2c/ |
| D | i2c-mux-gpio.txt | 1 GPIO-based I2C Bus Mux 3 This binding describes an I2C bus multiplexer that uses GPIOs to 6 +-----+ +-----+ 8 +------------+ +-----+ +-----+ 10 | | /--------+--------+ 11 | +------+ | +------+ child bus A, on GPIO value set to 0 12 | | I2C |-|--| Mux | 13 | +------+ | +--+---+ child bus B, on GPIO value set to 1 14 | | | \----------+--------+--------+ 15 | +------+ | | | | | [all …]
|
| /kernel/linux/linux-4.19/Documentation/devicetree/bindings/mux/ |
| D | gpio-mux.txt | 1 GPIO-based multiplexer controller bindings 7 - compatible : "gpio-mux" 8 - mux-gpios : list of gpios used to control the multiplexer, least 10 - #mux-control-cells : <0> 11 * Standard mux-controller bindings as decribed in mux-controller.txt 14 - idle-state : if present, the state the mux will have when idle. The 23 mux: mux-controller { 24 compatible = "gpio-mux"; 25 #mux-control-cells = <0>; 27 mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>, [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/mux/ |
| D | gpio-mux.txt | 1 GPIO-based multiplexer controller bindings 7 - compatible : "gpio-mux" 8 - mux-gpios : list of gpios used to control the multiplexer, least 10 - #mux-control-cells : <0> 11 * Standard mux-controller bindings as decribed in mux-controller.txt 14 - idle-state : if present, the state the mux will have when idle. The 23 mux: mux-controller { 24 compatible = "gpio-mux"; 25 #mux-control-cells = <0>; 27 mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>, [all …]
|
| /kernel/linux/linux-5.10/arch/arm/boot/dts/ |
| 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 …]
|
| D | bcm47094-linksys-panamera.dts | 1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 6 /dts-v1/; 9 #include "bcm5301x-nand-cs0-bch8.dtsi" 25 gpio-keys { 26 compatible = "gpio-keys"; 31 gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; 37 gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>; 43 gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>; 48 compatible = "gpio-leds"; 52 gpios = <&chipcommon 22 GPIO_ACTIVE_LOW>; [all …]
|
| D | qcom-ipq8064-rb3011.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 #include "qcom-ipq8064.dtsi" 3 #include <dt-bindings/input/input.h> 6 model = "MikroTik RB3011UiAS-RM"; 13 mdio-gpio0 = &mdio0; 14 mdio-gpio1 = &mdio1; 19 stdout-path = "serial0:115200n8"; 29 compatible = "virtual,mdio-gpio"; 30 gpios = <&qcom_pinmux 1 GPIO_ACTIVE_HIGH>, 32 #address-cells = <1>; [all …]
|
| /kernel/linux/linux-4.19/arch/arm/boot/dts/ |
| D | at91-tse850-3.dts | 2 * at91-tse850-3.dts - Device Tree file for the Axentia TSE-850 3.0 board 10 /dts-v1/; 11 #include <dt-bindings/pwm/pwm.h> 12 #include "at91-linea.dtsi" 15 model = "Axentia TSE-850 3.0"; 23 pinctrl_usba_vbus: usba-vbus { 39 compatible = "fixed-clock"; 41 #clock-cells = <0>; 42 clock-frequency = <16000000>; 43 clock-output-names = "sck"; [all …]
|
| D | bcm47094-linksys-panamera.dts | 1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 6 /dts-v1/; 9 #include "bcm5301x-nand-cs0-bch8.dtsi" 24 gpio-keys { 25 compatible = "gpio-keys"; 26 #address-cells = <1>; 27 #size-cells = <0>; 32 gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; 38 gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>; 44 gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>; [all …]
|
| /kernel/linux/linux-4.19/drivers/net/phy/ |
| D | mdio-mux-gpio.c | 14 #include <linux/mdio-mux.h> 21 struct gpio_descs *gpios; member 35 for (n = 0; n < s->gpios->ndescs; n++) in mdio_mux_gpio_switch_fn() 36 s->values[n] = (desired_child >> n) & 1; in mdio_mux_gpio_switch_fn() 38 gpiod_set_array_value_cansleep(s->gpios->ndescs, s->gpios->desc, in mdio_mux_gpio_switch_fn() 39 s->values); in mdio_mux_gpio_switch_fn() 47 struct gpio_descs *gpios; in mdio_mux_gpio_probe() local 50 gpios = gpiod_get_array(&pdev->dev, NULL, GPIOD_OUT_LOW); in mdio_mux_gpio_probe() 51 if (IS_ERR(gpios)) in mdio_mux_gpio_probe() 52 return PTR_ERR(gpios); in mdio_mux_gpio_probe() [all …]
|
| /kernel/linux/linux-5.10/drivers/net/mdio/ |
| D | mdio-mux-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0 11 #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 …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/fsi/ |
| 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 …]
|
| 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 …]
|
| D | fsi-master-ast-cf.txt | 1 Device-tree bindings for ColdFire offloaded gpio-based FSI master driver 2 ------------------------------------------------------------------------ 5 - compatible = 6 "aspeed,ast2400-cf-fsi-master" for an AST2400 based system 8 "aspeed,ast2500-cf-fsi-master" for an AST2500 based system 10 - clock-gpios = <gpio-descriptor>; : GPIO for FSI clock 11 - data-gpios = <gpio-descriptor>; : GPIO for FSI data signal 12 - enable-gpios = <gpio-descriptor>; : GPIO for enable signal 13 - trans-gpios = <gpio-descriptor>; : GPIO for voltage translator enable 14 - mux-gpios = <gpio-descriptor>; : GPIO for pin multiplexing with other [all …]
|
| /kernel/linux/linux-5.10/arch/arm64/boot/dts/mediatek/ |
| 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> 16 model = "Bananapi BPI-R64"; 17 compatible = "bananapi,bpi-r64", "mediatek,mt7622"; 24 stdout-path = "serial0:115200n8"; 30 proc-supply = <&mt6380_vcpu_reg>; 31 sram-supply = <&mt6380_vm_reg>; 35 proc-supply = <&mt6380_vcpu_reg>; [all …]
|
| D | mt7622-rfb1.dts | 6 * SPDX-License-Identifier: (GPL-2.0 OR MIT) 9 /dts-v1/; 10 #include <dt-bindings/input/input.h> 11 #include <dt-bindings/gpio/gpio.h> 18 compatible = "mediatek,mt7622-rfb1", "mediatek,mt7622"; 25 stdout-path = "serial0:115200n8"; 31 proc-supply = <&mt6380_vcpu_reg>; 32 sram-supply = <&mt6380_vm_reg>; 36 proc-supply = <&mt6380_vcpu_reg>; 37 sram-supply = <&mt6380_vm_reg>; [all …]
|
| /kernel/linux/linux-4.19/Documentation/devicetree/bindings/display/msm/ |
| D | hdmi.txt | 4 - compatible: one of the following 5 * "qcom,hdmi-tx-8996" 6 * "qcom,hdmi-tx-8994" 7 * "qcom,hdmi-tx-8084" 8 * "qcom,hdmi-tx-8974" 9 * "qcom,hdmi-tx-8660" 10 * "qcom,hdmi-tx-8960" 11 - reg: Physical base address and length of the controller's registers 12 - reg-names: "core_physical" 13 - interrupts: The interrupt signal from the hdmi block. [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/msm/ |
| D | hdmi.txt | 4 - compatible: one of the following 5 * "qcom,hdmi-tx-8996" 6 * "qcom,hdmi-tx-8994" 7 * "qcom,hdmi-tx-8084" 8 * "qcom,hdmi-tx-8974" 9 * "qcom,hdmi-tx-8660" 10 * "qcom,hdmi-tx-8960" 11 - reg: Physical base address and length of the controller's registers 12 - reg-names: "core_physical" 13 - interrupts: The interrupt signal from the hdmi block. [all …]
|
| /kernel/linux/linux-4.19/include/linux/platform_data/ |
| D | i2c-mux-gpio.h | 2 * i2c-mux-gpio interface to platform code 14 /* MUX has no specific idle mode */ 15 #define I2C_MUX_GPIO_NO_IDLE ((unsigned)-1) 18 * struct i2c_mux_gpio_platform_data - Platform-dependent data for i2c-mux-gpio 24 * @classes: Optional I2C auto-detection classes 27 * @gpios: Array of GPIO numbers used to control MUX 28 * @n_gpios: Number of GPIOs used to control MUX 29 * @idle: Bitmask to write to MUX when idle or GPIO_I2CMUX_NO_IDLE if not used 38 const unsigned *gpios; member
|
| /kernel/linux/linux-4.19/Documentation/devicetree/bindings/fsi/ |
| 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 …]
|
| D | fsi-master-ast-cf.txt | 1 Device-tree bindings for ColdFire offloaded gpio-based FSI master driver 2 ------------------------------------------------------------------------ 5 - compatible = 6 "aspeed,ast2400-cf-fsi-master" for an AST2400 based system 8 "aspeed,ast2500-cf-fsi-master" for an AST2500 based system 10 - clock-gpios = <gpio-descriptor>; : GPIO for FSI clock 11 - data-gpios = <gpio-descriptor>; : GPIO for FSI data signal 12 - enable-gpios = <gpio-descriptor>; : GPIO for enable signal 13 - trans-gpios = <gpio-descriptor>; : GPIO for voltage translator enable 14 - mux-gpios = <gpio-descriptor>; : GPIO for pin multiplexing with other [all …]
|