linux/drivers/gpu/drm/sun4i
Jernej Skrabec c64c8e04a1 drm/sun4i: dw-hdmi: Fix HDMI PHY clock setup
Recent rework, which made HDMI PHY driver a platform device, inadvertely
reversed clock setup order. HW is very touchy about it. Proper way is to
handle controllers resets and clocks first and HDMI PHYs second.

Currently, without this fix, first mode set completely fails (nothing on
HDMI monitor) on H3 era PHYs. On H6, it still somehow work.

Move HDMI PHY reset & clocks handling to sun8i_hdmi_phy_init() which
will assure that code is executed after controllers reset & clocks are
handled. Additionally, add sun8i_hdmi_phy_deinit() which will deinit
them at controllers driver unload.

Tested on A64, H3, H6 and R40.

Fixes: 9bf3797796 ("drm/sun4i: dw-hdmi: Make HDMI PHY into a platform device")
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://patchwork.freedesktop.org/patch/msgid/20210915175836.3158839-1-jernej.skrabec@gmail.com
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
2021-10-06 11:05:44 +02:00
..
Kconfig
Makefile
sun4i_backend.c
sun4i_backend.h
sun4i_crtc.c
sun4i_crtc.h
sun4i_dotclock.c
sun4i_dotclock.h
sun4i_drv.c drm/aperture: Pass DRM driver structure instead of driver name 2021-07-01 11:11:55 +02:00
sun4i_drv.h
sun4i_framebuffer.c
sun4i_framebuffer.h
sun4i_frontend.c
sun4i_frontend.h
sun4i_hdmi_ddc_clk.c
sun4i_hdmi_enc.c
sun4i_hdmi_i2c.c
sun4i_hdmi_tmds_clk.c
sun4i_hdmi.h
sun4i_layer.c drm/<driver>: drm_gem_plane_helper_prepare_fb is now the default 2021-06-24 15:35:24 +02:00
sun4i_layer.h
sun4i_lvds.c drm/bridge: Centralize error message when bridge attach fails 2021-07-28 16:33:12 +03:00
sun4i_lvds.h
sun4i_rgb.c drm/bridge: Centralize error message when bridge attach fails 2021-07-28 16:33:12 +03:00
sun4i_rgb.h
sun4i_tcon.c
sun4i_tcon.h
sun4i_tv.c
sun6i_drc.c
sun6i_mipi_dsi.c
sun6i_mipi_dsi.h
sun8i_csc.c
sun8i_csc.h
sun8i_dw_hdmi.c drm/sun4i: dw-hdmi: Fix HDMI PHY clock setup 2021-10-06 11:05:44 +02:00
sun8i_dw_hdmi.h drm/sun4i: dw-hdmi: Fix HDMI PHY clock setup 2021-10-06 11:05:44 +02:00
sun8i_hdmi_phy_clk.c
sun8i_hdmi_phy.c drm/sun4i: dw-hdmi: Fix HDMI PHY clock setup 2021-10-06 11:05:44 +02:00
sun8i_mixer.c
sun8i_mixer.h
sun8i_tcon_top.c
sun8i_tcon_top.h
sun8i_ui_layer.c drm/<driver>: drm_gem_plane_helper_prepare_fb is now the default 2021-06-24 15:35:24 +02:00
sun8i_ui_layer.h
sun8i_ui_scaler.c
sun8i_ui_scaler.h
sun8i_vi_layer.c drm/<driver>: drm_gem_plane_helper_prepare_fb is now the default 2021-06-24 15:35:24 +02:00
sun8i_vi_layer.h
sun8i_vi_scaler.c
sun8i_vi_scaler.h
sunxi_engine.h