Loading drivers/gpu/drm/msm/sde/sde_encoder.c +18 −16 Original line number Diff line number Diff line Loading @@ -2925,6 +2925,21 @@ void sde_encoder_virt_restore(struct drm_encoder *drm_enc) _sde_encoder_virt_enable_helper(drm_enc); } static void sde_encoder_off_work(struct kthread_work *work) { struct sde_encoder_virt *sde_enc = container_of(work, struct sde_encoder_virt, delayed_off_work.work); struct drm_encoder *drm_enc; if (!sde_enc) { SDE_ERROR("invalid sde encoder\n"); return; } drm_enc = &sde_enc->base; sde_encoder_idle_request(drm_enc); } static void sde_encoder_virt_enable(struct drm_encoder *drm_enc) { struct sde_encoder_virt *sde_enc = NULL; Loading Loading @@ -2986,7 +3001,9 @@ static void sde_encoder_virt_enable(struct drm_encoder *drm_enc) "input handler registration failed, rc = %d\n", ret); } sde_enc->delayed_off_work.work.worker = NULL; if (!msm_is_mode_seamless_vrr(cur_mode)) kthread_init_delayed_work(&sde_enc->delayed_off_work, sde_encoder_off_work); ret = sde_encoder_resource_control(drm_enc, SDE_ENC_RC_EVENT_KICKOFF); if (ret) { Loading Loading @@ -3335,21 +3352,6 @@ int sde_encoder_idle_request(struct drm_encoder *drm_enc) return 0; } static void sde_encoder_off_work(struct kthread_work *work) { struct sde_encoder_virt *sde_enc = container_of(work, struct sde_encoder_virt, delayed_off_work.work); struct drm_encoder *drm_enc; if (!sde_enc) { SDE_ERROR("invalid sde encoder\n"); return; } drm_enc = &sde_enc->base; sde_encoder_idle_request(drm_enc); } /** * _sde_encoder_trigger_flush - trigger flush for a physical encoder * drm_enc: Pointer to drm encoder structure Loading Loading
drivers/gpu/drm/msm/sde/sde_encoder.c +18 −16 Original line number Diff line number Diff line Loading @@ -2925,6 +2925,21 @@ void sde_encoder_virt_restore(struct drm_encoder *drm_enc) _sde_encoder_virt_enable_helper(drm_enc); } static void sde_encoder_off_work(struct kthread_work *work) { struct sde_encoder_virt *sde_enc = container_of(work, struct sde_encoder_virt, delayed_off_work.work); struct drm_encoder *drm_enc; if (!sde_enc) { SDE_ERROR("invalid sde encoder\n"); return; } drm_enc = &sde_enc->base; sde_encoder_idle_request(drm_enc); } static void sde_encoder_virt_enable(struct drm_encoder *drm_enc) { struct sde_encoder_virt *sde_enc = NULL; Loading Loading @@ -2986,7 +3001,9 @@ static void sde_encoder_virt_enable(struct drm_encoder *drm_enc) "input handler registration failed, rc = %d\n", ret); } sde_enc->delayed_off_work.work.worker = NULL; if (!msm_is_mode_seamless_vrr(cur_mode)) kthread_init_delayed_work(&sde_enc->delayed_off_work, sde_encoder_off_work); ret = sde_encoder_resource_control(drm_enc, SDE_ENC_RC_EVENT_KICKOFF); if (ret) { Loading Loading @@ -3335,21 +3352,6 @@ int sde_encoder_idle_request(struct drm_encoder *drm_enc) return 0; } static void sde_encoder_off_work(struct kthread_work *work) { struct sde_encoder_virt *sde_enc = container_of(work, struct sde_encoder_virt, delayed_off_work.work); struct drm_encoder *drm_enc; if (!sde_enc) { SDE_ERROR("invalid sde encoder\n"); return; } drm_enc = &sde_enc->base; sde_encoder_idle_request(drm_enc); } /** * _sde_encoder_trigger_flush - trigger flush for a physical encoder * drm_enc: Pointer to drm encoder structure Loading