Skip to content

ARM: OMAP: DMTIMER fixes and clean-up

Vaibhav Hiremath linux-arm-kernel linux-omap 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest6 of 10 patches 0 repliesNew

6 of 10 patches are in this archive. The cover letter announces 10.

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/10ARM: OMAP3+: Implement timer workaround for errata i103 and i767+0 -03 replies
1/10ARM: OMAP3+: Implement timer workaround for errata i103 and i767+0 -00 replies
1/10ARM: OMAP3+: Implement timer workaround for errata i103 and i767+0 -00 replies
2/10ARM: OMAP: Fix timer posted mode support+0 -02 replies
2/10ARM: OMAP: Fix timer posted mode support+0 -00 replies
9/10ARM: OMAP: Add dmtimer interrupt disable function+0 -01 reply

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 00/10] ARM: OMAP: DMTIMER fixes and clean-up
Quoted 14 lines · Jon Hunter

This series includes several fixes for the OMAP DMTIMER driver and a few clean-ups to simplify some of the code. This series is based upon 3.6-rc4.

Tested on OMAP5912 OSK, OMAP2420 H4, OMAP3430 Beagle and OMAP4430 Panda. Testing includes ...
1. Booting kernel on above boards
2. Set date and ensuring time of day is correct after 24 hours
3. Checking the timer counter is incrementing when configuring and starting a timer
4. Checking the timer overflow interrupt when timer expires.
5. Using different clock sources to operate the timer with.
6. Running a loop test overnight that continually runs test #3 and #4 for each available timer

On the other hand I have validated this patch-series on both AM37xEVM and BeagleBone platform. I used the test code which you shared with me to validate it.

AM33XX Clock tree needs minor change here,

(quoted diff) +0 -0

b/arch/arm/mach-omap2/clock33xx_data.c
index a4006b2..daa36a5 100644

arch/arm/mach-omap2/clock33xx_data.c +0 -0
@@ -1070,6 +1070,8 @@ static struct omap_clk am33xx_clks[] = {
        CLK(NULL,       "gfx_fck_div_ck",       &gfx_fck_div_ck,

CK_AM33XX),
CLK(NULL, "sysclkout_pre_ck", &sysclkout_pre_ck,
CK_AM33XX),

        CLK(NULL,       "clkout2_ck",           &clkout2_ck,    CK_AM33XX),
+       CLK(NULL,       "timer_32k_ck",         &clkdiv32k_ick, CK_AM33XX),
+       CLK(NULL,       "timer_sys_ck",         &sys_clkin_ck,  CK_AM33XX),

};

int __init am33xx_clk_init(void)

Thanks,
Vaibhav

Quoted 20 lines

Jon Hunter (10):
ARM: OMAP3+: Implement timer workaround for errata i103 and i767
ARM: OMAP: Fix timer posted mode support
ARM: OMAP3: Correct HWMOD DMTIMER SYSC register declarations
ARM: OMAP2/3: Define HWMOD software reset status for DMTIMERs
ARM: OMAP2+: Don't use __omap_dm_timer_reset()
ARM: OMAP: Fix dmtimer reset for timer1
ARM: OMAP: Clean-up dmtimer reset code
ARM: OMAP: Clean-up timer posted mode support
ARM: OMAP: Add dmtimer interrupt disable function
ARM: OMAP: Remove unnecessary call to clk_get()

 arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c |   15 ++-
 arch/arm/mach-omap2/omap_hwmod_3xxx_data.c         |   41 ++++----
 arch/arm/mach-omap2/omap_hwmod_44xx_data.c         |    4 +
 arch/arm/mach-omap2/timer.c                        |   27 +++--
 arch/arm/plat-omap/dmtimer.c                       |  109 +++++++++++++-------
 arch/arm/plat-omap/include/plat/dmtimer.h          |   95 ++++++++++-------
 6 files changed, 184 insertions(+), 107 deletions(-)