kernel_samsung_a53x/drivers/gpu/drm/rockchip
Jonas Karlman ec81dfe540 drm/rockchip: vop: Fix color for RGB888/BGR888 format on VOP full
[ Upstream commit bb0a05acd6121ff0e810b44fdc24dbdfaa46b642 ]

Use of DRM_FORMAT_RGB888 and DRM_FORMAT_BGR888 on e.g. RK3288, RK3328
and RK3399 result in wrong colors being displayed.

The issue can be observed using modetest:

  modetest -s <connector_id>@<crtc_id>:1920x1080-60@RG24
  modetest -s <connector_id>@<crtc_id>:1920x1080-60@BG24

Vendor 4.4 kernel apply an inverted rb swap for these formats on VOP
full framework (IP version 3.x) compared to VOP little framework (2.x).

Fix colors by applying different rb swap for VOP full framework (3.x)
and VOP little framework (2.x) similar to vendor 4.4 kernel.

Fixes: 85a359f25388 ("drm/rockchip: Add BGR formats to VOP")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Tested-by: Diederik de Haas <didi.debian@cknow.org>
Reviewed-by: Christopher Obbard <chris.obbard@collabora.com>
Tested-by: Christopher Obbard <chris.obbard@collabora.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20231026191500.2994225-1-jonas@kwiboo.se
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-18 12:10:54 +01:00
..
analogix_dp-rockchip.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
cdn-dp-core.c drm/rockchip: cdn-dp: Fix some error handling paths in cdn_dp_probe() 2024-11-18 11:42:55 +01:00
cdn-dp-core.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
cdn-dp-reg.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
cdn-dp-reg.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dw-mipi-dsi-rockchip.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dw_hdmi-rockchip.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
inno_hdmi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
inno_hdmi.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rk3066_hdmi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rk3066_hdmi.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_drm_drv.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_drm_drv.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_drm_fb.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_drm_fb.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_drm_fbdev.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_drm_fbdev.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_drm_gem.c drm/rockchip: Fix type promotion bug in rockchip_gem_iommu_map() 2024-11-18 11:42:55 +01:00
rockchip_drm_gem.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_drm_vop.c drm/rockchip: vop: Fix color for RGB888/BGR888 format on VOP full 2024-11-18 12:10:54 +01:00
rockchip_drm_vop.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_lvds.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_lvds.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_rgb.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_rgb.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_vop_reg.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip_vop_reg.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00