WSL2-Linux-Kernel/drivers/gpu/drm/mediatek
AngeloGioacchino Del Regno 647474b8d9 drm/mediatek: mtk_dsi: Avoid EPROBE_DEFER loop with external bridge
DRM bridge drivers are now attaching their DSI device at probe time,
which requires us to register our DSI host in order to let the bridge
to probe: this recently started producing an endless -EPROBE_DEFER
loop on some machines that are using external bridges, like the
parade-ps8640, found on the ACER Chromebook R13.

Now that the DSI hosts/devices probe sequence is documented, we can
do adjustments to the mtk_dsi driver as to both fix now and make sure
to avoid this situation in the future: for this, following what is
documented in drm_bridge.c, move the mtk_dsi component_add() to the
mtk_dsi_ops.attach callback and delete it in the detach callback;
keeping in mind that we are registering a drm_bridge for our DSI,
which is only used/attached if the DSI Host is bound, it wouldn't
make sense to keep adding our bridge at probe time (as it would
be useless to have it if mtk_dsi_ops.attach() fails!), so also move
that one to the dsi host attach function (and remove it in detach).

Cc: <stable@vger.kernel.org> # 5.15.x
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: Andrzej Hajda <andrzej.hajda@intel.com>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
Tested-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
2022-02-09 22:58:34 +08:00
..
Kconfig phy: mediatek: Move mtk_mipi_dsi_phy driver into drivers/phy/mediatek folder 2020-11-30 23:42:40 +08:00
Makefile drm/mediatek: Separate aal sub driver 2021-07-25 08:25:45 +08:00
mtk_cec.c drm/mediatek: Add missing MODULE_DEVICE_TABLE() 2021-03-31 19:38:06 +08:00
mtk_cec.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
mtk_disp_aal.c drm for v5.15-rc1 2021-09-01 11:26:46 -07:00
mtk_disp_ccorr.c drm/mediatek: Add support for Mediatek SoC MT8192 2021-11-16 07:29:48 +08:00
mtk_disp_color.c drm/mediatek: Add component_del in OVL and COLOR remove function 2021-08-12 07:00:50 +08:00
mtk_disp_drv.h drm/mediatek: Separate aal sub driver 2021-07-25 08:25:45 +08:00
mtk_disp_gamma.c drm/mediatek/mtk_disp_gamma: Strip and demote non-conformant kernel-doc header 2021-06-03 13:28:39 +02:00
mtk_disp_ovl.c drm/mediatek: Add support for Mediatek SoC MT8192 2021-11-16 07:29:48 +08:00
mtk_disp_rdma.c drm/mediatek: Add support for Mediatek SoC MT8192 2021-11-16 07:29:48 +08:00
mtk_dpi.c drm for v5.15-rc1 2021-09-01 11:26:46 -07:00
mtk_dpi_regs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
mtk_drm_crtc.c drm/mediatek: Clear pending flag when cmdq packet is done 2021-11-18 07:37:12 +08:00
mtk_drm_crtc.h drm-misc-next for 5.13: 2021-03-16 17:08:46 +10:00
mtk_drm_ddp_comp.c drm/mediatek: Adjust to the alphabetic order for mediatek-drm 2021-12-03 07:46:39 +08:00
mtk_drm_ddp_comp.h drm/mediatek: Adjust to the alphabetic order for mediatek-drm 2021-12-03 07:46:39 +08:00
mtk_drm_drv.c drm/mediatek: Adjust to the alphabetic order for mediatek-drm 2021-12-03 07:46:39 +08:00
mtk_drm_drv.h drm/mediatek: Separate aal sub driver 2021-07-25 08:25:45 +08:00
mtk_drm_gem.c drm/mediatek: Implement mmap as GEM object function 2021-08-09 21:23:51 +08:00
mtk_drm_gem.h drm/mediatek: Implement mmap as GEM object function 2021-08-09 21:23:51 +08:00
mtk_drm_plane.c drm/mediatek: Set the default value of rotation to DRM_MODE_ROTATE_0 2021-12-14 07:17:50 +08:00
mtk_drm_plane.h drm/mediatek: update cursors by using async atomic update 2019-12-20 16:19:11 +08:00
mtk_dsi.c drm/mediatek: mtk_dsi: Avoid EPROBE_DEFER loop with external bridge 2022-02-09 22:58:34 +08:00
mtk_hdmi.c drm/mediatek: hdmi: Perform NULL pointer check for mtk_hdmi_conf 2021-12-13 21:01:11 +08:00
mtk_hdmi.h drm/mediatek: Separate mtk_hdmi_phy to an independent module 2020-09-06 07:02:54 +08:00
mtk_hdmi_ddc.c drm/mediatek: Add missing MODULE_DEVICE_TABLE() 2021-03-31 19:38:06 +08:00
mtk_hdmi_regs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00