Re: [PATCH] Revert "drm/amd/display: move edp sink present detection to hw init"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[AMD Official Use Only - Internal Distribution Only]


Patch is missing your signed-off-by.  Please also give some details as to the regression (blank screen, segfault, etc.) and affected platforms.

Alex



From: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> on behalf of Anson Jacob <Anson.Jacob@xxxxxxx>
Sent: Monday, February 8, 2021 2:25 PM
To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx <amd-gfx@xxxxxxxxxxxxxxxxxxxxx>
Cc: Brol, Eryk <Eryk.Brol@xxxxxxx>; Li, Sun peng (Leo) <Sunpeng.Li@xxxxxxx>; Wentland, Harry <Harry.Wentland@xxxxxxx>; Zhuo, Qingqing <Qingqing.Zhuo@xxxxxxx>; Siqueira, Rodrigo <Rodrigo.Siqueira@xxxxxxx>; Jacob, Anson <Anson.Jacob@xxxxxxx>; Pillai, Aurabindo <Aurabindo.Pillai@xxxxxxx>; Lakha, Bhawanpreet <Bhawanpreet.Lakha@xxxxxxx>; R, Bindu <Bindu.R@xxxxxxx>
Subject: [PATCH] Revert "drm/amd/display: move edp sink present detection to hw init"
 
This reverts commit de6571ecbb88643fa4bb4172e65c12795a2f3124.

Patch causes regression in resume time.
---
 drivers/gpu/drm/amd/display/dc/core/dc.c | 40 +++++++++++-------------
 drivers/gpu/drm/amd/display/dc/dc_link.h |  2 --
 2 files changed, 18 insertions(+), 24 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
index c9aede2f783d..8d5378f53243 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -205,9 +205,27 @@ static bool create_links(
                 link = link_create(&link_init_params);
 
                 if (link) {
+                       bool should_destory_link = false;
+
+                       if (link->connector_signal == SIGNAL_TYPE_EDP) {
+                               if (dc->config.edp_not_connected) {
+                                       if (!IS_DIAG_DC(dc->ctx->dce_environment))
+                                               should_destory_link = true;
+                               } else {
+                                       enum dc_connection_type type;
+                                       dc_link_detect_sink(link, &type);
+                                       if (type == dc_connection_none)
+                                               should_destory_link = true;
+                               }
+                       }
+
+                       if (dc->config.force_enum_edp || !should_destory_link) {
                                 dc->links[dc->link_count] = link;
                                 link->dc = dc;
                                 ++dc->link_count;
+                       } else {
+                               link_destroy(&link);
+                       }
                 }
         }
 
@@ -998,30 +1016,8 @@ struct dc *dc_create(const struct dc_init_data *init_params)
         return NULL;
 }
 
-static void detect_edp_presence(struct dc *dc)
-{
-       struct dc_link *edp_link = get_edp_link(dc);
-       bool edp_sink_present = true;
-
-       if (!edp_link)
-               return;
-
-       if (dc->config.edp_not_connected) {
-                       edp_sink_present = false;
-       } else {
-               enum dc_connection_type type;
-               dc_link_detect_sink(edp_link, &type);
-               if (type == dc_connection_none)
-                       edp_sink_present = false;
-       }
-
-       edp_link->edp_sink_present = edp_sink_present;
-}
-
 void dc_hardware_init(struct dc *dc)
 {
-
-       detect_edp_presence(dc);
         if (dc->ctx->dce_environment != DCE_ENV_VIRTUAL_HW)
                 dc->hwss.init_hw(dc);
 }
diff --git a/drivers/gpu/drm/amd/display/dc/dc_link.h b/drivers/gpu/drm/amd/display/dc/dc_link.h
index e189f16bc026..d5d8f0ad9233 100644
--- a/drivers/gpu/drm/amd/display/dc/dc_link.h
+++ b/drivers/gpu/drm/amd/display/dc/dc_link.h
@@ -103,8 +103,6 @@ struct dc_link {
         bool lttpr_non_transparent_mode;
         bool is_internal_display;
 
-       bool edp_sink_present;
-
         /* caps is the same as reported_link_cap. link_traing use
          * reported_link_cap. Will clean up.  TODO
          */
--
2.25.1

_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://nam11.safelinks.protection.outlook.com/?url="">
_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux