drm/amd/display: Remove delay on disconnect patch
authorJohn Barberiz <jbarberi@amd.com>
Tue, 6 Feb 2018 17:25:17 +0000 (12:25 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 19 Feb 2018 19:20:11 +0000 (14:20 -0500)
HDMI HPD's generic solution makes the monitor
patch code unnecessary so anything related has
been removed.

Signed-off-by: John Barberiz <jbarberi@amd.com>
Reviewed-by: John Barberiz <jbarberi@amd.com>
Acked-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc_link.c
drivers/gpu/drm/amd/display/dc/dc_types.h

index 44b12f0..95955ad 100644 (file)
@@ -50,7 +50,6 @@
        dm_logger_write(dc_ctx->logger, LOG_HW_HOTPLUG, \
                __VA_ARGS__)
 
-#define DEFAULT_DELAY_DISCONNECT 100
 /*******************************************************************************
  * Private structures
  ******************************************************************************/
@@ -118,7 +117,7 @@ struct gpio *get_hpd_gpio(struct dc_bios *dcb,
  *     true on success, false otherwise
  */
 static bool program_hpd_filter(
-       const struct dc_link *link, int default_disconnect_delay)
+       const struct dc_link *link)
 {
        bool result = false;
 
@@ -136,7 +135,7 @@ static bool program_hpd_filter(
        case SIGNAL_TYPE_HDMI_TYPE_A:
                /* Program hpd filter */
                delay_on_connect_in_ms = 500;
-               delay_on_disconnect_in_ms = default_disconnect_delay;
+               delay_on_disconnect_in_ms = 100;
                break;
        case SIGNAL_TYPE_DISPLAY_PORT:
        case SIGNAL_TYPE_DISPLAY_PORT_MST:
@@ -700,13 +699,6 @@ bool dc_link_detect(struct dc_link *link, enum dc_detect_reason reason)
                        dp_hbr_verify_link_cap(link, &link->reported_link_cap);
                }
 
-               /* Add delay for certain monitors */
-               if (sink->edid_caps.panel_patch.disconnect_delay > 0
-                               && sink->sink_signal == SIGNAL_TYPE_HDMI_TYPE_A)
-                       program_hpd_filter(link, sink->edid_caps.panel_patch.disconnect_delay);
-               else
-                       program_hpd_filter(link, DEFAULT_DELAY_DISCONNECT);
-
                /* HDMI-DVI Dongle */
                if (sink->sink_signal == SIGNAL_TYPE_HDMI_TYPE_A &&
                                !sink->edid_caps.edid_hdmi)
@@ -1093,7 +1085,7 @@ static bool construct(
         * If GPIO isn't programmed correctly HPD might not rise or drain
         * fast enough, leading to bounces.
         */
-       program_hpd_filter(link, DEFAULT_DELAY_DISCONNECT);
+       program_hpd_filter(link);
 
        return true;
 device_tag_fail:
@@ -2018,7 +2010,7 @@ const struct dc_link_status *dc_link_get_status(const struct dc_link *link)
 void core_link_resume(struct dc_link *link)
 {
        if (link->connector_signal != SIGNAL_TYPE_VIRTUAL)
-               program_hpd_filter(link, DEFAULT_DELAY_DISCONNECT);
+               program_hpd_filter(link);
 }
 
 static struct fixed31_32 get_pbn_per_slot(struct dc_stream_state *stream)
index aa5b90e..8811b6f 100644 (file)
@@ -194,7 +194,6 @@ union display_content_support {
 };
 
 struct dc_panel_patch {
-       unsigned int disconnect_delay;
        unsigned int dppowerup_delay;
 };