Merge tag 'drm-next-5.5-2019-11-01' of git://people.freedesktop.org/~agd5f/linux...
[linux-2.6-microblaze.git] / drivers / gpu / drm / amd / display / amdgpu_dm / amdgpu_dm_mst_types.c
index 779d0b6..49cf397 100644 (file)
@@ -124,21 +124,6 @@ static ssize_t dm_dp_aux_transfer(struct drm_dp_aux *aux,
        return result;
 }
 
-static enum drm_connector_status
-dm_dp_mst_detect(struct drm_connector *connector, bool force)
-{
-       struct amdgpu_dm_connector *aconnector = to_amdgpu_dm_connector(connector);
-       struct amdgpu_dm_connector *master = aconnector->mst_port;
-
-       enum drm_connector_status status =
-               drm_dp_mst_detect_port(
-                       connector,
-                       &master->mst_mgr,
-                       aconnector->port);
-
-       return status;
-}
-
 static void
 dm_dp_mst_connector_destroy(struct drm_connector *connector)
 {
@@ -176,7 +161,6 @@ amdgpu_dm_mst_connector_early_unregister(struct drm_connector *connector)
 }
 
 static const struct drm_connector_funcs dm_dp_mst_connector_funcs = {
-       .detect = dm_dp_mst_detect,
        .fill_modes = drm_helper_probe_single_connector_modes,
        .destroy = dm_dp_mst_connector_destroy,
        .reset = amdgpu_dm_connector_funcs_reset,
@@ -251,10 +235,22 @@ dm_mst_atomic_best_encoder(struct drm_connector *connector,
        return &to_amdgpu_dm_connector(connector)->mst_encoder->base;
 }
 
+static int
+dm_dp_mst_detect(struct drm_connector *connector,
+                struct drm_modeset_acquire_ctx *ctx, bool force)
+{
+       struct amdgpu_dm_connector *aconnector = to_amdgpu_dm_connector(connector);
+       struct amdgpu_dm_connector *master = aconnector->mst_port;
+
+       return drm_dp_mst_detect_port(connector, ctx, &master->mst_mgr,
+                                     aconnector->port);
+}
+
 static const struct drm_connector_helper_funcs dm_dp_mst_connector_helper_funcs = {
        .get_modes = dm_dp_mst_get_modes,
        .mode_valid = amdgpu_dm_connector_mode_valid,
        .atomic_best_encoder = dm_mst_atomic_best_encoder,
+       .detect_ctx = dm_dp_mst_detect,
 };
 
 static void amdgpu_dm_encoder_destroy(struct drm_encoder *encoder)
@@ -415,7 +411,7 @@ void amdgpu_dm_initialize_dp_connector(struct amdgpu_display_manager *dm,
 
        drm_dp_aux_register(&aconnector->dm_dp_aux.aux);
        drm_dp_cec_register_connector(&aconnector->dm_dp_aux.aux,
-                                     aconnector->base.name, dm->adev->dev);
+                                     &aconnector->base);
 
        if (aconnector->base.connector_type == DRM_MODE_CONNECTOR_eDP)
                return;