diff --git a/msm/sde/sde_encoder.c b/msm/sde/sde_encoder.c index d711083aa7..7ba573e947 100644 --- a/msm/sde/sde_encoder.c +++ b/msm/sde/sde_encoder.c @@ -1341,7 +1341,7 @@ static int _sde_encoder_update_rsc_client( return ret; } -static void _sde_encoder_irq_control(struct drm_encoder *drm_enc, bool enable) +void sde_encoder_irq_control(struct drm_encoder *drm_enc, bool enable) { struct sde_encoder_virt *sde_enc; int i; @@ -1451,7 +1451,7 @@ static int _sde_encoder_resource_control_helper(struct drm_encoder *drm_enc, } /* enable all the irq */ - _sde_encoder_irq_control(drm_enc, true); + sde_encoder_irq_control(drm_enc, true); _sde_encoder_pm_qos_add_request(drm_enc); @@ -1459,7 +1459,7 @@ static int _sde_encoder_resource_control_helper(struct drm_encoder *drm_enc, _sde_encoder_pm_qos_remove_request(drm_enc); /* disable all the irq */ - _sde_encoder_irq_control(drm_enc, false); + sde_encoder_irq_control(drm_enc, false); /* disable DSI clks */ sde_connector_clk_ctrl(sde_enc->cur_master->connector, false); @@ -1626,7 +1626,7 @@ static int _sde_encoder_rc_kickoff(struct drm_encoder *drm_enc, } if (is_vid_mode && sde_enc->rc_state == SDE_ENC_RC_STATE_IDLE) { - _sde_encoder_irq_control(drm_enc, true); + sde_encoder_irq_control(drm_enc, true); } else { /* enable all the clks and resources */ ret = _sde_encoder_resource_control_helper(drm_enc, @@ -1663,7 +1663,7 @@ static int _sde_encoder_rc_pre_stop(struct drm_encoder *drm_enc, if (is_vid_mode && sde_enc->rc_state == SDE_ENC_RC_STATE_IDLE) { - _sde_encoder_irq_control(drm_enc, true); + sde_encoder_irq_control(drm_enc, true); } /* skip if is already OFF or IDLE, resources are off already */ else if (sde_enc->rc_state == SDE_ENC_RC_STATE_OFF || @@ -1780,7 +1780,7 @@ static int _sde_encoder_rc_pre_modeset(struct drm_encoder *drm_enc, goto end; } - _sde_encoder_irq_control(drm_enc, false); + sde_encoder_irq_control(drm_enc, false); _sde_encoder_modeset_helper_locked(drm_enc, sw_event); SDE_EVT32(DRMID(drm_enc), sw_event, sde_enc->rc_state, @@ -1818,7 +1818,7 @@ static int _sde_encoder_rc_post_modeset(struct drm_encoder *drm_enc, } _sde_encoder_modeset_helper_locked(drm_enc, sw_event); - _sde_encoder_irq_control(drm_enc, true); + sde_encoder_irq_control(drm_enc, true); _sde_encoder_update_rsc_client(drm_enc, true); @@ -1862,7 +1862,7 @@ static int _sde_encoder_rc_idle(struct drm_encoder *drm_enc, } if (is_vid_mode) { - _sde_encoder_irq_control(drm_enc, false); + sde_encoder_irq_control(drm_enc, false); } else { /* disable all the clks and resources */ _sde_encoder_update_rsc_client(drm_enc, false); diff --git a/msm/sde/sde_encoder.h b/msm/sde/sde_encoder.h index c94f754b7d..e7b3924d43 100644 --- a/msm/sde/sde_encoder.h +++ b/msm/sde/sde_encoder.h @@ -525,6 +525,13 @@ void sde_encoder_needs_hw_reset(struct drm_encoder *enc); */ void sde_encoder_uidle_enable(struct drm_encoder *drm_enc, bool enable); +/** + * sde_encoder_irq_control - control enable/disable of IRQ's + * @drm_enc: Pointer to drm encoder structure + * @enable: enable/disable flag + */ +void sde_encoder_irq_control(struct drm_encoder *drm_enc, bool enable); + /** * sde_encoder_get_kms - retrieve the kms from encoder * @drm_enc: Pointer to drm encoder structure