Factor out a function to queue a work for probing the topology, also
used by the next patch.

Cc: Lyude Paul <ly...@redhat.com>
Cc: dri-devel@lists.freedesktop.org
Signed-off-by: Imre Deak <imre.d...@intel.com>
---
 drivers/gpu/drm/display/drm_dp_mst_topology.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/display/drm_dp_mst_topology.c 
b/drivers/gpu/drm/display/drm_dp_mst_topology.c
index fc2ceae61db2d..b185b3b38bd2f 100644
--- a/drivers/gpu/drm/display/drm_dp_mst_topology.c
+++ b/drivers/gpu/drm/display/drm_dp_mst_topology.c
@@ -2692,6 +2692,11 @@ static void drm_dp_mst_link_probe_work(struct 
work_struct *work)
                drm_kms_helper_hotplug_event(dev);
 }
 
+static void drm_dp_mst_queue_probe_work(struct drm_dp_mst_topology_mgr *mgr)
+{
+       queue_work(system_long_wq, &mgr->work);
+}
+
 static bool drm_dp_validate_guid(struct drm_dp_mst_topology_mgr *mgr,
                                 u8 *guid)
 {
@@ -3685,7 +3690,7 @@ int drm_dp_mst_topology_mgr_set_mst(struct 
drm_dp_mst_topology_mgr *mgr, bool ms
                /* Write reset payload */
                drm_dp_dpcd_write_payload(mgr, 0, 0, 0x3f);
 
-               queue_work(system_long_wq, &mgr->work);
+               drm_dp_mst_queue_probe_work(mgr);
 
                ret = 0;
        } else {
@@ -3809,7 +3814,7 @@ int drm_dp_mst_topology_mgr_resume(struct 
drm_dp_mst_topology_mgr *mgr,
         * state of our in-memory topology back into sync with reality. So,
         * restart the probing process as if we're probing a new hub
         */
-       queue_work(system_long_wq, &mgr->work);
+       drm_dp_mst_queue_probe_work(mgr);
        mutex_unlock(&mgr->lock);
 
        if (sync) {
-- 
2.44.2

Reply via email to