Lines Matching refs:sr_data

70 	struct drm_self_refresh_data *sr_data = container_of(  in drm_self_refresh_helper_entry_work()  local
73 struct drm_crtc *crtc = sr_data->crtc; in drm_self_refresh_helper_entry_work()
156 struct drm_self_refresh_data *sr_data = crtc->self_refresh_data; in drm_self_refresh_helper_update_avg_times() local
164 time = &sr_data->entry_avg_ms; in drm_self_refresh_helper_update_avg_times()
166 time = &sr_data->exit_avg_ms; in drm_self_refresh_helper_update_avg_times()
168 mutex_lock(&sr_data->avg_mutex); in drm_self_refresh_helper_update_avg_times()
170 mutex_unlock(&sr_data->avg_mutex); in drm_self_refresh_helper_update_avg_times()
205 struct drm_self_refresh_data *sr_data; in drm_self_refresh_helper_alter_state() local
212 sr_data = crtc->self_refresh_data; in drm_self_refresh_helper_alter_state()
213 if (!sr_data) in drm_self_refresh_helper_alter_state()
216 mutex_lock(&sr_data->avg_mutex); in drm_self_refresh_helper_alter_state()
217 delay = (ewma_psr_time_read(&sr_data->entry_avg_ms) + in drm_self_refresh_helper_alter_state()
218 ewma_psr_time_read(&sr_data->exit_avg_ms)) * 2; in drm_self_refresh_helper_alter_state()
219 mutex_unlock(&sr_data->avg_mutex); in drm_self_refresh_helper_alter_state()
221 mod_delayed_work(system_wq, &sr_data->entry_work, in drm_self_refresh_helper_alter_state()
235 struct drm_self_refresh_data *sr_data = crtc->self_refresh_data; in drm_self_refresh_helper_init() local
238 if (WARN_ON(sr_data)) in drm_self_refresh_helper_init()
241 sr_data = kzalloc(sizeof(*sr_data), GFP_KERNEL); in drm_self_refresh_helper_init()
242 if (!sr_data) in drm_self_refresh_helper_init()
245 INIT_DELAYED_WORK(&sr_data->entry_work, in drm_self_refresh_helper_init()
247 sr_data->crtc = crtc; in drm_self_refresh_helper_init()
248 mutex_init(&sr_data->avg_mutex); in drm_self_refresh_helper_init()
249 ewma_psr_time_init(&sr_data->entry_avg_ms); in drm_self_refresh_helper_init()
250 ewma_psr_time_init(&sr_data->exit_avg_ms); in drm_self_refresh_helper_init()
257 ewma_psr_time_add(&sr_data->entry_avg_ms, SELF_REFRESH_AVG_SEED_MS); in drm_self_refresh_helper_init()
258 ewma_psr_time_add(&sr_data->exit_avg_ms, SELF_REFRESH_AVG_SEED_MS); in drm_self_refresh_helper_init()
260 crtc->self_refresh_data = sr_data; in drm_self_refresh_helper_init()
271 struct drm_self_refresh_data *sr_data = crtc->self_refresh_data; in drm_self_refresh_helper_cleanup() local
274 if (!sr_data) in drm_self_refresh_helper_cleanup()
279 cancel_delayed_work_sync(&sr_data->entry_work); in drm_self_refresh_helper_cleanup()
280 kfree(sr_data); in drm_self_refresh_helper_cleanup()