kernel: bump 5.4 to 5.4.99
[openwrt/staging/rmilecki.git] / target / linux / bcm27xx / patches-5.4 / 950-0546-drm-vc4-plane-Improve-LBM-usage.patch
index df7a98fc548160432f68a101994ca60cfa3cab8b..5342e0ad23d980ceae062e64825faf9b05280fc3 100644 (file)
@@ -32,7 +32,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
                return VC4_SCALING_NONE;
        if (3 * dst >= 2 * src)
                return VC4_SCALING_PPF;
-@@ -369,9 +370,11 @@ static int vc4_plane_setup_clipping_and_
+@@ -377,9 +378,11 @@ static int vc4_plane_setup_clipping_and_
                return ret;
  
        vc4_state->x_scaling[0] = vc4_get_scaling_mode(vc4_state->src_w[0],
@@ -46,7 +46,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
  
        vc4_state->is_unity = (vc4_state->x_scaling[0] == VC4_SCALING_NONE &&
                               vc4_state->y_scaling[0] == VC4_SCALING_NONE);
-@@ -384,10 +387,12 @@ static int vc4_plane_setup_clipping_and_
+@@ -392,10 +395,12 @@ static int vc4_plane_setup_clipping_and_
  
                vc4_state->x_scaling[1] =
                        vc4_get_scaling_mode(vc4_state->src_w[1],
@@ -61,7 +61,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
  
                /* YUV conversion requires that horizontal scaling be enabled
                 * on the UV plane even if vc4_get_scaling_mode() returned
-@@ -437,10 +442,7 @@ static void vc4_write_ppf(struct vc4_pla
+@@ -445,10 +450,7 @@ static void vc4_write_ppf(struct vc4_pla
  static u32 vc4_lbm_size(struct drm_plane_state *state)
  {
        struct vc4_plane_state *vc4_state = to_vc4_plane_state(state);
@@ -73,7 +73,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        u32 lbm;
  
        /* LBM is not needed when there's no vertical scaling. */
-@@ -448,6 +450,11 @@ static u32 vc4_lbm_size(struct drm_plane
+@@ -456,6 +458,11 @@ static u32 vc4_lbm_size(struct drm_plane
            vc4_state->y_scaling[1] == VC4_SCALING_NONE)
                return 0;
  
@@ -85,7 +85,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        if (!vc4_state->is_yuv) {
                if (vc4_state->y_scaling[0] == VC4_SCALING_TPZ)
                        lbm = pix_per_line * 8;
-@@ -583,7 +590,9 @@ static int vc4_plane_allocate_lbm(struct
+@@ -591,7 +598,9 @@ static int vc4_plane_allocate_lbm(struct
                spin_lock_irqsave(&vc4->hvs->mm_lock, irqflags);
                ret = drm_mm_insert_node_generic(&vc4->hvs->lbm_mm,
                                                 &vc4_state->lbm,