]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/dp_mst: Register connectors via drm_connector_dynamic_register()
authorImre Deak <imre.deak@intel.com>
Wed, 11 Dec 2024 23:03:21 +0000 (01:03 +0200)
committerImre Deak <imre.deak@intel.com>
Tue, 17 Dec 2024 13:47:29 +0000 (15:47 +0200)
MST connectors should be initialized/registered by calling
drm_connector_dynamic_init()/drm_connector_dynamic_register(). The
commit adding these functions explains the issue with the current
drm_connector_init*()/drm_connector_register() interface for MST
connectors.

Based on the above adjust here the registration part and change the
initialization part in follow-up commits for each driver.

For now, drivers are allowed to keep using the drm_connector_init*()
functions, by drm_connector_dynamic_register() checking for this (see
drm_connector_add()). A commit later will change this to WARN in such
cases.

v2: Replaces references to a "patch" with "commit" in the commit log.
    (Jani)

Cc: Lyude Paul <lyude@redhat.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Cc: Leo Li <sunpeng.li@amd.com>
Cc: Wayne Lin <wayne.lin@amd.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: Karol Herbst <kherbst@redhat.com>
Cc: Danilo Krummrich <dakr@kernel.org>
Reviewed-by: Lyude Paul <lyude@redhat.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Acked-by: Wayne Lin <Wayne.Lin@amd.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241211230328.4012496-5-imre.deak@intel.com
drivers/gpu/drm/display/drm_dp_mst_topology.c

index 687c70308d82b43e429b8395ffcf6d3a8b548b20..f8cd094efa3c0bd6f75b52a0410b0910d8026a76 100644 (file)
@@ -2281,7 +2281,7 @@ drm_dp_mst_port_add_connector(struct drm_dp_mst_branch *mstb,
                port->cached_edid = drm_edid_read_ddc(port->connector,
                                                      &port->aux.ddc);
 
-       drm_connector_register(port->connector);
+       drm_connector_dynamic_register(port->connector);
        return;
 
 error: