Lines Matching defs:mux
282 struct clk_mux *mux = to_clk_mux(hw);
285 val = readl(mux->reg) >> mux->shift;
286 val &= mux->mask;
288 return clk_mux_val_to_index(hw, mux->table, mux->flags, val);
293 struct clk_mux *mux = to_clk_mux(hw);
294 u32 val = clk_mux_index_to_val(mux->table, mux->flags, index);
297 u32 write_en = BIT(fls(mux->mask) - 1);
299 if (mux->lock)
300 spin_lock_irqsave(mux->lock, flags);
302 __acquire(mux->lock);
304 reg = readl(mux->reg);
305 reg &= ~(mux->mask << mux->shift);
307 val = (val | write_en) << mux->shift;
309 writel(reg, mux->reg);
311 if (mux->lock)
312 spin_unlock_irqrestore(mux->lock, flags);
314 __release(mux->lock);
331 struct clk_mux *mux;
336 mux = kzalloc(sizeof(*mux), GFP_KERNEL);
337 if (!mux)
346 mux->reg = reg;
347 mux->shift = shift;
348 mux->mask = mask;
349 mux->flags = clk_mux_flags;
350 mux->lock = lock;
351 mux->table = table;
352 mux->hw.init = &init;
354 hw = &mux->hw;
357 kfree(mux);