Lines Matching refs:dmcfreq
77 struct rk3399_dmcfreq *dmcfreq = dev_get_drvdata(dev); in rk3399_dmcfreq_target() local
79 unsigned long old_clk_rate = dmcfreq->rate; in rk3399_dmcfreq_target()
93 if (dmcfreq->rate == target_rate) in rk3399_dmcfreq_target()
96 mutex_lock(&dmcfreq->lock); in rk3399_dmcfreq_target()
98 if (dmcfreq->regmap_pmu) { in rk3399_dmcfreq_target()
99 if (target_rate >= dmcfreq->odt_dis_freq) in rk3399_dmcfreq_target()
107 arm_smccc_smc(ROCKCHIP_SIP_DRAM_FREQ, dmcfreq->odt_pd_arg0, in rk3399_dmcfreq_target()
108 dmcfreq->odt_pd_arg1, in rk3399_dmcfreq_target()
118 err = regulator_set_voltage(dmcfreq->vdd_center, target_volt, in rk3399_dmcfreq_target()
127 err = clk_set_rate(dmcfreq->dmc_clk, target_rate); in rk3399_dmcfreq_target()
131 regulator_set_voltage(dmcfreq->vdd_center, dmcfreq->volt, in rk3399_dmcfreq_target()
132 dmcfreq->volt); in rk3399_dmcfreq_target()
142 dmcfreq->rate = clk_get_rate(dmcfreq->dmc_clk); in rk3399_dmcfreq_target()
145 if (dmcfreq->rate != target_rate) { in rk3399_dmcfreq_target()
147 target_rate, dmcfreq->rate); in rk3399_dmcfreq_target()
148 regulator_set_voltage(dmcfreq->vdd_center, dmcfreq->volt, in rk3399_dmcfreq_target()
149 dmcfreq->volt); in rk3399_dmcfreq_target()
152 err = regulator_set_voltage(dmcfreq->vdd_center, target_volt, in rk3399_dmcfreq_target()
157 dmcfreq->rate = target_rate; in rk3399_dmcfreq_target()
158 dmcfreq->volt = target_volt; in rk3399_dmcfreq_target()
161 mutex_unlock(&dmcfreq->lock); in rk3399_dmcfreq_target()
168 struct rk3399_dmcfreq *dmcfreq = dev_get_drvdata(dev); in rk3399_dmcfreq_get_dev_status() local
172 ret = devfreq_event_get_event(dmcfreq->edev, &edata); in rk3399_dmcfreq_get_dev_status()
176 stat->current_frequency = dmcfreq->rate; in rk3399_dmcfreq_get_dev_status()
185 struct rk3399_dmcfreq *dmcfreq = dev_get_drvdata(dev); in rk3399_dmcfreq_get_cur_freq() local
187 *freq = dmcfreq->rate; in rk3399_dmcfreq_get_cur_freq()
201 struct rk3399_dmcfreq *dmcfreq = dev_get_drvdata(dev); in rk3399_dmcfreq_suspend() local
204 ret = devfreq_event_disable_edev(dmcfreq->edev); in rk3399_dmcfreq_suspend()
210 ret = devfreq_suspend_device(dmcfreq->devfreq); in rk3399_dmcfreq_suspend()
221 struct rk3399_dmcfreq *dmcfreq = dev_get_drvdata(dev); in rk3399_dmcfreq_resume() local
224 ret = devfreq_event_enable_edev(dmcfreq->edev); in rk3399_dmcfreq_resume()
230 ret = devfreq_resume_device(dmcfreq->devfreq); in rk3399_dmcfreq_resume()
486 struct rk3399_dmcfreq *dmcfreq = dev_get_drvdata(&pdev->dev); in rk3399_dmcfreq_remove() local
488 devfreq_event_disable_edev(dmcfreq->edev); in rk3399_dmcfreq_remove()
493 devm_devfreq_unregister_opp_notifier(dmcfreq->dev, dmcfreq->devfreq); in rk3399_dmcfreq_remove()
494 dev_pm_opp_of_remove_table(dmcfreq->dev); in rk3399_dmcfreq_remove()