From 9df699ccdc691d56974346b1003b7c1d742595b9 Mon Sep 17 00:00:00 2001 From: Paolo Sabatino Date: Fri, 4 Oct 2024 17:20:25 +0200 Subject: [PATCH] remove mainlined hunk from patches --- .../general-hdmi-clock-fixes.patch | 71 ------------------- 1 file changed, 71 deletions(-) diff --git a/patch/kernel/archive/rockchip64-6.6/general-hdmi-clock-fixes.patch b/patch/kernel/archive/rockchip64-6.6/general-hdmi-clock-fixes.patch index 08b08630a..8bad69afb 100644 --- a/patch/kernel/archive/rockchip64-6.6/general-hdmi-clock-fixes.patch +++ b/patch/kernel/archive/rockchip64-6.6/general-hdmi-clock-fixes.patch @@ -202,77 +202,6 @@ index 341550199111..1159fc713a2a 100644 return phy_power_on(hdmi->phy); } -diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c -index 4b338cb89d32..468347e16f92 100644 ---- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c -+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c -@@ -381,8 +381,8 @@ static void scl_vop_cal_scl_fac(struct vop *vop, const struct vop_win_data *win, - if (info->is_yuv) - is_yuv = true; - -- if (dst_w > 3840) { -- DRM_DEV_ERROR(vop->dev, "Maximum dst width (3840) exceeded\n"); -+ if (dst_w > 4096) { -+ DRM_DEV_ERROR(vop->dev, "Maximum dst width (4096) exceeded\n"); - return; - } - -@@ -923,6 +923,7 @@ static void vop_plane_atomic_update(struct drm_plane *plane, - int format; - int is_yuv = fb->format->is_yuv; - int i; -+ int skiplines = 0; - - /* - * can't update plane when vop is disabled. -@@ -941,8 +942,14 @@ static void vop_plane_atomic_update(struct drm_plane *plane, - obj = fb->obj[0]; - rk_obj = to_rockchip_obj(obj); - -+ /* -+ * Force skip lines when image is yuv and 3840 width, -+ * fixes a "jumping" green lines issue on RK3328. -+ */ - actual_w = drm_rect_width(src) >> 16; -- actual_h = drm_rect_height(src) >> 16; -+ if (actual_w == 3840 && is_yuv) -+ skiplines = 1; -+ actual_h = drm_rect_height(src) >> (16 + skiplines); - act_info = (actual_h - 1) << 16 | ((actual_w - 1) & 0xffff); - - dsp_info = (drm_rect_height(dest) - 1) << 16; -@@ -952,7 +959,12 @@ static void vop_plane_atomic_update(struct drm_plane *plane, - dsp_sty = dest->y1 + crtc->mode.vtotal - crtc->mode.vsync_start; - dsp_st = dsp_sty << 16 | (dsp_stx & 0xffff); - -- offset = (src->x1 >> 16) * fb->format->cpp[0]; -+ if (fb->format->block_w[0]) -+ offset = (src->x1 >> 16) * fb->format->char_per_block[0] / -+ fb->format->block_w[0]; -+ else -+ offset = (src->x1 >> 16) * fb->format->cpp[0]; -+ - offset += (src->y1 >> 16) * fb->pitches[0]; - dma_addr = rk_obj->dma_addr + offset + fb->offsets[0]; - -@@ -994,11 +1006,15 @@ static void vop_plane_atomic_update(struct drm_plane *plane, - uv_obj = fb->obj[1]; - rk_uv_obj = to_rockchip_obj(uv_obj); - -- offset = (src->x1 >> 16) * bpp / hsub; -+ if (fb->format->block_w[1]) -+ offset = (src->x1 >> 16) * bpp / -+ fb->format->block_w[1] / hsub; -+ else -+ offset = (src->x1 >> 16) * bpp / hsub; - offset += (src->y1 >> 16) * fb->pitches[1] / vsub; - - dma_addr = rk_uv_obj->dma_addr + offset + fb->offsets[1]; -- VOP_WIN_SET(vop, win, uv_vir, DIV_ROUND_UP(fb->pitches[1], 4)); -+ VOP_WIN_SET(vop, win, uv_vir, DIV_ROUND_UP(fb->pitches[1], 4 >> skiplines)); - VOP_WIN_SET(vop, win, uv_mst, dma_addr); - - for (i = 0; i < NUM_YUV2YUV_COEFFICIENTS; i++) { diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c index 7b2805006776..ffa0c717290e 100644 --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c