• John Stultz's avatar
    drm: kirin: Add mode_valid logic to avoid mode clocks we can't generate · 71f23543
    John Stultz authored
    Currently the hikey dsi logic cannot generate accurate byte
    clocks values for all pixel clock values. Thus if a mode clock
    is selected that cannot match the calculated byte clock, the
    device will boot with a blank screen.
    
    This patch uses the new mode_valid callback (many thanks to
    Jose Abreu for upstreaming it!) to ensure we don't select
    modes we cannot generate.
    
    Also, since the ade crtc code will adjust the mode in mode_set,
    this patch also adds a mode_fixup callback which we use to make
    sure we are validating the mode clock that will eventually be
    used.
    
    Cc: Daniel Vetter <daniel.vetter@intel.com>
    Cc: Jani Nikula <jani.nikula@linux.intel.com>
    Cc: Sean Paul <seanpaul@chromium.org>
    Cc: David Airlie <airlied@linux.ie>
    Cc: Rob Clark <robdclark@gmail.com>
    Cc: Xinliang Liu <xinliang.liu@linaro.org>
    Cc: Xinliang Liu <z.liuxinliang@hisilicon.com>
    Cc: Rongrong Zou <zourongrong@gmail.com>
    Cc: Xinwei Kong <kong.kongxinwei@hisilicon.com>
    Cc: Chen Feng <puck.chen@hisilicon.com>
    Cc: Jose Abreu <Jose.Abreu@synopsys.com>
    Cc: Archit Taneja <architt@codeaurora.org>
    Cc: dri-devel@lists.freedesktop.org
    Reviewed-by: default avatarSean Paul <seanpaul@chromium.org>
    Signed-off-by: default avatarJohn Stultz <john.stultz@linaro.org>
    Reviewed-by: default avatarXinliang Liu <xinliang.liu@linaro.org>
    Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
    71f23543
kirin_drm_ade.c 27.1 KB