Patrick Georgi (pgeorgi@google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/12442
-gerrit
commit 29e0bd926ecbff4fbe217ee17c03382a6354e9a9 Author: Douglas Anderson dianders@chromium.org Date: Wed Oct 28 10:19:52 2015 -0700
edid: Don't set standard timings as supported if they're not
The set to say that a standard timing was supported was not properly in the "if" test. That meant that even when standard timings weren't supported, we thought that they were. That had the side effect of never using the detailed mode.
BRANCH=none BUG=chrome-os-partner:46998 TEST=Adafruit panel works now
Change-Id: Ide3ed6c5682840f808d854755dac58e9057e6bda Signed-off-by: Patrick Georgi pgeorgi@chromium.org Original-Commit-Id: c99d3ee8d163fc6be207c5a7df2a7aecd7af7849 Original-Change-Id: Ib67735219fd28516857d9b63f1ba156573f1bea3 Original-Signed-off-by: Douglas Anderson dianders@chromium.org Original-Reviewed-on: https://chromium-review.googlesource.com/309521 Original-(cherry picked from commit 4e4c2816e2239299bc02e3a57fb18056db62b56c) Original-Reviewed-on: https://chromium-review.googlesource.com/309552 Original-Commit-Ready: David Hendricks dhendrix@chromium.org Original-Tested-by: David Hendricks dhendrix@chromium.org Original-Reviewed-by: David Hendricks dhendrix@chromium.org Original-Reviewed-by: Julius Werner jwerner@chromium.org --- src/lib/edid.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/lib/edid.c b/src/lib/edid.c index e94720e..6663d1c 100644 --- a/src/lib/edid.c +++ b/src/lib/edid.c @@ -1272,13 +1272,13 @@ int decode_edid(unsigned char *edid, int size, struct edid *out) if (edid[0x23 + i / 8] & (1 << (7 - i % 8))) { printk(BIOS_SPEW, " %dx%d@%dHz\n", established_timings[i].x, established_timings[i].y, established_timings[i].refresh); - }
- for (j = 0; j < NUM_KNOWN_MODES; j++) { - if (known_modes[j].ha == established_timings[i].x && - known_modes[j].va == established_timings[i].y && - known_modes[j].refresh == established_timings[i].refresh) + for (j = 0; j < NUM_KNOWN_MODES; j++) { + if (known_modes[j].ha == established_timings[i].x && + known_modes[j].va == established_timings[i].y && + known_modes[j].refresh == established_timings[i].refresh) out->mode_is_supported[j] = 1; + } }
}