Skip to content

Commit

Permalink
drm/fb: revert the i915 Actually configure untiled displays from master
Browse files Browse the repository at this point in the history
This code moved in here in master, so revert it the same way.

This is the same revert as 9fa2462 ("Revert "drm/i915/fbdev:
Actually configure untiled displays"") in drm-fixes.

Signed-off-by: Dave Airlie <airlied@redhat.com>
  • Loading branch information
Dave Airlie committed Apr 24, 2019
1 parent 6ecac85 commit abbc069
Showing 1 changed file with 5 additions and 7 deletions.
12 changes: 5 additions & 7 deletions drivers/gpu/drm/drm_fb_helper.c
Original file line number Diff line number Diff line change
Expand Up @@ -2580,7 +2580,7 @@ static bool drm_fb_helper_firmware_config(struct drm_fb_helper *fb_helper,
{
struct drm_device *dev = fb_helper->dev;
unsigned int count = min(fb_helper->connector_count, BITS_PER_LONG);
unsigned long conn_configured, conn_seq;
unsigned long conn_configured, conn_seq, mask;
int i, j;
bool *save_enabled;
bool fallback = true, ret = true;
Expand All @@ -2598,9 +2598,10 @@ static bool drm_fb_helper_firmware_config(struct drm_fb_helper *fb_helper,
drm_modeset_backoff(&ctx);

memcpy(save_enabled, enabled, count);
conn_seq = GENMASK(count - 1, 0);
mask = GENMASK(count - 1, 0);
conn_configured = 0;
retry:
conn_seq = conn_configured;
for (i = 0; i < count; i++) {
struct drm_fb_helper_connector *fb_conn;
struct drm_connector *connector;
Expand All @@ -2613,8 +2614,7 @@ static bool drm_fb_helper_firmware_config(struct drm_fb_helper *fb_helper,
if (conn_configured & BIT(i))
continue;

/* First pass, only consider tiled connectors */
if (conn_seq == GENMASK(count - 1, 0) && !connector->has_tile)
if (conn_seq == 0 && !connector->has_tile)
continue;

if (connector->status == connector_status_connected)
Expand Down Expand Up @@ -2715,10 +2715,8 @@ static bool drm_fb_helper_firmware_config(struct drm_fb_helper *fb_helper,
conn_configured |= BIT(i);
}

if (conn_configured != conn_seq) { /* repeat until no more are found */
conn_seq = conn_configured;
if ((conn_configured & mask) != mask && conn_configured != conn_seq)
goto retry;
}

/*
* If the BIOS didn't enable everything it could, fall back to have the
Expand Down

0 comments on commit abbc069

Please sign in to comment.