• Wayne Lin's avatar
    drm/amd/display: adjust few initialization order in dm · 22e1dc4b
    Wayne Lin authored
    [Why]
    Observe error message "Can't retrieve aconnector in hpd_rx_irq_offload_work"
    when boot up with a mst tbt4 dock connected. After analyzing, there are few
    parts needed to be adjusted:
    
    1. hpd_rx_offload_wq[].aconnector is not initialzed before the dmub outbox
    hpd_irq handler get registered which causes the error message.
    
    2. registeration of hpd and hpd_rx_irq event for usb4 dp tunneling is not
    aligned with legacy interface sequence
    
    [How]
    Put DMUB_NOTIFICATION_HPD and DMUB_NOTIFICATION_HPD_IRQ handler
    registration into register_hpd_handlers() to align other interfaces and
    get hpd_rx_offload_wq[].aconnector initialized earlier than that.
    
    Leave DMUB_NOTIFICATION_AUX_REPLY registered as it was since we need that
    while calling dc_link_detect(). USB4 connection status will be proactively
    detected by dc_link_detect_connection_type() in amdgpu_dm_initialize_drm_device()
    
    Cc: Stable <stable@vger.kernel.org>
    Reviewed-by: default avatarAurabindo Pillai <aurabindo.pillai@amd.com>
    Acked-by: default avatarRodrigo Siqueira <rodrigo.siqueira@amd.com>
    Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
    Signed-off-by: default avatarWayne Lin <wayne.lin@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    22e1dc4b
amdgpu_dm.c 333 KB