sc7180: Fix prefill requirement and correct the fetch start check
With Innolux panel timings, the fetch_start has evaluated to be more than v_total which is invalid. Add a check to accommodate the extra h_total addition in fetch_start calculation. Secondly, made the prefill line requirement same as Kernel driver. Change-Id: If7624c0b28421759fdf47dd92f23214a78058199 Signed-off-by: Vinod Polimera <vpolimer@codeaurora.org> Reviewed-on: https://review.coreboot.org/c/coreboot/+/47067 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Julius Werner <jwerner@chromium.org>
This commit is contained in:
parent
a9d225b3e8
commit
b524d2bb1f
|
@ -6,7 +6,7 @@
|
|||
#include <edid.h>
|
||||
#include <soc/display/mdssreg.h>
|
||||
|
||||
#define MDSS_MDP_MAX_PREFILL_FETCH 25
|
||||
#define MDSS_MDP_MAX_PREFILL_FETCH 24
|
||||
|
||||
static void mdss_source_pipe_config(struct edid *edid)
|
||||
{
|
||||
|
@ -91,9 +91,10 @@ static void mdss_intf_fetch_start_config(struct edid *edid)
|
|||
/*
|
||||
* MDP programmable fetch is for MDP with rev >= 1.05.
|
||||
* Programmable fetch is not needed if vertical back porch
|
||||
* plus vertical puls width is >= 25.
|
||||
* plus vertical pulse width plus extra line for the extra h_total
|
||||
* added during fetch start is >= 24.
|
||||
*/
|
||||
if ((edid->mode.vbl - edid->mode.vso) >= MDSS_MDP_MAX_PREFILL_FETCH)
|
||||
if ((edid->mode.vbl - edid->mode.vso + 1) >= MDSS_MDP_MAX_PREFILL_FETCH)
|
||||
return;
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue