linux/arch/arm/mach-omap2
Richard Woodruff 3fddd09e59 ARM: OMAP: DMTimer: Optimize by adding load and start
This patch optimizes the timer load and start sequence.  By combining the
load and start a needless posted wait can be removed from the system timer
execution path.

* Before patch register writes are taking up .078% @ 500MHz during idle.

 Address                 |total  |min  |max      |avr     |count|ratio%
 old\process\default_idle|7.369s |0.0us|999.902ms|14.477ms|509. |62.661%
 ld\Global\cpu_v7_do_idle|4.265s |0.0us|375.786ms|24.374ms|175. |36.270%
                (UNKNOWN)|17.503ms|0.us|531.080us|5.119us|3419. |0.148%
 r\omap_dm_timer_set_load|8.135ms|0.0us|79.887us|15.065us|540.  |0.069% <--
 \vmlinux-old\Global\_end|2.023ms|0.0us|4.000us|0.560us|3613.   |0.017%
 -old\Global\__raw_readsw|1.962ms|0.0us|108.610us|9.167us|214.  |0.016%
 old\smc91x\smc_interrupt|1.353ms|0.0us|10.212us|2.348us|576.   |0.011%
 s/namei\__link_path_walk|1.161ms|0.0us|4.310us|0.762us|  1524. |0.009%
 \omap_dm_timer_write_reg|1.085ms|0.0us|126.150us|2.153us|504.  |0.009% <--

* After patch timer functions do not show up in top listings for long captures.

Signed-off-by: Richard Woodruff <r-woodruff2@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2008-07-03 12:24:30 +03:00
..
board-2430sdp.c ARM: OMAP: Add calls to omap2_set_globals_*() 2008-05-09 10:25:02 -07:00
board-apollon.c ARM: OMAP: Add calls to omap2_set_globals_*() 2008-05-09 10:25:02 -07:00
board-generic.c ARM: OMAP: Add calls to omap2_set_globals_*() 2008-05-09 10:25:02 -07:00
board-h4.c ARM: OMAP: Add calls to omap2_set_globals_*() 2008-05-09 10:25:02 -07:00
clock24xx.c ARM: OMAP2: Clean up 24xx clock code 2008-04-14 10:29:38 -07:00
clock24xx.h ARM: OMAP2: Clean up 24xx clock code 2008-04-14 10:29:38 -07:00
clock34xx.c ARM: OMAP2: New DPLL clock framework 2008-04-14 10:29:39 -07:00
clock34xx.h ARM: OMAP: Add PARENT_CONTROLS_CLOCK flag to dpll5_m2_ck 2008-05-09 10:25:04 -07:00
clock.c ARM: OMAP: PRCM fixes to ssi clock handling 2008-05-09 10:25:04 -07:00
clock.h ARM: OMAP2: Clean up 24xx clock code 2008-04-14 10:29:38 -07:00
cm-regbits-24xx.h ARM: OMAP2: Add common register access for 24xx and 34xx 2008-04-14 10:27:25 -07:00
cm-regbits-34xx.h ARM: OMAP: Add fuctional clock enabler for iva2 2008-05-09 10:25:03 -07:00
cm.h ARM: OMAP2: Add common register access for 24xx and 34xx 2008-04-14 10:27:25 -07:00
control.c ARM: OMAP2: Add common register access for 24xx and 34xx 2008-04-14 10:27:25 -07:00
devices.c ARM: OMAP: Add minimal OMAP2430 support 2007-09-20 09:59:20 -07:00
gpmc.c ARM: OMAP: Correcting the gpmc prefetch control register address 2008-06-06 15:44:12 -07:00
id.c ARM: OMAP: Add minimal OMAP2430 support 2007-09-20 09:59:20 -07:00
io.c ARM: OMAP2: Register the L4 io bus to boot OMAP2 2008-03-06 13:28:06 +02:00
irq.c ARM: OMAP: Optimize INTC register accesses and enable autoidling 2007-09-20 09:59:19 -07:00
Kconfig ARM: OMAP: Add minimal OMAP2430 support 2007-09-20 09:59:20 -07:00
mailbox.c ARM: OMAP: Fix Unbalanced enable for IRQ in omap mailbox 2008-05-09 10:25:03 -07:00
Makefile ARM: OMAP2: Add 34xx clock code 2008-04-14 10:29:39 -07:00
Makefile.boot [ARM] 3145/1: OMAP 3a/5: Add support for omap24xx 2005-11-10 14:26:51 +00:00
memory.c ARM: OMAP2: Change 24xx to use shared clock code and new reg access 2008-04-14 10:29:38 -07:00
memory.h ARM: OMAP2: Change 24xx to use shared clock code and new reg access 2008-04-14 10:29:38 -07:00
mux.c ARM: OMAP2: Change 24xx to use new register access 2008-04-14 10:29:37 -07:00
pm.c ARM: OMAP2: Remove old 24xx PM code 2008-04-14 10:29:37 -07:00
prcm-common.h ARM: OMAP2: Add common register access for 24xx and 34xx 2008-04-14 10:27:25 -07:00
prcm.c ARM: OMAP2: Change 24xx to use new register access 2008-04-14 10:29:37 -07:00
prm-regbits-24xx.h ARM: OMAP2: Add common register access for 24xx and 34xx 2008-04-14 10:27:25 -07:00
prm-regbits-34xx.h ARM: OMAP2: Add register access for 34xx 2008-04-14 10:29:37 -07:00
prm.h ARM: OMAP: Fixed comments on global PRM register usage 2008-05-09 10:25:04 -07:00
sdrc.h ARM: OMAP2: Add common register access for 24xx and 34xx 2008-04-14 10:27:25 -07:00
serial.c ARM: OMAP: Enable serial idling and wakeup features 2007-08-22 00:42:52 -07:00
sleep.S ARM: OMAP2: Change 24xx to use new register access 2008-04-14 10:29:37 -07:00
sram-fn.S ARM: OMAP2: Change 24xx to use new register access 2008-04-14 10:29:37 -07:00
timer-gp.c ARM: OMAP: DMTimer: Optimize by adding load and start 2008-07-03 12:24:30 +03:00
usb-tusb6010.c ARM: OMAP: TUSB EVM init 2007-09-20 09:59:21 -07:00