Skip to content

Commit

Permalink
ARM: dts: Use 32KiHz oscillator on devkit8000
Browse files Browse the repository at this point in the history
[ Upstream commit 8840f54 ]

Devkit8000 board seems to always used 32k_counter as clocksource.
Restore this behavior.

If clocksource is back to 32k_counter, timer12 is now the clockevent
source (as before) and timer2 is not longer needed here.

This commit fixes the same issue observed with commit 2388538
("ARM: dts: Fix timer regression for beagleboard revision c") when sleep
is blocked until hitting keys over serial console.

Fixes: aba1ad0 ("clocksource/drivers/timer-ti-dm: Add clockevent and clocksource support")
Fixes: e428e25 ("ARM: dts: Configure system timers for omap3")
Signed-off-by: Anthoine Bourgeois <anthoine.bourgeois@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
  • Loading branch information
Alucowie authored and gregkh committed Mar 8, 2022
1 parent b0b7081 commit 9031e76
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 18 deletions.
17 changes: 1 addition & 16 deletions arch/arm/boot/dts/omap3-devkit8000-common.dtsi
Expand Up @@ -158,11 +158,6 @@
status = "disabled";
};

/* Unusable as clocksource because of unreliable oscillator */
&counter32k {
status = "disabled";
};

/* Unusable as clockevent because if unreliable oscillator, allow to idle */
&timer1_target {
/delete-property/ti,no-reset-on-init;
Expand All @@ -172,7 +167,7 @@
};
};

/* Preferred always-on timer for clocksource */
/* Preferred timer for clockevent */
&timer12_target {
ti,no-reset-on-init;
ti,no-idle;
Expand All @@ -181,16 +176,6 @@
};
};

/* Preferred timer for clockevent */
&timer2_target {
ti,no-reset-on-init;
ti,no-idle;
timer@0 {
assigned-clocks = <&gpt2_fck>;
assigned-clock-parents = <&sys_ck>;
};
};

&twl_gpio {
ti,use-leds;
/*
Expand Down
3 changes: 1 addition & 2 deletions drivers/clocksource/timer-ti-dm-systimer.c
Expand Up @@ -241,8 +241,7 @@ static void __init dmtimer_systimer_assign_alwon(void)
bool quirk_unreliable_oscillator = false;

/* Quirk unreliable 32 KiHz oscillator with incomplete dts */
if (of_machine_is_compatible("ti,omap3-beagle-ab4") ||
of_machine_is_compatible("timll,omap3-devkit8000")) {
if (of_machine_is_compatible("ti,omap3-beagle-ab4")) {
quirk_unreliable_oscillator = true;
counter_32k = -ENODEV;
}
Expand Down

0 comments on commit 9031e76

Please sign in to comment.