Hi Tony On 11/25/21 16:48, Tony Lindgren wrote: > Commit e428e250fde6 ("ARM: dts: Configure system timers for omap3") > caused a timer regression for beagleboard revision c where the system > clockevent stops working if omap3isp module is unloaded. > > Turns out we still have beagleboard revisions a-b4 capacitor c70 quirks > applied that limit the usable timers for no good reason. This also affects > the power management as we use the system clock instead of the 32k clock > source. > > Let's fix the issue by adding a new omap3-beagle-ab4.dts for the old timer > quirks. This allows us to remove the timer quirks for later beagleboard > revisions. We also need to update the related timer quirk check for the > correct compatible property. > > Fixes: e428e250fde6 ("ARM: dts: Configure system timers for omap3") > Cc: linux-kernel@xxxxxxxxxxxxxxx > Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx> > Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > Cc: Rob Herring <robh+dt@xxxxxxxxxx> > Reported-by: Jarkko Nikula <jarkko.nikula@xxxxxxxxxx> > Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx> > --- > .../devicetree/bindings/arm/omap/omap.txt | 3 ++ > arch/arm/boot/dts/Makefile | 1 + > arch/arm/boot/dts/omap3-beagle-ab4.dts | 47 +++++++++++++++++++ > arch/arm/boot/dts/omap3-beagle.dts | 33 ------------- > drivers/clocksource/timer-ti-dm-systimer.c | 2 +- > 5 files changed, 52 insertions(+), 34 deletions(-) > create mode 100644 arch/arm/boot/dts/omap3-beagle-ab4.dts > I must have some error in my methodology since I cannot see the issue being fixed with your patch :-( Testing at commit 6f513529296f ("Merge tag 'for-5.16-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux") alias ma='nice make -j `getconf _NPROCESSORS_ONLN` ARCH=arm CROSS_COMPILE="ccache arm-linux-gnueabihf-"' make ARCH=arm omap2plus_defconfig ma cat arch/arm/boot/dts/omap3-beagle.dtb >>arch/arm/boot/zImage ma LOADADDR=0x80008000 uImage -> copy uImage & modules, boot # rmmod omap3_isp # sleep 1 -> This is the regression. Sleep is blocked until I hit keys over serial console rm vmlinux arch/arm/boot/zImage patch -p1 </tmp/your-mail.eml ma cat arch/arm/boot/dts/omap3-beagle-ab4.dtb >>arch/arm/boot/zImage ma LOADADDR=0x80008000 uImage -> copy uImage & modules to µSD, boot # rmmod omap3_isp # sleep 1 -> is still blocked until I hit keys over serial console When I compare the dmesg this is the only difference (along with "linux version" line) before user space starts. I.e. timer configuration is the same in both. [ 0.000000] OF: fdt: Machine model: TI OMAP3 BeagleBoard -> [ 0.000000] OF: fdt: Machine model: TI OMAP3 BeagleBoard A to B4 Jarkko