linux-uconsole/drivers/gpu/drm/sun4i
Chen-Yu Tsai 845f872f2f drm/sun4i: tcon: Set RGB DCLK min. divider based on hardware model
commit 4396393fb9 upstream.

In commit 0b8e7bbde5 ("drm/sun4i: tcon: Set min division of TCON0_DCLK
to 1.") it was assumed that all TCON variants support a minimum divider
of 1 if only DCLK was used.

However, the oldest generation of hardware only supports minimum divider
of 4 if only DCLK is used. If a divider of 1 was used on this old
hardware, some scrolling artifact would appear. A divider of 2 seemed
OK, but a divider of 3 had artifacts as well.

Set the minimum divider when outputing to parallel RGB based on the
hardware model, with a minimum of 4 for the oldest (A10/A10s/A13/A20)
hardware, and a minimum of 1 for the rest. A value is not set for the
TCON variants lacking channel 0.

This fixes the scrolling artifacts seen on my A13 tablet.

Fixes: 0b8e7bbde5 ("drm/sun4i: tcon: Set min division of TCON0_DCLK to 1.")
Cc: <stable@vger.kernel.org> # 5.4.x
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://patchwork.freedesktop.org/patch/msgid/20200107070113.28951-1-wens@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-01-14 20:07:01 +01:00
..
Kconfig
Makefile
sun4i_backend.c drm/sun4i: backend: add missing of_node_puts 2019-02-27 10:08:56 +01:00
sun4i_backend.h
sun4i_crtc.c
sun4i_crtc.h
sun4i_dotclock.c drm/sun4i: Fix an ulong overflow in the dotclock driver 2018-10-19 11:50:25 +02:00
sun4i_dotclock.h
sun4i_drv.c drm/sun4i: Unbind components before releasing DRM and memory 2019-05-16 19:41:25 +02:00
sun4i_drv.h
sun4i_framebuffer.c
sun4i_framebuffer.h
sun4i_frontend.c
sun4i_frontend.h
sun4i_hdmi.h
sun4i_hdmi_ddc_clk.c
sun4i_hdmi_enc.c drm/sun4i: hdmi: Remove duplicate cleanup calls 2020-01-09 10:18:59 +01:00
sun4i_hdmi_i2c.c
sun4i_hdmi_tmds_clk.c
sun4i_layer.c
sun4i_layer.h
sun4i_lvds.c
sun4i_lvds.h
sun4i_rgb.c
sun4i_rgb.h
sun4i_tcon.c drm/sun4i: tcon: Set RGB DCLK min. divider based on hardware model 2020-01-14 20:07:01 +01:00
sun4i_tcon.h drm/sun4i: tcon: Set RGB DCLK min. divider based on hardware model 2020-01-14 20:07:01 +01:00
sun4i_tv.c
sun6i_drc.c
sun6i_mipi_dphy.c
sun6i_mipi_dsi.c drm/sun4i: dsi: Enforce boundaries on the start delay 2019-05-31 06:46:35 -07:00
sun6i_mipi_dsi.h
sun8i_csc.c
sun8i_csc.h
sun8i_dw_hdmi.c
sun8i_dw_hdmi.h
sun8i_hdmi_phy.c drm/sun4i: Fix sun8i HDMI PHY configuration for > 148.5 MHz 2019-06-09 09:17:23 +02:00
sun8i_hdmi_phy_clk.c
sun8i_mixer.c
sun8i_mixer.h
sun8i_tcon_top.c drm/sun4i: tcon top: Fix NULL/invalid pointer dereference in sun8i_tcon_top_un/bind 2019-05-10 17:54:08 +02:00
sun8i_tcon_top.h
sun8i_ui_layer.c
sun8i_ui_layer.h
sun8i_ui_scaler.c
sun8i_ui_scaler.h
sun8i_vi_layer.c
sun8i_vi_layer.h
sun8i_vi_scaler.c
sun8i_vi_scaler.h
sunxi_engine.h