1. 24 4月, 2009 1 次提交
    • P
      OMAP2/3 GPTIMER: allow system tick GPTIMER to be changed in board-*.c files · f248076c
      Paul Walmsley 提交于
      Add a function omap2_gp_clockevent_set_gptimer() for board-*.c files
      to use in .init_irq functions to configure the system tick GPTIMER.
      Practical choices at this point are GPTIMER1 or GPTIMER12.  Both of
      these timers are in the WKUP powerdomain, and so are unaffected by
      chip power management.  GPTIMER1 can use sys_clk as a source, for
      applications where a high-resolution timer is more important than
      power management.  GPTIMER12 has the special property that it has the
      secure 32kHz oscillator as its source clock, which may be less prone
      to glitches than the off-chip 32kHz oscillator.  But on HS devices, it
      may not be available for Linux use.
      
      It appears that most boards are fine with GPTIMER1, but BeagleBoard
      should use GPTIMER12 when using a 32KiHz timer source, due to hardware bugs
      in revisions B4 and below.  Modify board-omap3beagle.c to use GPTIMER12.
      
      This patch originally used a Kbuild config option to select the GPTIMER,
      but was changed to allow this to be specified in board-*.c files, per
      Tony's request.
      
      Kalle Vallo <kalle.valo@nokia.com> found a bug in an earlier version of
      this patch - thanks Kalle.
      
      Tested on Beagle rev B4 ES2.1, with and without CONFIG_OMAP_32K_TIMER, and
      3430SDP.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      Cc: Kalle Valo <kalle.valo@nokia.com>
      f248076c
  2. 07 8月, 2008 1 次提交
  3. 03 7月, 2008 1 次提交
    • R
      ARM: OMAP: DMTimer: Optimize by adding load and start · 3fddd09e
      Richard Woodruff 提交于
      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: NRichard Woodruff <r-woodruff2@ti.com>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      3fddd09e
  4. 04 10月, 2006 1 次提交
  5. 25 9月, 2006 1 次提交
  6. 27 6月, 2006 2 次提交
  7. 03 4月, 2006 1 次提交
  8. 08 9月, 2005 1 次提交