pipe->sspp->ops.setup_sourceaddress(pipe, layout);
        }
 
-       _dpu_plane_set_qos_ctrl(plane, pipe, false, DPU_PLANE_QOS_PANIC_CTRL);
-
        /* override for color fill */
        if (pdpu->color_fill & DPU_PLANE_COLOR_FILL_FLAG) {
+               _dpu_plane_set_qos_ctrl(plane, pipe, false, DPU_PLANE_QOS_PANIC_CTRL);
+
                /* skip remaining processing on color fill */
                return;
        }
 
        _dpu_plane_set_qos_lut(plane, pipe, fmt, pipe_cfg);
        _dpu_plane_set_danger_lut(plane, pipe, fmt);
+       _dpu_plane_set_qos_ctrl(plane, pipe,
+                               pipe->sspp->idx != SSPP_CURSOR0 &&
+                               pipe->sspp->idx != SSPP_CURSOR1,
+                               DPU_PLANE_QOS_PANIC_CTRL);
 
        if (pipe->sspp->idx != SSPP_CURSOR0 &&
-           pipe->sspp->idx != SSPP_CURSOR1) {
-               _dpu_plane_set_qos_ctrl(plane, pipe, true, DPU_PLANE_QOS_PANIC_CTRL);
+           pipe->sspp->idx != SSPP_CURSOR1)
                _dpu_plane_set_ot_limit(plane, pipe, pipe_cfg, frame_rate);
-       }
 
        if (pstate->needs_qos_remap)
                _dpu_plane_set_qos_remap(plane, pipe);