Lines Matching refs:mclk
284 struct clk_mmc *mclk = to_mmc(hw);
286 if ((req->rate <= 13000000) && (mclk->id == HI3620_MMC_CIUCLK1)) {
323 struct clk_mmc *mclk = to_mmc(hw);
360 val = readl_relaxed(mclk->clken_reg);
361 val &= ~(1 << mclk->clken_bit);
362 writel_relaxed(val, mclk->clken_reg);
364 val = readl_relaxed(mclk->sam_reg);
365 val = mmc_clk_delay(val, sam, mclk->sam_off, mclk->sam_bits);
366 writel_relaxed(val, mclk->sam_reg);
368 val = readl_relaxed(mclk->drv_reg);
369 val = mmc_clk_delay(val, drv, mclk->drv_off, mclk->drv_bits);
370 writel_relaxed(val, mclk->drv_reg);
372 val = readl_relaxed(mclk->div_reg);
373 val = mmc_clk_delay(val, div, mclk->div_off, mclk->div_bits);
374 writel_relaxed(val, mclk->div_reg);
376 val = readl_relaxed(mclk->clken_reg);
377 val |= 1 << mclk->clken_bit;
378 writel_relaxed(val, mclk->clken_reg);
387 struct clk_mmc *mclk = to_mmc(hw);
390 if (mclk->id == HI3620_MMC_CIUCLK1)
414 struct clk_mmc *mclk;
418 mclk = kzalloc(sizeof(*mclk), GFP_KERNEL);
419 if (!mclk)
427 mclk->hw.init = &init;
429 mclk->id = mmc_clk->id;
430 mclk->clken_reg = base + mmc_clk->clken_reg;
431 mclk->clken_bit = mmc_clk->clken_bit;
432 mclk->div_reg = base + mmc_clk->div_reg;
433 mclk->div_off = mmc_clk->div_off;
434 mclk->div_bits = mmc_clk->div_bits;
435 mclk->drv_reg = base + mmc_clk->drv_reg;
436 mclk->drv_off = mmc_clk->drv_off;
437 mclk->drv_bits = mmc_clk->drv_bits;
438 mclk->sam_reg = base + mmc_clk->sam_reg;
439 mclk->sam_off = mmc_clk->sam_off;
440 mclk->sam_bits = mmc_clk->sam_bits;
442 clk = clk_register(NULL, &mclk->hw);
444 kfree(mclk);