linux/arch/arm/plat-omap
Aaro Koskinen 80ea3bac3a ARM: OMAP: sched_clock() corrected
After my OMAP3 board has been running for a while, I'm seeing weird
latency traces like this:

      sh-1574    0d.h2  153us : do_timer (tick_do_update_jiffies64)
      sh-1574    0d.h2  153us : update_wall_time (do_timer)
      sh-1574    0d.h2  153us!: omap_32k_read (update_wall_time)
      sh-1574    0d.h2 1883us : update_xtime_cache (update_wall_time)
      sh-1574    0d.h2 1883us : clocksource_get_next (update_wall_time)
      sh-1574    0d.h2 1883us+: _spin_lock_irqsave (clocksource_get_next)

and after a while:

      sh-17818   0d.h3  153us : do_timer (tick_do_update_jiffies64)
      sh-17818   0d.h3  153us : update_wall_time (do_timer)
      sh-17818   0d.h3  153us!: omap_32k_read (update_wall_time)
      sh-17818   0d.h3 1915us : update_xtime_cache (update_wall_time)
      sh-17818   0d.h3 1915us+: clocksource_get_next (update_wall_time)
      sh-17818   0d.h3 1945us : _spin_lock_irqsave (clocksource_get_next)

Turns out that sched_clock() is using cyc2ns(), which returns NTP
adjusted time. The sched_clock() frequency should not be adjusted. The
patch deletes omap_32k_ticks_to_nsecs() and rewrites sched_clock()
to do the conversion using the constant multiplier.

Signed-off-by: Aaro Koskinen <Aaro.Koskinen@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2009-03-04 10:07:41 -08:00
..
include/mach ARM: OMAP: Fix compile error if pm.h is included 2009-03-04 10:07:40 -08:00
clock.c ARM: OMAP: Fix debugfs_create_*'s error checking method for arm/plat-omap 2008-11-04 13:35:07 -08:00
common.c ARM: OMAP: sched_clock() corrected 2009-03-04 10:07:41 -08:00
cpu-omap.c [ARM] Convert asm/io.h to linux/io.h 2008-09-06 12:10:45 +01:00
debug-devices.c ARM: OMAP: Switch to gpio_request/free calls 2008-12-10 17:35:30 -08:00
debug-leds.c ARM: OMAP: switch to standard gpio get/set calls 2008-12-10 17:35:25 -08:00
devices.c ARM: OMAP: Fix hsmmc init, v2 2009-01-29 08:57:16 -08:00
dma.c ARM: OMAP: DMA: Fix uninitialized channel flags 2009-01-29 08:57:12 -08:00
dmtimer.c ARM: OMAP2: skip unnecessary TLDR write during non-autoreload for gptimer 2008-12-10 17:36:34 -08:00
fb.c [ARM] Convert asm/io.h to linux/io.h 2008-09-06 12:10:45 +01:00
gpio.c ARM: OMAP: Fix gpio.c compile on 15xx with CONFIG_DEBUGFS 2009-01-15 13:09:53 +02:00
i2c.c [ARM] fix AT91, davinci, h720x, ks8695, msm, mx2, mx3, netx, omap1, omap2, pxa, s3c 2009-01-08 16:29:42 +00:00
io.c ARM: OMAP3: Add minimal omap3430 support 2008-10-09 17:51:41 +03:00
Kconfig [ARM] Arrange for platforms to select appropriate CPU support 2008-11-27 12:38:00 +00:00
mailbox.c [ARM] Convert asm/io.h to linux/io.h 2008-09-06 12:10:45 +01:00
mailbox.h ARM: OMAP: Add mailbox support for IVA 2007-05-09 10:37:10 +01:00
Makefile [ARM] omap: allow ioremap() to use our fixed IO mappings 2008-09-05 17:02:29 +01:00
mcbsp.c ARM: OMAP: Fix McBSP spin_lock deadlock 2009-01-29 08:57:12 -08:00
mux.c [ARM] Convert asm/io.h to linux/io.h 2008-09-06 12:10:45 +01:00
ocpi.c [ARM] Convert asm/io.h to linux/io.h 2008-09-06 12:10:45 +01:00
sram.c ARM: OMAP2: Use omap_rev() instead of system_rev 2008-12-10 17:36:31 -08:00
usb.c [ARM] omap: usb: thou shalt not provide empty release functions 2009-01-24 17:00:45 +00:00