/drivers/i2c/muxes/ |
H A D | i2c-mux-pinctrl.c | 20 #include <linux/i2c-mux.h> 23 #include <linux/i2c-mux-pinctrl.h> 41 struct i2c_mux_pinctrl *mux = data; local 43 return pinctrl_select_state(mux->pinctrl, mux->states[chan]); 49 struct i2c_mux_pinctrl *mux = data; local 51 return pinctrl_select_state(mux->pinctrl, mux->state_idle); 55 static int i2c_mux_pinctrl_parse_dt(struct i2c_mux_pinctrl *mux, argument 66 mux 124 i2c_mux_pinctrl_parse_dt(struct i2c_mux_pinctrl *mux, struct platform_device *pdev) argument 133 struct i2c_mux_pinctrl *mux; local 245 struct i2c_mux_pinctrl *mux = platform_get_drvdata(pdev); local [all...] |
H A D | i2c-mux-gpio.c | 12 #include <linux/i2c-mux.h> 13 #include <linux/i2c-mux-gpio.h> 27 static void i2c_mux_gpio_set(const struct gpiomux *mux, unsigned val) argument 31 for (i = 0; i < mux->data.n_gpios; i++) 32 gpio_set_value_cansleep(mux->gpio_base + mux->data.gpios[i], 38 struct gpiomux *mux = data; local 40 i2c_mux_gpio_set(mux, chan); 47 struct gpiomux *mux = data; local 49 i2c_mux_gpio_set(mux, mu 61 i2c_mux_gpio_probe_dt(struct gpiomux *mux, struct platform_device *pdev) argument 130 i2c_mux_gpio_probe_dt(struct gpiomux *mux, struct platform_device *pdev) argument 139 struct gpiomux *mux; local 259 struct gpiomux *mux = platform_get_drvdata(pdev); local [all...] |
H A D | Makefile | 6 obj-$(CONFIG_I2C_MUX_GPIO) += i2c-mux-gpio.o 7 obj-$(CONFIG_I2C_MUX_PCA9541) += i2c-mux-pca9541.o 8 obj-$(CONFIG_I2C_MUX_PCA954x) += i2c-mux-pca954x.o 9 obj-$(CONFIG_I2C_MUX_PINCTRL) += i2c-mux-pinctrl.o
|
H A D | Kconfig | 30 will be called i2c-mux-gpio. 39 will be called i2c-mux-pca9541. 46 I2C mux/switch devices. 49 will be called i2c-mux-pca954x.
|
/drivers/clk/ |
H A D | clk-mux.c | 34 struct clk_mux *mux = to_clk_mux(hw); local 39 * FIXME need a mux-specific flag to determine if val is bitwise or numeric 45 val = clk_readl(mux->reg) >> mux->shift; 46 val &= mux->mask; 48 if (mux->table) { 52 if (mux->table[i] == val) 57 if (val && (mux->flags & CLK_MUX_INDEX_BIT)) 60 if (val && (mux->flags & CLK_MUX_INDEX_ONE)) 71 struct clk_mux *mux local 121 struct clk_mux *mux; local [all...] |
/drivers/clk/ti/ |
H A D | mux.c | 32 struct clk_mux *mux = to_clk_mux(hw); local 37 * FIXME need a mux-specific flag to determine if val is bitwise or 43 val = ti_clk_ll_ops->clk_readl(mux->reg) >> mux->shift; 44 val &= mux->mask; 46 if (mux->table) { 50 if (mux->table[i] == val) 55 if (val && (mux->flags & CLK_MUX_INDEX_BIT)) 58 if (val && (mux->flags & CLK_MUX_INDEX_ONE)) 69 struct clk_mux *mux local 113 struct clk_mux *mux; local 210 struct clk_mux *mux; local [all...] |
/drivers/clk/tegra/ |
H A D | clk-super.c | 45 struct tegra_clk_super_mux *mux = to_clk_super_mux(hw); local 49 val = readl_relaxed(mux->reg); 56 super_state_to_src_shift(mux, SUPER_STATE_IDLE) : 57 super_state_to_src_shift(mux, SUPER_STATE_RUN); 59 source = (val >> shift) & super_state_to_src_mask(mux); 65 if ((mux->flags & TEGRA_DIVIDER_2) && !(val & SUPER_LP_DIV2_BYPASS) && 66 (source == mux->pllx_index)) 67 source = mux->div2_index; 74 struct tegra_clk_super_mux *mux = to_clk_super_mux(hw); local 80 if (mux [all...] |
/drivers/clk/sunxi/ |
H A D | clk-a20-gmac.c | 59 struct clk_mux *mux; local 68 /* allocate mux and gate clock structs */ 69 mux = kzalloc(sizeof(struct clk_mux), GFP_KERNEL); 70 if (!mux) 91 mux->reg = reg; 92 mux->mask = SUN7I_A20_GMAC_MASK; 93 mux->flags = CLK_MUX_INDEX_BIT; 94 mux->lock = &gmac_lock; 98 &mux->hw, &clk_mux_ops, 116 kfree(mux); [all...] |
H A D | clk-factors.c | 166 struct clk_mux *mux = NULL; local 176 /* if we have a mux, we will have >1 parents */ 215 /* Add a mux if this factor clock can be muxed */ 216 if (data->mux) { 217 mux = kzalloc(sizeof(struct clk_mux), GFP_KERNEL); 218 if (!mux) { 225 mux->reg = reg; 226 mux->shift = data->mux; 227 mux [all...] |
H A D | clk-sun8i-mbus.c | 62 .mux = 24,
|
/drivers/clk/st/ |
H A D | Makefile | 1 obj-y += clkgen-mux.o clkgen-pll.o clkgen-fsyn.o clk-flexgen.o
|
H A D | clkgen-mux.c | 2 * clkgen-mux.c: ST GEN-MUX Clock driver 45 * DOC: Clock mux with a programmable divider on each of its three inputs. 46 * The mux has an input setting which effectively gates its output. 59 /* Subclassed mux and divider structures */ 60 struct clk_mux mux; member in struct:clkgena_divmux 83 static int clkgena_divmux_is_running(struct clkgena_divmux *mux) argument 85 u32 regval = readl(mux->feedback_reg[mux->muxsel]); 86 u32 running = regval & BIT(mux->feedback_bit_idx); 93 struct clk_hw *mux_hw = &genamux->mux 740 struct clk_mux *mux; local [all...] |
H A D | clk-flexgen.c | 21 struct clk_mux mux; member in struct:flexgen 80 struct clk_hw *mux_hw = &flexgen->mux.hw; 90 struct clk_hw *mux_hw = &flexgen->mux.hw; 191 fgxbar->mux.lock = lock; 192 fgxbar->mux.mask = BIT(6) - 1; 193 fgxbar->mux.reg = xbar_reg; 194 fgxbar->mux.shift = xbar_shift; 195 fgxbar->mux.table = NULL;
|
/drivers/pinctrl/ |
H A D | pinctrl-adi2.h | 24 const unsigned short *mux; member in struct:adi_pin_group 32 .mux = m, \ 36 * struct adi_pmx_func - describes function mux setting of pin groups 37 * @name: the name of this function mux setting 40 * @mux: the function mux setting array, end by zero
|
H A D | pinmux.c | 66 if (!map->data.mux.function) { 79 * name that controls its mux function, or the requested GPIO name 233 * @pin: the pin to mux in for GPIO 329 dev_err(pctldev->dev, "does not support mux function\n"); 333 ret = pinmux_func_name_to_selector(pctldev, map->data.mux.function); 336 map->data.mux.function); 339 setting->data.mux.func = ret; 341 ret = pmxops->get_function_groups(pctldev, setting->data.mux.func, 345 map->data.mux.function); 351 map->data.mux [all...] |
H A D | pinctrl-lantiq.c | 99 (*map)->data.mux.group = group; 100 (*map)->data.mux.function = function; 214 static int match_mux(const struct ltq_mfp_pin *mfp, unsigned mux) argument 218 if (mfp->func[i] == mux) 240 unsigned mux) 250 ret = match_mux(&info->mfp[pin], mux); 252 dev_err(info->dev, "Can't find mux %d on pin%d\n", 253 mux, pin); 269 (match_group_mux(pin_grp, info, pin_grp->mux) < 0)) { 281 pin_func = match_mux(&info->mfp[pin], pin_grp->mux); 238 match_group_mux(const struct ltq_pin_group *grp, const struct ltq_pinmux_info *info, unsigned mux) argument [all...] |
/drivers/media/dvb-frontends/ |
H A D | si2168_priv.h | 23 #include <linux/i2c-mux.h>
|
/drivers/clk/samsung/ |
H A D | clk-exynos-clkout.c | 30 struct clk_mux mux; member in struct:exynos_clkout 98 clkout->mux.reg = clkout->reg + EXYNOS_PMU_DEBUG_REG; 99 clkout->mux.mask = mux_mask; 100 clkout->mux.shift = EXYNOS_CLKOUT_MUX_SHIFT; 101 clkout->mux.lock = &clkout->slock; 104 parent_names, parent_count, &clkout->mux.hw,
|
/drivers/net/phy/ |
H A D | Makefile | 31 obj-$(CONFIG_MDIO_BUS_MUX) += mdio-mux.o 32 obj-$(CONFIG_MDIO_BUS_MUX_GPIO) += mdio-mux-gpio.o 33 obj-$(CONFIG_MDIO_BUS_MUX_MMIOREG) += mdio-mux-mmioreg.o
|
/drivers/i2c/ |
H A D | Makefile | 9 obj-$(CONFIG_I2C_MUX) += i2c-mux.o
|
/drivers/tty/serial/ |
H A D | dz.c | 74 struct dz_mux *mux; member in struct:dz_port 181 static inline void dz_receive_chars(struct dz_mux *mux) argument 184 struct dz_port *dport = &mux->dport[0]; 192 dport = &mux->dport[LINE(status)]; 245 tty_flip_buffer_push(&mux->dport[i].port.state->port); 255 static inline void dz_transmit_chars(struct dz_mux *mux) argument 257 struct dz_port *dport = &mux->dport[0]; 263 dport = &mux->dport[LINE(status)]; 338 struct dz_mux *mux = dev_id; local 339 struct dz_port *dport = &mux 404 struct dz_mux *mux = dport->mux; local 445 struct dz_mux *mux = dport->mux; local 549 struct dz_mux *mux = dport->mux; local 665 struct dz_mux *mux = to_dport(uport)->mux; local 690 struct dz_mux *mux = to_dport(uport)->mux; local [all...] |
/drivers/clk/rockchip/ |
H A D | clk.c | 50 struct clk_mux *mux = NULL; local 57 mux = kzalloc(sizeof(*mux), GFP_KERNEL); 58 if (!mux) 61 mux->reg = base + muxdiv_offset; 62 mux->shift = mux_shift; 63 mux->mask = BIT(mux_width) - 1; 64 mux->flags = mux_flags; 65 mux->lock = lock; 97 mux [all...] |
/drivers/gpio/ |
H A D | gpio-lp3943.c | 77 const struct lp3943_reg_cfg *mux = lp3943->mux_cfg; local 79 return lp3943_update_bits(lp3943, mux[offset].reg, mux[offset].mask, 80 val << mux[offset].shift); 121 const struct lp3943_reg_cfg *mux = lp3943->mux_cfg; local 125 err = lp3943_read_byte(lp3943, mux[offset].reg, &read); 129 read = (read & mux[offset].mask) >> mux[offset].shift;
|
/drivers/mfd/ |
H A D | pcf50633-adc.c | 30 int mux; member in struct:pcf50633_adc_request 81 adc_setup(pcf, adc->queue[head]->mux, adc->queue[head]->avg); 120 int pcf50633_adc_sync_read(struct pcf50633 *pcf, int mux, int avg) argument 127 ret = pcf50633_adc_async_read(pcf, mux, avg, 138 int pcf50633_adc_async_read(struct pcf50633 *pcf, int mux, int avg, argument 149 req->mux = mux;
|
/drivers/leds/ |
H A D | leds-lp5523.c | 112 #define LED_ACTIVE(mux, led) (!!(mux & (0x0001 << led))) 448 static int lp5523_mux_parse(const char *buf, u16 *mux, size_t len) argument 469 *mux = tmp_mux; 489 char mux[LP5523_MAX_LEDS + 1]; local 491 lp5523_mux_to_array(chip->engines[nr - 1].led_mux, mux); 493 return sprintf(buf, "%s\n", mux); 499 static int lp5523_load_mux(struct lp55xx_chip *chip, u16 mux, int nr) argument 515 ret = lp55xx_write(chip, LP5523_REG_PROG_MEM , (u8)(mux >> 8)); 519 ret = lp55xx_write(chip, LP5523_REG_PROG_MEM + 1, (u8)(mux)); 534 u16 mux = 0; local [all...] |