• Lyude Paul's avatar
    drm/i915/dp: Perform 30ms delay after source OUI write · a44f42ba
    Lyude Paul authored
    While working on supporting the Intel HDR backlight interface, I noticed
    that there's a couple of laptops that will very rarely manage to boot up
    without detecting Intel HDR backlight support - even though it's supported
    on the system. One example of such a laptop is the Lenovo P17 1st
    generation.
    
    Following some investigation Ville Syrjälä did through the docs they have
    available to them, they discovered that there's actually supposed to be a
    30ms wait after writing the source OUI before we begin setting up the rest
    of the backlight interface.
    
    This seems to be correct, as adding this 30ms delay seems to have
    completely fixed the probing issues I was previously seeing. So - let's
    start performing a 30ms wait after writing the OUI, which we do in a manner
    similar to how we keep track of PPS delays (e.g. record the timestamp of
    the OUI write, and then wait for however many ms are left since that
    timestamp right before we interact with the backlight) in order to avoid
    waiting any longer then we need to. As well, this also avoids us performing
    this delay on systems where we don't end up using the HDR backlight
    interface.
    
    V3:
    * Move last_oui_write into intel_dp
    V2:
    * Move panel delays into intel_pps
    Signed-off-by: default avatarLyude Paul <lyude@redhat.com>
    Reviewed-by: default avatarJani Nikula <jani.nikula@intel.com>
    Fixes: 4a8d7990 ("drm/i915/dp: Enable Intel's HDR backlight interface (only SDR for now)")
    Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Cc: <stable@vger.kernel.org> # v5.12+
    Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20211130212912.212044-1-lyude@redhat.com
    (cherry picked from commit c7c90b0b)
    Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
    a44f42ba
intel_dp_aux_backlight.c 16.6 KB