[lkml]   [2011]   [Sep]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH 04/21] drm/i915: Only use VBT panel mode on eDP if no EDID is found
    On Fri, 30 Sep 2011 18:32:35 +0200, Daniel Vetter <> wrote:

    > Ok, this is way over my head, just checked whether the patch does what it
    > claims to - nice exercise in reading dp modeset code ;-)

    Yeah, it's purely heuristic -- the VBT contains a mode which was
    originally for the LVDS. It's unclear whether it should ever be applied
    to an eDP panel, but absent other information, it seems like we should
    at least consider it.

    Many LVDS panels don't bother to include an EDID rom, or the vendor
    didn't bother to hook up the DDC wire; presumably it's cheaper for them
    to stick more data in the VBIOS than add hardware. However, there are
    some LVDS panels with EDID roms which contain *incorrect* mode data for
    the panel (amazing, I know), and so the driver prefers to use the VBT
    data when both are present.

    eDP, on the other hand, doesn't require any additional wiring (at least)
    to connect up the DDC channel, and eDP panels are required to provide
    EDID data. So far, in my (very small) sample set, I've got one machine
    which provides accurate VBT *and* EDID data (an HP 2540p) and one
    machine which provides inaccurate VBT data but accurate EDID data (a
    MacBook air). So, I just decided to prefer the EDID data.

    One option would be to extract the current mode from the hardware when
    the driver starts and use that if present. But, that might mean that
    you'd get different modes depending on whether the machine booted with
    the lid closed or open, which seems like a bad plan.

    [unhandled content-type:application/pgp-signature]
     \ /
      Last update: 2011-09-30 20:01    [W:0.020 / U:5.540 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site