Loading drivers/gpu/drm/msm/sde/sde_color_processing.c +6 −2 Original line number Diff line number Diff line Loading @@ -1033,6 +1033,12 @@ void sde_cp_crtc_suspend(struct drm_crtc *crtc) sde_cp_update_list(prop_node, sde_crtc, true); list_del_init(&prop_node->active_list); } list_for_each_entry_safe(prop_node, n, &sde_crtc->ad_active, active_list) { sde_cp_update_list(prop_node, sde_crtc, true); list_del_init(&prop_node->active_list); } } void sde_cp_crtc_resume(struct drm_crtc *crtc) Loading Loading @@ -1368,7 +1374,6 @@ int sde_cp_ad_interrupt(struct drm_crtc *crtc_drm, bool en, return -EINVAL; } mutex_lock(&crtc->crtc_lock); kms = get_kms(crtc_drm); num_mixers = crtc->num_mixers; Loading Loading @@ -1422,6 +1427,5 @@ int sde_cp_ad_interrupt(struct drm_crtc *crtc_drm, bool en, sde_core_irq_unregister_callback(kms, irq_idx, ad_irq); } exit: mutex_unlock(&crtc->crtc_lock); return ret; } drivers/gpu/drm/msm/sde/sde_crtc.c +11 −11 Original line number Diff line number Diff line Loading @@ -2525,6 +2525,17 @@ static void sde_crtc_disable(struct drm_crtc *crtc) atomic_set(&sde_crtc->frame_pending, 0); } spin_lock_irqsave(&sde_crtc->spin_lock, flags); list_for_each_entry(node, &sde_crtc->user_event_list, list) { ret = 0; if (node->func) ret = node->func(crtc, false, &node->irq); if (ret) SDE_ERROR("%s failed to disable event %x\n", sde_crtc->name, node->event); } spin_unlock_irqrestore(&sde_crtc->spin_lock, flags); sde_core_perf_crtc_update(crtc, 0, true); drm_for_each_encoder(encoder, crtc->dev) { Loading @@ -2546,17 +2557,6 @@ static void sde_crtc_disable(struct drm_crtc *crtc) cstate->bw_control = false; cstate->bw_split_vote = false; spin_lock_irqsave(&sde_crtc->spin_lock, flags); list_for_each_entry(node, &sde_crtc->user_event_list, list) { ret = 0; if (node->func) ret = node->func(crtc, false, &node->irq); if (ret) SDE_ERROR("%s failed to disable event %x\n", sde_crtc->name, node->event); } spin_unlock_irqrestore(&sde_crtc->spin_lock, flags); mutex_unlock(&sde_crtc->crtc_lock); } Loading Loading
drivers/gpu/drm/msm/sde/sde_color_processing.c +6 −2 Original line number Diff line number Diff line Loading @@ -1033,6 +1033,12 @@ void sde_cp_crtc_suspend(struct drm_crtc *crtc) sde_cp_update_list(prop_node, sde_crtc, true); list_del_init(&prop_node->active_list); } list_for_each_entry_safe(prop_node, n, &sde_crtc->ad_active, active_list) { sde_cp_update_list(prop_node, sde_crtc, true); list_del_init(&prop_node->active_list); } } void sde_cp_crtc_resume(struct drm_crtc *crtc) Loading Loading @@ -1368,7 +1374,6 @@ int sde_cp_ad_interrupt(struct drm_crtc *crtc_drm, bool en, return -EINVAL; } mutex_lock(&crtc->crtc_lock); kms = get_kms(crtc_drm); num_mixers = crtc->num_mixers; Loading Loading @@ -1422,6 +1427,5 @@ int sde_cp_ad_interrupt(struct drm_crtc *crtc_drm, bool en, sde_core_irq_unregister_callback(kms, irq_idx, ad_irq); } exit: mutex_unlock(&crtc->crtc_lock); return ret; }
drivers/gpu/drm/msm/sde/sde_crtc.c +11 −11 Original line number Diff line number Diff line Loading @@ -2525,6 +2525,17 @@ static void sde_crtc_disable(struct drm_crtc *crtc) atomic_set(&sde_crtc->frame_pending, 0); } spin_lock_irqsave(&sde_crtc->spin_lock, flags); list_for_each_entry(node, &sde_crtc->user_event_list, list) { ret = 0; if (node->func) ret = node->func(crtc, false, &node->irq); if (ret) SDE_ERROR("%s failed to disable event %x\n", sde_crtc->name, node->event); } spin_unlock_irqrestore(&sde_crtc->spin_lock, flags); sde_core_perf_crtc_update(crtc, 0, true); drm_for_each_encoder(encoder, crtc->dev) { Loading @@ -2546,17 +2557,6 @@ static void sde_crtc_disable(struct drm_crtc *crtc) cstate->bw_control = false; cstate->bw_split_vote = false; spin_lock_irqsave(&sde_crtc->spin_lock, flags); list_for_each_entry(node, &sde_crtc->user_event_list, list) { ret = 0; if (node->func) ret = node->func(crtc, false, &node->irq); if (ret) SDE_ERROR("%s failed to disable event %x\n", sde_crtc->name, node->event); } spin_unlock_irqrestore(&sde_crtc->spin_lock, flags); mutex_unlock(&sde_crtc->crtc_lock); } Loading