Lines Matching refs:aclk
795 struct cv1800_clk_audio *aclk = hw_to_cv1800_clk_audio(hw); in aclk_enable() local
797 cv1800_clk_setbit(&aclk->common, &aclk->src_en); in aclk_enable()
798 return cv1800_clk_setbit(&aclk->common, &aclk->output_en); in aclk_enable()
803 struct cv1800_clk_audio *aclk = hw_to_cv1800_clk_audio(hw); in aclk_disable() local
805 cv1800_clk_clearbit(&aclk->common, &aclk->output_en); in aclk_disable()
806 cv1800_clk_clearbit(&aclk->common, &aclk->src_en); in aclk_disable()
811 struct cv1800_clk_audio *aclk = hw_to_cv1800_clk_audio(hw); in aclk_is_enabled() local
813 return cv1800_clk_checkbit(&aclk->common, &aclk->output_en); in aclk_is_enabled()
819 struct cv1800_clk_audio *aclk = hw_to_cv1800_clk_audio(hw); in aclk_determine_rate() local
821 req->rate = aclk->target_rate; in aclk_determine_rate()
829 struct cv1800_clk_audio *aclk = hw_to_cv1800_clk_audio(hw); in aclk_recalc_rate() local
834 if (!cv1800_clk_checkbit(&aclk->common, &aclk->div_en)) in aclk_recalc_rate()
837 regval = readl(aclk->common.base + aclk->m.reg); in aclk_recalc_rate()
838 factor *= cv1800_clk_regfield_get(regval, &aclk->m); in aclk_recalc_rate()
840 regval = readl(aclk->common.base + aclk->n.reg); in aclk_recalc_rate()
841 rate *= cv1800_clk_regfield_get(regval, &aclk->n); in aclk_recalc_rate()
859 struct cv1800_clk_audio *aclk = hw_to_cv1800_clk_audio(hw); in aclk_set_rate() local
866 spin_lock_irqsave(aclk->common.lock, flags); in aclk_set_rate()
868 writel(m, aclk->common.base + aclk->m.reg); in aclk_set_rate()
869 writel(n, aclk->common.base + aclk->n.reg); in aclk_set_rate()
871 cv1800_clk_setbit(&aclk->common, &aclk->div_en); in aclk_set_rate()
872 cv1800_clk_setbit(&aclk->common, &aclk->div_up); in aclk_set_rate()
874 spin_unlock_irqrestore(aclk->common.lock, flags); in aclk_set_rate()