• Sean Paul's avatar
    drm/i915/dp: Tweak initial dpcd backlight.enabled value · 354842df
    Sean Paul authored
    In commit 79946723 ("drm/i915: Assume 100% brightness when not in
    DPCD control mode"), we fixed the brightness level when DPCD control was
    not active to max brightness. This is as good as we can guess since most
    backlights go on full when uncontrolled.
    
    However in doing so we changed the semantics of the initial
    'backlight.enabled' value. At least on Pixelbooks, they  were relying
    on the brightness level in DP_EDP_BACKLIGHT_BRIGHTNESS_MSB to be 0 on
    boot such that enabled would be false. This causes the device to be
    enabled when the brightness is set. Without this, brightness control
    doesn't work. So by changing brightness to max, we also flipped enabled
    to be true on boot.
    
    To fix this, make enabled a function of brightness and backlight control
    mechanism.
    
    Fixes: 79946723 ("drm/i915: Assume 100% brightness when not in DPCD control mode")
    Cc: Lyude Paul <lyude@redhat.com>
    Cc: Jani Nikula <jani.nikula@intel.com>
    Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
    Cc: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
    Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
    Cc: Kevin Chowski <chowski@chromium.org>>
    Signed-off-by: default avatarSean Paul <seanpaul@chromium.org>
    Reviewed-by: default avatarLyude Paul <lyude@redhat.com>
    Signed-off-by: default avatarLyude Paul <lyude@redhat.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20200918002845.32766-1-sean@poorly.run
    (cherry picked from commit 4ade8f31)
    Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
    354842df
intel_dp_aux_backlight.c 12.8 KB