acrn-kernel/arch/arm/mach-mmp
Doug Brown 3c6dfce2c7 ARM: mmp: fix timer_read delay
[ Upstream commit e348b4014c ]

timer_read() was using an empty 100-iteration loop to wait for the
TMR_CVWR register to capture the latest timer counter value. The delay
wasn't long enough. This resulted in CPU idle time being extremely
underreported on PXA168 with CONFIG_NO_HZ_IDLE=y.

Switch to the approach used in the vendor kernel, which implements the
capture delay by reading TMR_CVWR a few times instead.

Fixes: 49cbe78637 ("[ARM] pxa: add base support for Marvell's PXA168 processor line")
Signed-off-by: Doug Brown <doug@schmorgal.com>
Link: https://lore.kernel.org/r/20221204005117.53452-3-doug@schmorgal.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-12-31 13:31:54 +01:00
..
Kconfig ARM: mmp: mark all board files for removal 2022-07-22 13:11:21 +02:00
Makefile ARM: pxa/mmp: remove traces of plat-pxa 2022-05-31 16:07:52 +02:00
addr-map.h
aspenite.c
avengers_lite.c
brownstone.c
common.c
common.h
devices.c ARM: mmp: Make some symbols static 2022-10-10 10:40:10 +02:00
devices.h ARM: mmp: rename pxa_register_device 2022-05-07 22:56:16 +02:00
flint.c
gplugd.c
irqs.h
jasper.c
mfp-mmp2.h
mfp-pxa168.h
mfp-pxa910.h
mfp.h ARM: pxa: move plat-pxa to drivers/soc/ 2022-05-07 22:56:16 +02:00
mmp-dt.c
mmp2-dt.c
mmp2.c
mmp2.h irqchip/mmp: Declare init functions in common header file 2022-07-25 09:42:24 +01:00
mmp3.c
platsmp.c
pm-mmp2.c
pm-mmp2.h
pm-pxa910.c
pm-pxa910.h
pxa168.c
pxa168.h irqchip/mmp: Declare init functions in common header file 2022-07-25 09:42:24 +01:00
pxa910.c
pxa910.h irqchip/mmp: Declare init functions in common header file 2022-07-25 09:42:24 +01:00
regs-apbc.h
regs-apmu.h
regs-icu.h
regs-timers.h
regs-usb.h
sram.c ARM: mmp: Fix failure to remove sram device 2022-02-25 16:38:34 +01:00
teton_bga.c
teton_bga.h
time.c ARM: mmp: fix timer_read delay 2022-12-31 13:31:54 +01:00
ttc_dkb.c ARM: mmp: rename pxa_register_device 2022-05-07 22:56:16 +02:00