patch-5.15.79-rt54.patch
[platform/kernel/linux-rpi.git] / drivers / gpu / drm / i915 / display / intel_crtc.c
index 254e671..7a39029 100644 (file)
@@ -425,7 +425,8 @@ void intel_pipe_update_start(const struct intel_crtc_state *new_crtc_state)
         */
        intel_psr_wait_for_idle(new_crtc_state);
 
-       local_irq_disable();
+       if (!IS_ENABLED(CONFIG_PREEMPT_RT))
+               local_irq_disable();
 
        crtc->debug.min_vbl = min;
        crtc->debug.max_vbl = max;
@@ -450,11 +451,13 @@ void intel_pipe_update_start(const struct intel_crtc_state *new_crtc_state)
                        break;
                }
 
-               local_irq_enable();
+               if (!IS_ENABLED(CONFIG_PREEMPT_RT))
+                       local_irq_enable();
 
                timeout = schedule_timeout(timeout);
 
-               local_irq_disable();
+               if (!IS_ENABLED(CONFIG_PREEMPT_RT))
+                       local_irq_disable();
        }
 
        finish_wait(wq, &wait);
@@ -487,7 +490,8 @@ void intel_pipe_update_start(const struct intel_crtc_state *new_crtc_state)
        return;
 
 irq_disable:
-       local_irq_disable();
+       if (!IS_ENABLED(CONFIG_PREEMPT_RT))
+               local_irq_disable();
 }
 
 #if IS_ENABLED(CONFIG_DRM_I915_DEBUG_VBLANK_EVADE)
@@ -566,7 +570,8 @@ void intel_pipe_update_end(struct intel_crtc_state *new_crtc_state)
                new_crtc_state->uapi.event = NULL;
        }
 
-       local_irq_enable();
+       if (!IS_ENABLED(CONFIG_PREEMPT_RT))
+               local_irq_enable();
 
        /* Send VRR Push to terminate Vblank */
        intel_vrr_send_push(new_crtc_state);