drm/amd/display: add new active dongle to existent w/a
authorVitaly Prosyak <vitaly.prosyak@amd.com>
Mon, 16 Sep 2019 22:04:33 +0000 (17:04 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 11 Oct 2019 00:33:37 +0000 (19:33 -0500)
[Why & How]
Dongle 0x00E04C power down all internal circuits including
AUX communication preventing reading DPCD table.
Encoder will skip DP RX power down on disable output
to keep receiver powered all the time.

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Charlene Liu <Charlene.Liu@amd.com>
Acked-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Acked-by: Vitaly Prosyak <Vitaly.Prosyak@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
drivers/gpu/drm/amd/display/include/ddc_service_types.h

index 649ed31..aae2041 100644 (file)
@@ -2721,6 +2721,7 @@ static void dp_wa_power_up_0010FA(struct dc_link *link, uint8_t *dpcd_data,
                 * keep receiver powered all the time.*/
                case DP_BRANCH_DEVICE_ID_0010FA:
                case DP_BRANCH_DEVICE_ID_0080E1:
+               case DP_BRANCH_DEVICE_ID_00E04C:
                        link->wa_flags.dp_keep_receiver_powered = true;
                        break;
 
index 1896170..9ad49da 100644 (file)
@@ -31,6 +31,8 @@
 #define DP_BRANCH_DEVICE_ID_0022B9 0x0022B9
 #define DP_BRANCH_DEVICE_ID_00001A 0x00001A
 #define DP_BRANCH_DEVICE_ID_0080E1 0x0080e1
+#define DP_BRANCH_DEVICE_ID_90CC24 0x90CC24
+#define DP_BRANCH_DEVICE_ID_00E04C 0x00E04C
 
 enum ddc_result {
        DDC_RESULT_UNKNOWN = 0,