On sunxi boards that use HDMI output, HDMI device probe keeps being
avoided indefinitely with these repeated messages in dmesg:
platform 1ee0000.hdmi: probe deferral - supplier 1ef0000.hdmi-phy
not ready
There's a fwnode_link being created with fw_devlink=on between hdmi
and hdmi-phy nodes, because both nodes have 'compatible' property set.
Fw_devlink code assumes that nodes that have compatible property
set will also have a device associated with them by some driver
eventually. This is not the case with the current sun8i-hdmi
driver.
This commit makes sun8i-hdmi-phy into a proper platform device
and fixes the display pipeline probe on sunxi boards that use HDMI.
More context: https://lkml.org/lkml/2021/5/16/203
Signed-off-by: Saravana Kannan <saravanak@google.com>
Signed-off-by: Ondrej Jirman <megous@megous.com>
Tested-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://patchwork.freedesktop.org/patch/msgid/20210607085836.2827429-1-megous@megous.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_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 | ||