Commit d8c2f094 authored by Dmitry Baryshkov's avatar Dmitry Baryshkov

drm/msm/dp: support finding next bridge even for DP interfaces

It is possible to supply display-connector (bridge) to the DP interface,
add support for parsing it too.
Signed-off-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Tested-by: default avatarKuogee Hsieh <quic_khsieh@quicinc.com>
Reviewed-by: default avatarStephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/20220211224006.1797846-4-dmitry.baryshkov@linaro.orgSigned-off-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
parent 9aa92468
......@@ -301,17 +301,22 @@ static int dp_parser_parse(struct dp_parser *parser, int connector_type)
return rc;
/*
* Currently we support external bridges only for eDP connectors.
* External bridges are mandatory for eDP interfaces: one has to
* provide at least an eDP panel (which gets wrapped into panel-bridge).
*
* No external bridges are expected for the DisplayPort connector,
* it is physically present in a form of a DP or USB-C connector.
* For DisplayPort interfaces external bridges are optional, so
* silently ignore an error if one is not present (-ENODEV).
*/
if (connector_type == DRM_MODE_CONNECTOR_eDP) {
rc = dp_parser_find_next_bridge(parser);
if (rc) {
DRM_ERROR("DP: failed to find next bridge\n");
rc = dp_parser_find_next_bridge(parser);
if (rc == -ENODEV) {
if (connector_type == DRM_MODE_CONNECTOR_eDP) {
DRM_ERROR("eDP: next bridge is not present\n");
return rc;
}
} else if (rc) {
if (rc != -EPROBE_DEFER)
DRM_ERROR("DP: error parsing next bridge: %d\n", rc);
return rc;
}
/* Map the corresponding regulator information according to
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment