Loading drivers/gpu/drm/msm/sde/sde_encoder.c +10 −2 Original line number Diff line number Diff line Loading @@ -259,6 +259,7 @@ struct sde_encoder_virt { struct kthread_work input_event_work; struct kthread_work esd_trigger_work; struct input_handler *input_handler; bool input_handler_registered; struct msm_display_topology topology; bool vblank_enabled; Loading Loading @@ -743,6 +744,7 @@ void sde_encoder_destroy(struct drm_encoder *drm_enc) if (sde_enc->input_handler) { kfree(sde_enc->input_handler); sde_enc->input_handler = NULL; sde_enc->input_handler_registered = false; } kfree(sde_enc); Loading Loading @@ -2634,6 +2636,7 @@ static int _sde_encoder_input_handler( input_handler->private = sde_enc; sde_enc->input_handler = input_handler; sde_enc->input_handler_registered = false; return rc; } Loading Loading @@ -2755,12 +2758,14 @@ static void sde_encoder_virt_enable(struct drm_encoder *drm_enc) return; } if (sde_enc->input_handler) { if (sde_enc->input_handler && !sde_enc->input_handler_registered) { ret = _sde_encoder_input_handler_register( sde_enc->input_handler); if (ret) SDE_ERROR( "input handler registration failed, rc = %d\n", ret); else sde_enc->input_handler_registered = true; } ret = sde_encoder_resource_control(drm_enc, SDE_ENC_RC_EVENT_KICKOFF); Loading Loading @@ -2838,8 +2843,11 @@ static void sde_encoder_virt_disable(struct drm_encoder *drm_enc) SDE_EVT32(DRMID(drm_enc)); if (sde_enc->input_handler) if (sde_enc->input_handler && sde_enc->input_handler_registered) { input_unregister_handler(sde_enc->input_handler); sde_enc->input_handler_registered = false; } /* wait for idle */ sde_encoder_wait_for_event(drm_enc, MSM_ENC_TX_COMPLETE); Loading Loading
drivers/gpu/drm/msm/sde/sde_encoder.c +10 −2 Original line number Diff line number Diff line Loading @@ -259,6 +259,7 @@ struct sde_encoder_virt { struct kthread_work input_event_work; struct kthread_work esd_trigger_work; struct input_handler *input_handler; bool input_handler_registered; struct msm_display_topology topology; bool vblank_enabled; Loading Loading @@ -743,6 +744,7 @@ void sde_encoder_destroy(struct drm_encoder *drm_enc) if (sde_enc->input_handler) { kfree(sde_enc->input_handler); sde_enc->input_handler = NULL; sde_enc->input_handler_registered = false; } kfree(sde_enc); Loading Loading @@ -2634,6 +2636,7 @@ static int _sde_encoder_input_handler( input_handler->private = sde_enc; sde_enc->input_handler = input_handler; sde_enc->input_handler_registered = false; return rc; } Loading Loading @@ -2755,12 +2758,14 @@ static void sde_encoder_virt_enable(struct drm_encoder *drm_enc) return; } if (sde_enc->input_handler) { if (sde_enc->input_handler && !sde_enc->input_handler_registered) { ret = _sde_encoder_input_handler_register( sde_enc->input_handler); if (ret) SDE_ERROR( "input handler registration failed, rc = %d\n", ret); else sde_enc->input_handler_registered = true; } ret = sde_encoder_resource_control(drm_enc, SDE_ENC_RC_EVENT_KICKOFF); Loading Loading @@ -2838,8 +2843,11 @@ static void sde_encoder_virt_disable(struct drm_encoder *drm_enc) SDE_EVT32(DRMID(drm_enc)); if (sde_enc->input_handler) if (sde_enc->input_handler && sde_enc->input_handler_registered) { input_unregister_handler(sde_enc->input_handler); sde_enc->input_handler_registered = false; } /* wait for idle */ sde_encoder_wait_for_event(drm_enc, MSM_ENC_TX_COMPLETE); Loading