Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9f3fa7a2 authored by Xiaowen Wu's avatar Xiaowen Wu Committed by Gerrit - the friendly Code Review server
Browse files

drm: add support to sst-only sink branch device



Currently SST-only branch device is handled as MST branch device,
because SST-only branch device can't respond to MST LINK_ADDRESS
sideband message, it will fail the connector creation to any port
connected to the branch. This change treats SST-only sink branch
device as SST sink device and avoid LINK_ADDRESS failure.

Signed-off-by: default avatarXiaowen Wu <wxiaowen@codeaurora.org>
Change-Id: I993e583c01f574ea428c1f5cec0f41eb169351dd
parent 54f3590a
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -1076,6 +1076,13 @@ static bool drm_dp_port_setup_pdt(struct drm_dp_mst_port *port)
		ret = drm_dp_mst_register_i2c_bus(&port->aux);
		break;
	case DP_PEER_DEVICE_MST_BRANCHING:
		/* SST-only branch should be treated as SST sink */
		if (!port->input && !port->mcs) {
			port->pdt = DP_PEER_DEVICE_SST_SINK;
			ret = drm_dp_mst_register_i2c_bus(&port->aux);
			break;
		}

		lct = drm_dp_calculate_rad(port, rad);

		port->mstb = drm_dp_add_mst_branch_device(lct, rad);