mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00
![]() Handle both positive and negative dclk polarity, according to bus_flags, taking care of this: On A20 and similar SoCs, the only way to achieve Positive Edge (Rising Edge), is setting dclk clock phase to 2/3(240°). By default TCON works in Negative Edge(Falling Edge), this is why phase is set to 0 in that case. Unfortunately there's no way to logically invert dclk through IO_POL register. The only acceptable way to work, triple checked with scope, is using clock phase set to 0° for Negative Edge and set to 240° for Positive Edge. On A33 and similar SoCs there would be a 90° phase option, but it divides also dclk by 2. This patch is a way to avoid quirks all around TCON and DOTCLOCK drivers for using A33 90° phase divided by 2 and consequently increase code complexity. Check if panel is used. TCON can also handle VGA DAC, then panel could be empty. Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com> Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com> Link: https://patchwork.freedesktop.org/patch/msgid/20180718142357.120998-1-giulio.benetti@micronovasrl.com |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
sun4i_backend.c | ||
sun4i_backend.h | ||
sun4i_crtc.c | ||
sun4i_crtc.h | ||
sun4i_dotclock.c | ||
sun4i_dotclock.h | ||
sun4i_drv.c | ||
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 | ||
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 | ||
sun4i_tcon.h | ||
sun4i_tv.c | ||
sun6i_drc.c | ||
sun6i_mipi_dphy.c | ||
sun6i_mipi_dsi.c | ||
sun6i_mipi_dsi.h | ||
sun8i_csc.c | ||
sun8i_csc.h | ||
sun8i_dw_hdmi.c | ||
sun8i_dw_hdmi.h | ||
sun8i_hdmi_phy.c | ||
sun8i_hdmi_phy_clk.c | ||
sun8i_mixer.c | ||
sun8i_mixer.h | ||
sun8i_tcon_top.c | ||
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 |