drm/rockchip: dw-dp: show logo in sst mode

Implementing dp mst mode in uboot need much time and is difficult,
So The dp show uboot logo stll in sst mode though the branch or
sink support MST when attach to RK3576 DP Port. If some methods
foud that easy to show logo in MST mode, MST mode will be support
when show logo.

In order to show kernel logo only in SST mode. The DP controller
driver should force the DPTX controller work in SST mode whether the
sink is mst-capable or not until finish show logo.

Change-Id: I8feef5b3feb6f98d249b470cbe4b3363ba218733
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
This commit is contained in:
Zhang Yubing
2024-03-04 17:48:01 +08:00
committed by Tao Huang
parent 50e170f40d
commit 3cce3a0a39

View File

@@ -472,6 +472,7 @@ struct dw_dp {
u8 pixel_mode;
u32 max_link_rate;
bool is_loader_protect;
bool support_mst;
bool is_mst;
int mst_port_num;
@@ -3062,6 +3063,7 @@ static int dw_dp_loader_protect(struct drm_encoder *encoder, bool on)
{
struct dw_dp *dp = encoder_to_dp(encoder);
dp->is_loader_protect = true;
_dw_dp_loader_protect(dp, on);
if (dp->right)
_dw_dp_loader_protect(dp->right, on);
@@ -4159,6 +4161,10 @@ static enum drm_connector_status dw_dp_bridge_detect(struct drm_bridge *bridge)
}
out:
if (dp->is_loader_protect) {
dp->is_loader_protect = false;
return status;
}
if (status == connector_status_disconnected) {
if (dp->is_mst) {
dev_info(dp->dev, "MST device may have disappeared\n");