Lines Matching +full:mux +full:- +full:gpios
1 // SPDX-License-Identifier: GPL-2.0+
6 #include <asm-generic/gpio.h>
20 static int max96745_select(struct udevice *mux, struct udevice *bus, in max96745_select() argument
23 struct max96745_priv *priv = dev_get_priv(mux); in max96745_select()
25 if (!priv->idle_disc) in max96745_select()
29 dm_i2c_reg_clrset(mux, 0x0086, DIS_REM_CC, in max96745_select()
32 dm_i2c_reg_clrset(mux, 0x0076, DIS_REM_CC, in max96745_select()
38 static int max96745_deselect(struct udevice *mux, struct udevice *bus, in max96745_deselect() argument
41 struct max96745_priv *priv = dev_get_priv(mux); in max96745_deselect()
43 if (!priv->idle_disc) in max96745_deselect()
47 dm_i2c_reg_clrset(mux, 0x0086, DIS_REM_CC, in max96745_deselect()
50 dm_i2c_reg_clrset(mux, 0x0076, DIS_REM_CC, in max96745_deselect()
65 if (dm_gpio_is_valid(&priv->enable_gpio)) { in max96745_power_on()
66 dm_gpio_set_value(&priv->enable_gpio, 1); in max96745_power_on()
70 if (dm_gpio_is_valid(&priv->pwdnb_gpio)) { in max96745_power_on()
71 dm_gpio_set_value(&priv->pwdnb_gpio, 0); in max96745_power_on()
75 /* Set for I2C Fast-mode speed */ in max96745_power_on()
76 ret = dm_i2c_reg_write(priv->dev, 0x0070, 0x16); in max96745_power_on()
80 if (priv->idle_disc) { in max96745_power_on()
81 ret = dm_i2c_reg_clrset(priv->dev, 0x0076, DIS_REM_CC, in max96745_power_on()
86 ret = dm_i2c_reg_clrset(priv->dev, 0x0086, DIS_REM_CC, in max96745_power_on()
104 priv->dev = dev; in max96745_probe()
105 priv->idle_disc = dev_read_bool(dev, "i2c-mux-idle-disconnect"); in max96745_probe()
107 ret = gpio_request_by_name(dev, "enable-gpios", 0, in max96745_probe()
108 &priv->enable_gpio, GPIOD_IS_OUT); in max96745_probe()
109 if (ret && ret != -ENOENT) { in max96745_probe()
114 ret = gpio_request_by_name(dev, "pwdnb-gpios", 0, in max96745_probe()
115 &priv->pwdnb_gpio, GPIOD_IS_OUT); in max96745_probe()
116 if (ret && ret != -ENOENT) { in max96745_probe()