Home
last modified time | relevance | path

Searched +full:mux +full:- +full:states (Results 1 – 25 of 118) sorted by relevance

12345

/linux/Documentation/devicetree/bindings/mux/
H A Dmux-consumer.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/mux/mux-consumer.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Peter Rosin <peda@axentia.se>
13 Mux controller consumers should specify a list of mux controllers that they
14 want to use with a property containing a 'mux-ctrl-list':
16 mux-ctrl-list ::= <single-mux-ctrl> [mux-ctrl-list]
17 single-mux-ctrl ::= <mux-ctrl-phandle> [mux-ctrl-specifier]
18 mux-ctrl-phandle : phandle to mux controller node
[all …]
H A Dadi,adgs1408.txt1 Bindings for Analog Devices ADGS1408/1409 8:1/Dual 4:1 Mux
4 - compatible : Should be one of
7 * Standard mux-controller bindings as described in mux-controller.yaml
10 - gpio-controller : if present, #gpio-cells is required.
11 - #gpio-cells : should be <2>
12 - First cell is the GPO line number, i.e. 0 to 3
14 - Second cell is used to specify active high (0)
18 - idle-state : if present, the state that the mux controller will have
22 States 0 through 7 correspond to signals S1 through S8 in the datasheet.
23 For ADGS1409 only states 0 to 3 are available.
[all …]
H A Dadi,adg792a.txt4 - compatible : "adi,adg792a" or "adi,adg792g"
5 - #mux-control-cells : <0> if parallel (the three muxes are bound together
6 with a single mux controller controlling all three muxes), or <1> if
7 not (one mux controller for each mux).
8 * Standard mux-controller bindings as described in mux-controller.yaml
11 - gpio-controller : if present, #gpio-cells below is required.
12 - #gpio-cells : should be <2>
13 - First cell is the GPO line number, i.e. 0 or 1
14 - Second cell is used to specify active high (0)
18 - idle-state : if present, array of states that the mux controllers will have
[all …]
H A Dreg-mux.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/mux/reg-mux.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Generic register bitfield-based multiplexer controller
10 - Peter Rosin <peda@axentia.se>
19 - reg-mux # parent device of mux controller is not syscon device
20 - mmio-mux # parent device of mux controller is syscon device
24 '#mux-control-cells':
27 mux-reg-masks:
[all …]
/linux/include/linux/mux/
H A Ddriver.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * mux/driver.h - definitions for the multiplexer driver interface
13 #include <dt-bindings/mux/mux.h>
22 * struct mux_control_ops - Mux controller operations for a mux chip.
23 * @set: Set the state of the given mux controller.
26 int (*set)(struct mux_control *mux, int state);
30 * struct mux_control - Represents a mux controller.
31 * @lock: Protects the mux controller state.
32 * @chip: The mux chip that is handling this mux controller.
33 * @cached_state: The current mux controller state, or -1 if none.
[all …]
/linux/drivers/mux/
H A Dadgs1408.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * ADGS1408/ADGS1409 SPI MUX driver
11 #include <linux/mux/driver.h>
36 static int adgs1408_set(struct mux_control *mux, int state) in adgs1408_set() argument
38 struct spi_device *spi = to_spi_device(mux->chip->dev.parent); in adgs1408_set()
55 struct device *dev = &spi->dev; in adgs1408_probe()
58 struct mux_control *mux; in adgs1408_probe() local
68 mux_chip->ops = &adgs1408_ops; in adgs1408_probe()
74 ret = device_property_read_u32(dev, "idle-state", (u32 *)&idle_state); in adgs1408_probe()
78 mux = mux_chip->mux; in adgs1408_probe()
[all …]
H A Dgpio.c1 // SPDX-License-Identifier: GPL-2.0
3 * GPIO-controlled multiplexer driver
15 #include <linux/mux/driver.h>
24 static int mux_gpio_set(struct mux_control *mux, int state) in mux_gpio_set() argument
26 struct mux_gpio *mux_gpio = mux_chip_priv(mux->chip); in mux_gpio_set()
32 gpiod_multi_set_value_cansleep(mux_gpio->gpios, values); in mux_gpio_set()
42 { .compatible = "gpio-mux", },
49 struct device *dev = &pdev->dev; in mux_gpio_probe()
56 pins = gpiod_count(dev, "mux"); in mux_gpio_probe()
65 mux_chip->ops = &mux_gpio_ops; in mux_gpio_probe()
[all …]
H A Dcore.c1 // SPDX-License-Identifier: GPL-2.0
10 #define pr_fmt(fmt) "mux-core: " fmt
19 #include <linux/mux/consumer.h>
20 #include <linux/mux/driver.h>
25 * The idle-as-is "state" is not an actual state that may be selected, it
32 * struct mux_state - Represents a mux controller state specific to a given
34 * @mux: Pointer to a mux controller.
35 * @state: State of the mux to be selected.
41 struct mux_control *mux; member
46 .name = "mux",
[all …]
H A Dmmio.c1 // SPDX-License-Identifier: GPL-2.0
3 * MMIO register bitfield-controlled multiplexer driver
12 #include <linux/mux/driver.h>
23 static int mux_mmio_get(struct mux_control *mux, int *state) in mux_mmio_get() argument
25 struct mux_mmio *mux_mmio = mux_chip_priv(mux->chip); in mux_mmio_get()
26 unsigned int index = mux_control_get_index(mux); in mux_mmio_get()
28 return regmap_field_read(mux_mmio->fields[index], state); in mux_mmio_get()
31 static int mux_mmio_set(struct mux_control *mux, int state) in mux_mmio_set() argument
33 struct mux_mmio *mux_mmio = mux_chip_priv(mux->chip); in mux_mmio_set()
34 unsigned int index = mux_control_get_index(mux); in mux_mmio_set()
[all …]
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0
22 be called mux-adg792a.
32 be called mux-adgs1408.
35 tristate "GPIO-controlled Multiplexer"
38 GPIO-controlled Multiplexer controller.
42 states. The GPIO pins can be connected (by the hardware) to several
46 be called mux-gpio.
49 tristate "MMIO/Regmap register bitfield-controlled Multiplexer"
53 MMIO/Regmap register bitfield-controlled Multiplexer controller.
57 bitfields, there will be 2^N possible multiplexer states.
[all …]
H A Dadg792a.c1 // SPDX-License-Identifier: GPL-2.0
3 * Multiplexer driver for Analog Devices ADG792A/G Triple 4:1 mux
13 #include <linux/mux/driver.h>
18 #define ADG792A_DISABLE(mux) (0x50 | (mux)) argument
20 #define ADG792A_MUX(mux, state) (0xc0 | (((mux) + 1) << 2) | (state)) argument
34 static int adg792a_set(struct mux_control *mux, int state) in adg792a_set() argument
36 struct i2c_client *i2c = to_i2c_client(mux->chip->dev.parent); in adg792a_set()
39 if (mux->chip->controllers == 1) { in adg792a_set()
40 /* parallel mux controller operation */ in adg792a_set()
46 unsigned int controller = mux_control_get_index(mux); in adg792a_set()
[all …]
/linux/Documentation/devicetree/bindings/phy/
H A Dti,tcan104x-can.yaml1 # 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 - items:
19 - enum:
20 - microchip,ata6561
21 - ti,tcan1051
[all …]
/linux/include/dt-bindings/pinctrl/
H A Domap.h1 /* SPDX-License-Identifier: GPL-2.0 */
6 * Copyright (C) 2009-2010 Texas Instruments
12 /* 34xx mux mode options for each pin. See TRM for options */
22 /* 24xx/34xx mux bit defines */
27 /* omap3/4/5 specific mux bit defines */
37 /* Active pin states */
45 /* Off mode states */
57 #define OMAP_IOPAD_OFFSET(pa, offset) (((pa) & 0xffff) - (offset))
68 #define AM33XX_PADCONF(pa, conf, mux) OMAP_IOPAD_OFFSET((pa), 0x0800) (conf) (mux) argument
74 #define OMAP_PADCONF_OFFSET(offset, base_offset) ((offset) - (base_offset))
/linux/Documentation/devicetree/bindings/iio/multiplexer/
H A Dio-channel-mux.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/iio/multiplexer/io-channel-mux.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Peter Rosin <peda@axentia.se>
16 For each non-empty string in the channels property, an io-channel will be
17 created. The number of this io-channel is the same as the index into the list
18 of strings in the channels property, and also matches the mux controller
19 state. The mux controller state is described in
20 Documentation/devicetree/bindings/mux/mux-controller.yaml
[all …]
/linux/Documentation/devicetree/bindings/clock/
H A Dnxp,imx95-display-master-csr.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/clock/nxp,imx95-display-master-csr.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Peng Fan <peng.fan@nxp.com>
15 - const: nxp,imx95-display-master-csr
16 - const: syscon
21 power-domains:
27 '#clock-cells':
32 include/dt-bindings/clock/nxp,imx95-clock.h
[all …]
/linux/Documentation/devicetree/bindings/soc/nuvoton/
H A Dnuvoton,npcm-gcr.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/soc/nuvoton/nuvoton,npcm-gcr.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Jonathan Neuschäfer <j.neuschaefer@gmx.net>
11 - Tomer Maimon <tmaimon77@gmail.com>
21 - enum:
22 - nuvoton,wpcm450-gcr
23 - nuvoton,npcm750-gcr
24 - nuvoton,npcm845-gcr
[all …]
/linux/drivers/pinctrl/
H A Dcore.h1 /* SPDX-License-Identifier: GPL-2.0-only */
5 * Copyright (C) 2011 ST-Ericsson SA
6 * Written on behalf of Linaro for ST-Ericsson
14 #include <linux/radix-tree.h>
30 * struct pinctrl_dev - pin control class device
78 * struct pinctrl - per-device pin control state holder
81 * @states: a list of states for this device
90 struct list_head states; member
97 * struct pinctrl_state - a pinctrl state for a device
98 * @node: list node for struct pinctrl's @states field
[all …]
/linux/drivers/net/wwan/iosm/
H A Diosm_ipc_mux.h1 /* SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2020-21 Intel Corporation.
19 /* Size of the buffer for the IP MUX Lite data buffer. */
22 /* TD counts for IP MUX Lite */
26 /* open session request (AP->CP) */
29 /* response to open session request (CP->AP) */
32 /* close session request (AP->CP) */
35 /* response to close session request (CP->AP) */
58 /* MUX for route link devices */
61 /* Initiated actions to change the state of the MUX object. */
[all …]
/linux/Documentation/driver-api/
H A Dpin-control.rst9 - Enumerating and naming controllable pins
11 - Multiplexing of pins, pads, fingers (etc) see below for details
13 - Configuration of pins, pads, fingers (etc), such as software-controlled
14 biasing and driving mode specific pins, such as pull-up, pull-down, open drain,
17 Top-level interface
22 - A PIN CONTROLLER is a piece of hardware, usually a set of registers, that
26 - PINS are equal to pads, fingers, balls or whatever packaging input or
30 be sparse - i.e. there may be gaps in the space with numbers where no
60 .. code-block:: c
97 See ``arch/arm/mach-ux500/Kconfig`` for an example.
[all …]
/linux/drivers/phy/
H A Dphy-can-transceiver.c1 // SPDX-License-Identifier: GPL-2.0
3 * phy-can-transceiver.c - phy driver for CAN transceivers
5 * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com
14 #include <linux/mux/consumer.h>
35 if (can_transceiver_phy->mux_state) { in can_transceiver_phy_power_on()
36 ret = mux_state_select(can_transceiver_phy->mux_state); in can_transceiver_phy_power_on()
38 dev_err(&phy->dev, "Failed to select CAN mux: %d\n", ret); in can_transceiver_phy_power_on()
42 if (can_transceiver_phy->standby_gpio) in can_transceiver_phy_power_on()
43 gpiod_set_value_cansleep(can_transceiver_phy->standby_gpio, 0); in can_transceiver_phy_power_on()
44 if (can_transceiver_phy->enable_gpio) in can_transceiver_phy_power_on()
[all …]
/linux/arch/arm/boot/dts/nuvoton/
H A Dnuvoton-npcm730-gbs.dts1 // 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 …]
/linux/include/linux/usb/
H A Dtypec_altmode.h1 /* SPDX-License-Identifier: GPL-2.0 */
15 * struct typec_altmode - USB Type-C alternate mode device
42 dev_set_drvdata(&altmode->dev, data); in typec_altmode_set_drvdata()
47 return dev_get_drvdata(&altmode->dev); in typec_altmode_get_drvdata()
51 * struct typec_altmode_ops - Alternate mode specific operations vector
81 * struct typec_cable_ops - Cable alternate mode operations vector
99 * typec_altmode_get_cable_svdm_version - Get negotiated SVDM version for cable plug
109 * These are the connector states (USB, Safe and Alt Mode) defined in USB Type-C
110 * Specification. SVID specific connector states are expected to follow and
122 * here. Unlike with Alternate Modes, where the mux will be linked with the
[all …]
/linux/Documentation/devicetree/bindings/usb/
H A Dci-hdrc-usb2.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/usb/ci-hdrc-usb2.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Xu Yang <xu.yang_2@nxp.com>
11 - Peng Fan <peng.fan@nxp.com>
16 - enum:
17 - chipidea,usb2
18 - lsi,zevio-usb
19 - nuvoton,npcm750-udc
[all …]
/linux/drivers/net/fddi/skfp/
H A Dcfm.c1 // SPDX-License-Identifier: GPL-2.0-or-later
43 #define GO_STATE(x) (smc->mib.fddiSMTCF_State = (x)|AFLAG)
44 #define ACTIONS_DONE() (smc->mib.fddiSMTCF_State &= ~AFLAG)
73 * CEM port states
97 smc->mib.fddiSMTCF_State = ACTIONS(SC0_ISOLATED) ; in cfm_init()
98 smc->r.rm_join = 0 ; in cfm_init()
99 smc->r.rm_loop = 0 ; in cfm_init()
100 smc->y[PA].scrub = 0 ; in cfm_init()
101 smc->y[PB].scrub = 0 ; in cfm_init()
102 smc->y[PA].cem_pst = CEM_PST_DOWN ; in cfm_init()
[all …]
/linux/arch/arm64/boot/dts/renesas/
H A Drzg3s-smarc-som.dtsi1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 * Device Tree Source for the R9A08G045S33 SMARC Carrier-II's SoM board.
8 #include <dt-bindings/clock/renesas,r9a08g045-vbattb.h>
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/pinctrl/rzg2l-pinctrl.h>
12 #include "rzg3s-smarc-switches.h"
15 compatible = "renesas,rzg3s-smarcm", "renesas,r9a08g045s33", "renesas,r9a08g045";
35 compatible = "regulator-fixed";
36 regulator-name = "SDHI0 Vcc";
37 regulator-min-microvolt = <3300000>;
[all …]

12345