summaryrefslogtreecommitdiff
path: root/include/drm/drm_dp_mst_helper.h
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2015-09-16 10:55:23 +0300
committerDave Airlie <airlied@redhat.com>2015-10-02 08:34:41 +0300
commitd9515c5ec1a20c77d83471e634ad9bb12deb0eac (patch)
treefc0f8cb6098aa942f4dfe6749fb8c55b34161a34 /include/drm/drm_dp_mst_helper.h
parent68d8c9fc91a0f63a2a10ccf7adf56f69125c11c1 (diff)
downloadlinux-d9515c5ec1a20c77d83471e634ad9bb12deb0eac.tar.xz
drm/dp/mst: split connector registration into two parts (v2)
In order to cache the EDID properly for tiled displays, we need to retrieve it before we register the connector with userspace, otherwise userspace can call get resources and try and get the edid before we've even cached it. This fixes some problems when hotplugging mst monitors, with X/mutter running. As mutter seems to get 0 modes for one of the monitors in the tile. v2: fix warning in radeon handle tile setting in cached path rather than get edid path. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: stable@vger.kernel.org Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'include/drm/drm_dp_mst_helper.h')
-rw-r--r--include/drm/drm_dp_mst_helper.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/drm/drm_dp_mst_helper.h b/include/drm/drm_dp_mst_helper.h
index 86d0b25ed054..0f408b002d98 100644
--- a/include/drm/drm_dp_mst_helper.h
+++ b/include/drm/drm_dp_mst_helper.h
@@ -374,6 +374,7 @@ struct drm_dp_mst_topology_mgr;
struct drm_dp_mst_topology_cbs {
/* create a connector for a port */
struct drm_connector *(*add_connector)(struct drm_dp_mst_topology_mgr *mgr, struct drm_dp_mst_port *port, const char *path);
+ void (*register_connector)(struct drm_connector *connector);
void (*destroy_connector)(struct drm_dp_mst_topology_mgr *mgr,
struct drm_connector *connector);
void (*hotplug)(struct drm_dp_mst_topology_mgr *mgr);