Lines Matching refs:mux
60 struct clk_mux mux; member
83 static int clkgena_divmux_is_running(struct clkgena_divmux *mux) in clkgena_divmux_is_running() argument
85 u32 regval = readl(mux->feedback_reg[mux->muxsel]); in clkgena_divmux_is_running()
86 u32 running = regval & BIT(mux->feedback_bit_idx); in clkgena_divmux_is_running()
93 struct clk_hw *mux_hw = &genamux->mux.hw; in clkgena_divmux_enable()
117 struct clk_hw *mux_hw = &genamux->mux.hw; in clkgena_divmux_disable()
127 struct clk_hw *mux_hw = &genamux->mux.hw; in clkgena_divmux_is_enabled()
137 struct clk_hw *mux_hw = &genamux->mux.hw; in clkgena_divmux_get_parent()
244 genamux->mux.lock = &clkgena_divmux_lock; in clk_register_genamux()
245 genamux->mux.mask = BIT(mux_width) - 1; in clk_register_genamux()
246 genamux->mux.shift = muxdata->mux_start_bit + (idx * mux_width); in clk_register_genamux()
247 if (genamux->mux.shift > 31) { in clk_register_genamux()
252 genamux->mux.reg = reg + muxdata->mux_offset2; in clk_register_genamux()
253 genamux->mux.shift -= 32; in clk_register_genamux()
255 genamux->mux.reg = reg + muxdata->mux_offset; in clk_register_genamux()
740 struct clk_mux *mux; in st_of_clkgen_vcc_setup() local
762 mux = kzalloc(sizeof(struct clk_mux), GFP_KERNEL); in st_of_clkgen_vcc_setup()
763 if (!mux) { in st_of_clkgen_vcc_setup()
780 mux->reg = reg + VCC_MUX_OFFSET; in st_of_clkgen_vcc_setup()
781 mux->shift = 2 * i; in st_of_clkgen_vcc_setup()
782 mux->mask = 0x3; in st_of_clkgen_vcc_setup()
786 &mux->hw, &clk_mux_ops, in st_of_clkgen_vcc_setup()
793 kfree(mux); in st_of_clkgen_vcc_setup()