On Sun, Mar 17, 2019 at 2:56 PM Oskari Lemmela <osk...@lemmela.net> wrote: > > Fixes spurious timeouts which have been seen during testing > SPI_SUNXI driver. The false timeouts disappear when number of > bits reduced to 10 in workaround. > > The false timeouts are caused by timer backward jumps.
Wouldn't it be best to apply the same fix as the kernel uses here [1] as a more permanent fix? [1] https://www.spinics.net/lists/arm-kernel/msg699622.html > Signed-off-by: Oskari Lemmela <osk...@lemmela.net> > --- > arch/arm/cpu/armv8/generic_timer.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm/cpu/armv8/generic_timer.c > b/arch/arm/cpu/armv8/generic_timer.c > index c1706dcec1..2e06ee4ed2 100644 > --- a/arch/arm/cpu/armv8/generic_timer.c > +++ b/arch/arm/cpu/armv8/generic_timer.c > @@ -66,7 +66,7 @@ unsigned long timer_read_counter(void) > isb(); > do { > asm volatile("mrs %0, cntpct_el0" : "=r" (cntpct)); > - } while (((cntpct + 1) & GENMASK(10, 0)) <= 1); > + } while (((cntpct + 1) & GENMASK(9, 0)) <= 1); > > return cntpct; > } > -- > 2.17.1 > > _______________________________________________ > U-Boot mailing list > U-Boot@lists.denx.de > https://lists.denx.de/listinfo/u-boot _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot