26 Jan, 2011

1 commit

  • setup_irq() was called before clockevents_register_device() which is
    needed by the irq handler. Bug was reproducible by restarting the
    kernel using kexec (reliable crash).

    Signed-off-by: Nikolaus Voss
    Cc: David Brownell
    Cc: Haavard Skinnemoen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Voss, Nikolaus
     

22 Apr, 2009

1 commit

  • Pass clocksource pointer to the read() callback for clocksources. This
    allows us to share the callback between multiple instances.

    [hugh@veritas.com: fix powerpc build of clocksource pass clocksource mods]
    [akpm@linux-foundation.org: cleanup]
    Signed-off-by: Magnus Damm
    Acked-by: John Stultz
    Cc: Thomas Gleixner
    Signed-off-by: Hugh Dickins
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Magnus Damm
     

13 Dec, 2008

1 commit


14 Mar, 2008

1 commit


04 Mar, 2008

1 commit

  • Clocksource and clockevent device based on the Atmel TC blocks.

    The clockevent device handles both periodic and oneshot modes, so this
    enables NO_HZ and high res timers on some platforms that previously
    couldn't use those mechanisms.

    This works on both AVR32 and AT91 chips, given relevant patches for
    tclib support (always) and clockevents (or else this will only look
    like a higher precision clocksource). It's an updated and modularized
    version of an AT91-only patch that has circulated for some time now.

    Changes relative to the original patch:
    * Update to use new tclib API
    * Replace open-coded do-while loop using goto with a real do-while loop
    * Minor irq handler optimization: Load register base address from
    dev_id instead of a global variable.
    * Aggressively turn off clocks when the clockevent isn't being used
    * Include the clockevent code on AT91RM9200 as well. The rating is
    lower than the System Timer, so the clock will usually stay off.
    * Don't assume that the number of clocks is always equal to the
    number of irqs.

    Signed-off-by: David Brownell
    Signed-off-by: Haavard Skinnemoen

    David Brownell