1. 06 8月, 2013 4 次提交
  2. 15 7月, 2013 1 次提交
    • P
      clocksource+irqchip: delete __cpuinit usage from all related files · 8c37bb3a
      Paul Gortmaker 提交于
      The __cpuinit type of throwaway sections might have made sense
      some time ago when RAM was more constrained, but now the savings
      do not offset the cost and complications.  For example, the fix in
      commit 5e427ec2 ("x86: Fix bit corruption at CPU resume time")
      is a good example of the nasty type of bugs that can be created
      with improper use of the various __init prefixes.
      
      After a discussion on LKML[1] it was decided that cpuinit should go
      the way of devinit and be phased out.  Once all the users are gone,
      we can then finally remove the macros themselves from linux/init.h.
      
      This removes all the drivers/clocksource and drivers/irqchip uses of
      the __cpuinit macros from all C files.
      
      [1] https://lkml.org/lkml/2013/5/20/589
      
      Cc: John Stultz <john.stultz@linaro.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Acked-by: NThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      8c37bb3a
  3. 03 7月, 2013 1 次提交
    • S
      clocksource: arm_global_timer: Add ARM global timer support · c1b40e44
      Stuart Menefy 提交于
      This is a simple driver for the global timer module found in the Cortex
      A9-MP cores from revision r1p0 onwards. This should be able to perform
      the functions of the system timer and the local timer in an SMP system.
      
      The global timer has the following features:
          The global timer is a 64-bit incrementing counter with an
      auto-incrementing feature. It continues incrementing after sending
      interrupts. The global timer is memory mapped in the private memory
      region.
          The global timer is accessible to all Cortex-A9 processors in the
      cluster. Each Cortex-A9 processor has a private 64-bit comparator that
      is used to assert a private interrupt when the global timer has reached
      the comparator value. All the Cortex-A9 processors in a design use the
      banked ID, ID27, for this interrupt. ID27 is sent to the Interrupt
      Controller as a Private Peripheral Interrupt. The global timer is
      clocked by PERIPHCLK.
      Signed-off-by: NStuart Menefy <stuart.menefy@st.com>
      Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@st.com>
      CC: Arnd Bergmann <arnd@arndb.de>
      CC: Rob Herring <robherring2@gmail.com>
      CC: Linus Walleij <linus.walleij@linaro.org>
      CC: Will Deacon <will.deacon@arm.com>
      CC: Thomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NDaniel Lezcano <daniel.lezcano@linaro.org>
      c1b40e44
  4. 02 7月, 2013 1 次提交
  5. 25 6月, 2013 2 次提交
  6. 19 6月, 2013 3 次提交
  7. 13 6月, 2013 2 次提交
  8. 12 6月, 2013 4 次提交
  9. 07 6月, 2013 1 次提交
    • M
      clocksource: arch_timer: use virtual counters · 0d651e4e
      Mark Rutland 提交于
      Switching between reading the virtual or physical counters is
      problematic, as some core code wants a view of time before we're fully
      set up. Using a function pointer and switching the source after the
      first read can make time appear to go backwards, and having a check in
      the read function is an unfortunate block on what we want to be a fast
      path.
      
      Instead, this patch makes us always use the virtual counters. If we're a
      guest, or don't have hyp mode, we'll use the virtual timers, and as such
      don't care about CNTVOFF as long as it doesn't change in such a way as
      to make time appear to travel backwards. As the guest will use the
      virtual timers, a (potential) KVM host must use the physical timers
      (which can wake up the host even if they fire while a guest is
      executing), and hence a host must have CNTVOFF set to zero so as to have
      a consistent view of time between the physical timers and virtual
      counters.
      Signed-off-by: NMark Rutland <mark.rutland@arm.com>
      Acked-by: NCatalin Marinas <catalin.marinas@arm.com>
      Acked-by: NMarc Zyngier <marc.zyngier@arm.com>
      Acked-by: NSantosh Shilimkar <santosh.shilimkar@ti.com>
      Cc: Rob Herring <rob.herring@calxeda.com>
      0d651e4e
  10. 06 6月, 2013 3 次提交
  11. 01 6月, 2013 1 次提交
    • A
      ARM: nomadik: fix clocksource warning · 3c09f4da
      Arnd Bergmann 提交于
      The clocksource API has changed slightly, which causes a harmless
      warning:
      
      /git/arm-soc/drivers/clocksource/nomadik-mtu.c:259:28: warning: 'nmdk_timer_match' defined but not used [-Wunused-variable]
       static struct of_device_id nmdk_timer_match[] __initconst = {
                                  ^
      
      Fortunately, the same API change also lets us simplify the code
      while removing the warning.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      3c09f4da
  12. 29 5月, 2013 2 次提交
  13. 27 5月, 2013 3 次提交
  14. 16 5月, 2013 1 次提交
  15. 13 5月, 2013 1 次提交
  16. 29 4月, 2013 7 次提交
  17. 27 4月, 2013 2 次提交
    • S
      ARM: arch_timer: Silence debug preempt warnings · f31c2f1c
      Stephen Boyd 提交于
      Hot-plugging with CONFIG_DEBUG_PREEMPT=y on a device with arm
      architected timers causes a slew of "using smp_processor_id() in
      preemptible" warnings:
      
        BUG: using smp_processor_id() in preemptible [00000000] code: sh/111
        caller is arch_timer_cpu_notify+0x14/0xc8
      
      This happens because sometimes the cpu notifier,
      arch_timer_cpu_notify(), is called in preemptible context and
      other times in non-preemptible context but we use this_cpu_ptr()
      to retrieve the clockevent in all cases. We're only going to
      actually use the pointer in non-preemptible context though, so
      push the this_cpu_ptr() access down into the cases to force the
      checks to occur only in non-preemptible contexts.
      
      Cc: John Stultz <john.stultz@linaro.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Acked-by: NMarc Zyngier <Marc.Zyngier@arm.com>
      Signed-off-by: NStephen Boyd <sboyd@codeaurora.org>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      f31c2f1c
    • L
      clocksource: nomadik-mtu: fix up clocksource/timer · ea7113f7
      Linus Walleij 提交于
      The Nomadik clocksource driver has had a bad define making it
      impossible to use it for sched_clock() for a while. Fix this
      and also enable it for the Nomadik.
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      ea7113f7
  18. 21 4月, 2013 1 次提交
    • T
      clocksource: add samsung pwm timer driver · f1189989
      Tomasz Figa 提交于
      This adds a new clocksource driver for the PWM timer that is
      present in most Samsung SoCs, based on the existing driver in
      arch/arm/plat-samsung/samsung-time.c and many changes implemented by
      Tomasz Figa.
      
      Originally, the conversion of all Samsung machines to the new driver was
      planned for 3.10, but that work ended up being too late and too invasive
      just before the merge window.
      
      Unfortunately, other changes in the Exynos platform resulted in some
      Exynos4 setups, particularly the Universal C210 board to be broken. In
      order to fix that with minimum risk, so we now leave the existing pwm
      clocksource driver in place for all older platforms and use the new
      driver only for device tree enabled boards. This way, we can get the
      broken machines running again using DT descriptions.
      
      All clocksource changes were implemented by Tomasz, while the DT
      registration was rewritten by Arnd.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Cc: Tomasz Figa <t.figa@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Kukjin Kim <kgene.kim@samsung.com>
      Cc: Ben Dooks <ben-linux@fluff.org>
      Cc: John Stultz <john.stultz@linaro.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      f1189989