From 9661f324d93d08154f4d4c6f34b12ee934586d56 Mon Sep 17 00:00:00 2001 From: "Ithamar R. Adema" Date: Fri, 7 May 2010 21:51:06 +0000 Subject: [PATCH] * Don't mark edid_detailed_timing entries with a pixel_clock <= 0 as EDID1_IS_DETAILED_TIMING. This prevents decode_edid clients to incorrectly interpret the entries as valid. This fixes booting on the Samsung NP-N135, which used to reset before being able to enter the bootloader menu. It would be interesting if tickets #4408, #5539, #5696, and #5720 could be retested. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36734 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/accelerants/common/decode_edid.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/add-ons/accelerants/common/decode_edid.c b/src/add-ons/accelerants/common/decode_edid.c index 0149dc653e..fdf45ff214 100644 --- a/src/add-ons/accelerants/common/decode_edid.c +++ b/src/add-ons/accelerants/common/decode_edid.c @@ -181,7 +181,6 @@ decode_detailed_monitor(edid1_detailed_monitor *monitor, int i, j; for (i = 0; i < EDID1_NUM_DETAILED_MONITOR_DESC; ++i, ++monitor, ++raw) { - monitor->monitor_desc_type = EDID1_IS_DETAILED_TIMING; // workaround: normally, all four bytes must be zero for detailed // description, but at least some Formac monitors violate that: @@ -225,7 +224,8 @@ decode_detailed_monitor(edid1_detailed_monitor *monitor, } break; } - } else { + } else if (raw->detailed_timing.pixel_clock > 0) { + monitor->monitor_desc_type = EDID1_IS_DETAILED_TIMING; decode_detailed_timing(&monitor->data.detailed_timing, &raw->detailed_timing); }