drm/amdgpu/dm: Resume short HPD IRQs before resuming MST topology
authorLyude Paul <lyude@redhat.com>
Wed, 25 Sep 2019 21:52:48 +0000 (17:52 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 3 Oct 2019 14:11:05 +0000 (09:11 -0500)
Since we're going to be reprobing the entire topology state on resume
now using sideband transactions, we need to ensure that we actually have
short HPD irqs enabled before calling drm_dp_mst_topology_mgr_resume().
So, do that.

Changes since v4:
* Fix typo in comments

Cc: Juston Li <juston.li@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Harry Wentland <hwentlan@amd.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Lyude Paul <lyude@redhat.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c

index 8f7b0fa..2c71951 100644 (file)
@@ -1239,15 +1239,15 @@ static int dm_resume(void *handle)
        /* program HPD filter */
        dc_resume(dm->dc);
 
-       /* On resume we need to  rewrite the MSTM control bits to enamble MST*/
-       s3_handle_mst(ddev, false);
-
        /*
         * early enable HPD Rx IRQ, should be done before set mode as short
         * pulse interrupts are used for MST
         */
        amdgpu_dm_irq_resume_early(adev);
 
+       /* On resume we need to  rewrite the MSTM control bits to enable MST*/
+       s3_handle_mst(ddev, false);
+
        /* Do detection*/
        list_for_each_entry(connector, &ddev->mode_config.connector_list, head) {
                aconnector = to_amdgpu_dm_connector(connector);