mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 19:30:30 +09:00
drm/bridge: analogix_dp: Support split mode for bridge chain
Fixes: c1754005a3 ("drm/bridge: analogix_dp: Support split mode for bridge chain")
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: Iceb575560b1e6a9257f31e8370c8139afaae20b0
This commit is contained in:
@@ -1311,14 +1311,24 @@ static int analogix_dp_bridge_attach(struct drm_bridge *bridge,
|
||||
struct drm_connector *connector = NULL;
|
||||
int ret = 0;
|
||||
|
||||
if (flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR)
|
||||
return 0;
|
||||
|
||||
if (!bridge->encoder) {
|
||||
DRM_ERROR("Parent encoder object not found");
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
if (dp->plat_data->bridge) {
|
||||
ret = drm_bridge_attach(bridge->encoder, dp->plat_data->bridge, bridge,
|
||||
dp->plat_data->skip_connector ?
|
||||
0 : DRM_BRIDGE_ATTACH_NO_CONNECTOR);
|
||||
if (ret) {
|
||||
DRM_ERROR("Failed to attach external bridge: %d\n", ret);
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
if (flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR)
|
||||
return 0;
|
||||
|
||||
if (!dp->plat_data->skip_connector) {
|
||||
int connector_type = DRM_MODE_CONNECTOR_eDP;
|
||||
|
||||
|
||||
@@ -263,17 +263,6 @@ static int rockchip_dp_bridge_attach(struct analogix_dp_plat_data *plat_data,
|
||||
{
|
||||
struct rockchip_dp_device *dp = to_dp(plat_data);
|
||||
struct rockchip_drm_sub_dev *sdev = &dp->sub_dev;
|
||||
int ret;
|
||||
|
||||
if (plat_data->bridge) {
|
||||
ret = drm_bridge_attach(&dp->encoder, plat_data->bridge, bridge,
|
||||
rockchip_dp_skip_connector(bridge) ?
|
||||
DRM_BRIDGE_ATTACH_NO_CONNECTOR : 0);
|
||||
if (ret) {
|
||||
DRM_ERROR("Failed to attach bridge to drm: %d\n", ret);
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
if (!connector) {
|
||||
struct list_head *connector_list =
|
||||
|
||||
Reference in New Issue
Block a user