From: Leo Li <sunpeng...@amd.com>

Implement late_register and early_unregister hooks for MST connectors.
Call drm helpers for MST connector registration, which registers the
AUX devices.

Cc: Ben Skeggs <bske...@redhat.com>
Signed-off-by: Leo Li <sunpeng...@amd.com>
---
 drivers/gpu/drm/nouveau/dispnv50/disp.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/drivers/gpu/drm/nouveau/dispnv50/disp.c 
b/drivers/gpu/drm/nouveau/dispnv50/disp.c
index 7ba373f493b2..6d0fbb6036cf 100644
--- a/drivers/gpu/drm/nouveau/dispnv50/disp.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/disp.c
@@ -1019,6 +1019,24 @@ nv50_mstc_destroy(struct drm_connector *connector)
        kfree(mstc);
 }
 
+static int
+nv50_mstc_late_register(struct drm_connector *connector)
+{
+       struct nv50_mstc *mstc = nv50_mstc(connector);
+       struct drm_dp_mst_port *port = mstc->port;
+
+       return drm_dp_mst_connector_late_register(connector, port);
+}
+
+static void
+nv50_mstc_early_unregister(struct drm_connector *connector)
+{
+       struct nv50_mstc *mstc = nv50_mstc(connector);
+       struct drm_dp_mst_port *port = mstc->port;
+
+       drm_dp_mst_connector_early_unregister(connector, port);
+}
+
 static const struct drm_connector_funcs
 nv50_mstc = {
        .reset = nouveau_conn_reset,
@@ -1029,6 +1047,8 @@ nv50_mstc = {
        .atomic_destroy_state = nouveau_conn_atomic_destroy_state,
        .atomic_set_property = nouveau_conn_atomic_set_property,
        .atomic_get_property = nouveau_conn_atomic_get_property,
+       .late_register = nv50_mstc_late_register,
+       .early_unregister = nv50_mstc_early_unregister,
 };
 
 static int
-- 
2.22.0

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to