Lines Matching full:devfreq
10 #include <linux/devfreq.h>
26 * If the GPU is idle, devfreq is not aware, so just ignore in msm_devfreq_target()
29 if (gpu->devfreq.idle_freq) { in msm_devfreq_target()
30 gpu->devfreq.idle_freq = *freq; in msm_devfreq_target()
51 if (gpu->devfreq.idle_freq) in get_freq()
52 return gpu->devfreq.idle_freq; in get_freq()
70 status->total_time = ktime_us_delta(time, gpu->devfreq.time); in msm_devfreq_get_dev_status()
71 gpu->devfreq.time = time; in msm_devfreq_get_dev_status()
93 /* We need target support to do devfreq */ in msm_devfreq_init()
100 * Don't set the freq_table or max_state and let devfreq build the table in msm_devfreq_init()
103 * so set them back to zero before creating the devfreq device in msm_devfreq_init()
108 gpu->devfreq.devfreq = devm_devfreq_add_device(&gpu->pdev->dev, in msm_devfreq_init()
112 if (IS_ERR(gpu->devfreq.devfreq)) { in msm_devfreq_init()
113 DRM_DEV_ERROR(&gpu->pdev->dev, "Couldn't initialize GPU devfreq\n"); in msm_devfreq_init()
114 gpu->devfreq.devfreq = NULL; in msm_devfreq_init()
118 devfreq_suspend_device(gpu->devfreq.devfreq); in msm_devfreq_init()
121 gpu->devfreq.devfreq); in msm_devfreq_init()
136 gpu->devfreq.busy_cycles = 0; in msm_devfreq_resume()
137 gpu->devfreq.time = ktime_get(); in msm_devfreq_resume()
139 devfreq_resume_device(gpu->devfreq.devfreq); in msm_devfreq_resume()
144 devfreq_suspend_device(gpu->devfreq.devfreq); in msm_devfreq_suspend()
149 struct msm_gpu_devfreq *df = &gpu->devfreq; in msm_devfreq_active()
154 if (!df->devfreq) in msm_devfreq_active()
158 * Hold devfreq lock to synchronize with get_dev_status()/ in msm_devfreq_active()
161 mutex_lock(&df->devfreq->lock); in msm_devfreq_active()
184 mutex_unlock(&df->devfreq->lock); in msm_devfreq_active()
189 struct msm_gpu_devfreq *df = &gpu->devfreq; in msm_devfreq_idle()
192 if (!df->devfreq) in msm_devfreq_idle()
196 * Hold devfreq lock to synchronize with get_dev_status()/ in msm_devfreq_idle()
199 mutex_lock(&df->devfreq->lock); in msm_devfreq_idle()
209 mutex_unlock(&df->devfreq->lock); in msm_devfreq_idle()