12fa2d67d1
[ Upstream commit 2d343723c7e1f9f6d64f721f07cfdfc2993758d1 ] When a display controller driver uses DRM_BRIDGE_ATTACH_NO_CONNECTOR, tc358767 will behave properly and skip the creation of the connector. However, tc_get_display_props(), which is used to find out about the DP monitor and link, is only called from two places: .atomic_enable() and tc_connector_get_modes(). The latter is only used when tc358767 creates its own connector, i.e. when DRM_BRIDGE_ATTACH_NO_CONNECTOR is _not_ set. Thus, the driver never finds out the link properties before get_edid() is called. With num_lanes of 0 and link_rate of 0 there are not many valid modes... Fix this by adding tc_get_display_props() call at the beginning of get_edid(), so that we have up to date information before looking at the modes. Reported-by: Jan Kiszka <jan.kiszka@siemens.com> Closes: https://lore.kernel.org/all/24282420-b4dd-45b3-bb1c-fc37fe4a8205@siemens.com/ Fixes: de5e6c027ae6 ("drm/bridge: tc358767: add drm_panel_bridge support") Reviewed-by: Aradhya Bhatia <a-bhatia1@ti.com> Tested-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> Link: https://patchwork.freedesktop.org/patch/msgid/20231108-tc358767-v2-2-25c5f70a2159@ideasonboard.com Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Sasha Levin <sashal@kernel.org> |
||
---|---|---|
.. | ||
adv7511 | ||
analogix | ||
cadence | ||
synopsys | ||
cdns-dsi.c | ||
chrontel-ch7033.c | ||
display-connector.c | ||
Kconfig | ||
lontium-lt9611.c | ||
lvds-codec.c | ||
Makefile | ||
megachips-stdpxxxx-ge-b850v3-fw.c | ||
nwl-dsi.c | ||
nwl-dsi.h | ||
nxp-ptn3460.c | ||
panel.c | ||
parade-ps8622.c | ||
parade-ps8640.c | ||
sii902x.c | ||
sii9234.c | ||
sil-sii8620.c | ||
sil-sii8620.h | ||
simple-bridge.c | ||
tc358762.c | ||
tc358764.c | ||
tc358767.c | ||
tc358768.c | ||
tc358775.c | ||
thc63lvd1024.c | ||
ti-sn65dsi86.c | ||
ti-tfp410.c | ||
ti-tpd12s015.c |