This reverts commit f25c7a006cd1c07254780e3406e45cee4842b933.

2p2c display configuration blows up dmesg when one connector is
disconnected, causing issues in CI.

Below are the sample errors thrown in logs:

[IGT] core_getversion: executing
[IGT] core_getversion: exiting, ret=0
Setting dangerous option reset - tainting kernel
drm:drm_atomic_helper_wait_for_dependencies] ERROR [CRTC:152:pipe B] flip_done 
timed out
drm:drm_atomic_helper_wait_for_dependencies] ERROR [CONNECTOR:299:DP-2] 
flip_done timed out
drm:drm_atomic_helper_wait_for_dependencies] ERROR [PLANE:92:plane 1B] 
flip_done timed out
[drm:drm_atomic_helper_wait_for_flip_done] ERROR [CRTC:152:pipe B] flip_done 
timed out
[drm:drm_atomic_helper_wait_for_dependencies] ERROR [CRTC:152:pipe B] flip_done 
timed out
[drm:drm_atomic_helper_wait_for_dependencies] ERROR [CONNECTOR:299:DP-2] 
flip_done timed out
[drm:drm_atomic_helper_wait_for_dependencies] ERROR [PLANE:92:plane 1B] 
flip_done timed out
[drm:drm_atomic_helper_wait_for_flip_done] ERROR [CRTC:152:pipe B] flip_done 
timed out
Console: switching to colour frame buffer device 480x135
[drm:drm_atomic_helper_wait_for_dependencies] ERROR [CRTC:152:pipe B] flip_done 
timed out
[drm:drm_atomic_helper_wait_for_dependencies] ERROR [CONNECTOR:299:DP-2] 
flip_done timed out

Reverting the change for now to unblock CI execution.

Cc: Ville Syrjälä <ville.syrj...@linux.intel.com>
Cc: Dave Airlie <airl...@redhat.com>
Cc: Jani Nikula <jani.nik...@intel.com>
Cc: Manasi Navare <manasi.d.nav...@intel.com>
Signed-off-by: Uma Shankar <uma.shan...@intel.com>
---
 drivers/gpu/drm/drm_client_modeset.c | 70 ----------------------------
 1 file changed, 70 deletions(-)

diff --git a/drivers/gpu/drm/drm_client_modeset.c 
b/drivers/gpu/drm/drm_client_modeset.c
index f2150a0bac4c..895b73f23079 100644
--- a/drivers/gpu/drm/drm_client_modeset.c
+++ b/drivers/gpu/drm/drm_client_modeset.c
@@ -114,33 +114,6 @@ drm_client_find_modeset(struct drm_client_dev *client, 
struct drm_crtc *crtc)
        return NULL;
 }
 
-static struct drm_display_mode *
-drm_connector_get_tiled_mode(struct drm_connector *connector)
-{
-       struct drm_display_mode *mode;
-
-       list_for_each_entry(mode, &connector->modes, head) {
-               if (mode->hdisplay == connector->tile_h_size &&
-                   mode->vdisplay == connector->tile_v_size)
-                       return mode;
-       }
-       return NULL;
-}
-
-static struct drm_display_mode *
-drm_connector_fallback_non_tiled_mode(struct drm_connector *connector)
-{
-       struct drm_display_mode *mode;
-
-       list_for_each_entry(mode, &connector->modes, head) {
-               if (mode->hdisplay == connector->tile_h_size &&
-                   mode->vdisplay == connector->tile_v_size)
-                       continue;
-               return mode;
-       }
-       return NULL;
-}
-
 static struct drm_display_mode *
 drm_connector_has_preferred_mode(struct drm_connector *connector, int width, 
int height)
 {
@@ -375,14 +348,8 @@ static bool drm_client_target_preferred(struct 
drm_connector **connectors,
        struct drm_connector *connector;
        u64 conn_configured = 0;
        int tile_pass = 0;
-       int num_tiled_conns = 0;
        int i;
 
-       for (i = 0; i < connector_count; i++) {
-               if (connectors[i]->has_tile)
-                       num_tiled_conns++;
-       }
-
 retry:
        for (i = 0; i < connector_count; i++) {
                connector = connectors[i];
@@ -432,28 +399,6 @@ static bool drm_client_target_preferred(struct 
drm_connector **connectors,
                        list_for_each_entry(modes[i], &connector->modes, head)
                                break;
                }
-               /*
-                * In case of tiled mode if all tiles not present fallback to
-                * first available non tiled mode.
-                * After all tiles are present, try to find the tiled mode
-                * for all and if tiled mode not present due to fbcon size
-                * limitations, use first non tiled mode only for
-                * tile 0,0 and set to no mode for all other tiles.
-                */
-               if (connector->has_tile) {
-                       if (num_tiled_conns <
-                           connector->num_h_tile * connector->num_v_tile ||
-                           (connector->tile_h_loc == 0 &&
-                            connector->tile_v_loc == 0 &&
-                            !drm_connector_get_tiled_mode(connector))) {
-                               DRM_DEBUG_KMS("Falling back to non tiled mode 
on Connector %d\n",
-                                             connector->base.id);
-                               modes[i] = 
drm_connector_fallback_non_tiled_mode(connector);
-                       } else {
-                               modes[i] = 
drm_connector_get_tiled_mode(connector);
-                       }
-               }
-
                DRM_DEBUG_KMS("found mode %s\n", modes[i] ? modes[i]->name :
                          "none");
                conn_configured |= BIT_ULL(i);
@@ -570,7 +515,6 @@ static bool drm_client_firmware_config(struct 
drm_client_dev *client,
        bool fallback = true, ret = true;
        int num_connectors_enabled = 0;
        int num_connectors_detected = 0;
-       int num_tiled_conns = 0;
        struct drm_modeset_acquire_ctx ctx;
 
        if (!drm_drv_uses_atomic_modeset(dev))
@@ -588,10 +532,6 @@ static bool drm_client_firmware_config(struct 
drm_client_dev *client,
        memcpy(save_enabled, enabled, count);
        mask = GENMASK(count - 1, 0);
        conn_configured = 0;
-       for (i = 0; i < count; i++) {
-               if (connectors[i]->has_tile)
-                       num_tiled_conns++;
-       }
 retry:
        conn_seq = conn_configured;
        for (i = 0; i < count; i++) {
@@ -691,16 +631,6 @@ static bool drm_client_firmware_config(struct 
drm_client_dev *client,
                                      connector->name);
                        modes[i] = &connector->state->crtc->mode;
                }
-               /*
-                * In case of tiled modes, if all tiles are not present
-                * then fallback to a non tiled mode.
-                */
-               if (connector->has_tile &&
-                   num_tiled_conns < connector->num_h_tile * 
connector->num_v_tile) {
-                       DRM_DEBUG_KMS("Falling back to non tiled mode on 
Connector %d\n",
-                                     connector->base.id);
-                       modes[i] = 
drm_connector_fallback_non_tiled_mode(connector);
-               }
                crtcs[i] = new_crtc;
 
                DRM_DEBUG_KMS("connector %s on [CRTC:%d:%s]: %dx%d%s\n",
-- 
2.22.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to