04 Mar, 2013

1 commit

  • Pull new ImgTec Meta architecture from James Hogan:
    "This adds core architecture support for Imagination's Meta processor
    cores, followed by some later miscellaneous arch/metag cleanups and
    fixes which I kept separate to ease review:

    - Support for basic Meta 1 (ATP) and Meta 2 (HTP) core architecture
    - A few fixes all over, particularly for symbol prefixes
    - A few privilege protection fixes
    - Several cleanups (setup.c includes, split out a lot of
    metag_ksyms.c)
    - Fix some missing exports
    - Convert hugetlb to use vm_unmapped_area()
    - Copy device tree to non-init memory
    - Provide dma_get_sgtable()"

    * tag 'metag-v3.9-rc1-v4' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag: (61 commits)
    metag: Provide dma_get_sgtable()
    metag: prom.h: remove declaration of metag_dt_memblock_reserve()
    metag: copy devicetree to non-init memory
    metag: cleanup metag_ksyms.c includes
    metag: move mm/init.c exports out of metag_ksyms.c
    metag: move usercopy.c exports out of metag_ksyms.c
    metag: move setup.c exports out of metag_ksyms.c
    metag: move kick.c exports out of metag_ksyms.c
    metag: move traps.c exports out of metag_ksyms.c
    metag: move irq enable out of irqflags.h on SMP
    genksyms: fix metag symbol prefix on crc symbols
    metag: hugetlb: convert to vm_unmapped_area()
    metag: export clear_page and copy_page
    metag: export metag_code_cache_flush_all
    metag: protect more non-MMU memory regions
    metag: make TXPRIVEXT bits explicit
    metag: kernel/setup.c: sort includes
    perf: Enable building perf tools for Meta
    metag: add boot time LNKGET/LNKSET check
    metag: add __init to metag_cache_probe()
    ...

    Linus Torvalds
     

03 Mar, 2013

1 commit

  • Add time keeping code for metag. Meta hardware threads have 2 timers.
    The background timer (TXTIMER) is used as a free-running time base, and
    the interrupt timer (TXTIMERI) is used for the timer interrupt. Both
    counters traditionally count at approximately 1MHz.

    Signed-off-by: James Hogan
    Cc: John Stultz
    Cc: Thomas Gleixner

    James Hogan
     

12 Feb, 2013

1 commit


31 Jan, 2013

2 commits

  • The arch_timer driver supports a superset of the functionality of the
    arm_generic driver, and is not tied to a particular arch.

    This patch moves arm64 to use the arch_timer driver, gaining additional
    functionality in doing so, and removes the (now unused) arm_generic
    driver. Timer-related hooks specific to arm64 are moved into
    arch/arm64/kernel/time.c.

    Signed-off-by: Mark Rutland
    Acked-by: Catalin Marinas
    Acked-by: Marc Zyngier
    Acked-by: Santosh Shilimkar

    Mark Rutland
     
  • The core functionality of the arch_timer driver is not directly tied to
    anything under arch/arm, and can be split out.

    This patch factors out the core of the arch_timer driver, so it can be
    shared with other architectures. A couple of functions are added so
    that architecture-specific code can interact with the driver without
    needing to touch its internals.

    The ARM_ARCH_TIMER config variable is moved out to
    drivers/clocksource/Kconfig, existing uses in arch/arm are replaced with
    HAVE_ARM_ARCH_TIMER, which selects it.

    Signed-off-by: Mark Rutland
    Acked-by: Catalin Marinas
    Acked-by: Marc Zyngier

    Mark Rutland
     

14 Jan, 2013

1 commit


03 Jan, 2013

1 commit

  • It is desirable to move all clocksource drivers to drivers/clocksource,
    yet each requires its own initialization function. We'd rather not
    pollute with a header for each function. Instead, create a
    single of_clksrc_init() function which will determine which clocksource
    driver to initialize based on device tree.

    Based on a similar patch for drivers/irqchip by Thomas Petazzoni.

    Signed-off-by: Stephen Warren

    Stephen Warren
     

14 Dec, 2012

1 commit

  • Pull ARM SoC multiplatform conversion patches from Olof Johansson:
    "Here are more patches in the progression towards multiplatform, sparse
    irq conversions in particular.

    Tegra has a handful of cleanups and general groundwork, but is not
    quite there yet on full enablement.

    Platforms that are enabled through this branch are VT8500 and Zynq.
    Note that i.MX was converted in one of the earlier cleanup branches as
    well (before we started a separate topic for multiplatform). And both
    new platforms for this merge window, sunxi and bcm, were merged with
    multiplatform support enabled."

    Fix up conflicts mostly as per Olof.

    * tag 'multiplatform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (29 commits)
    ARM: zynq: Remove all unused mach headers
    ARM: zynq: add support for ARCH_MULTIPLATFORM
    ARM: zynq: make use of debug_ll_io_init()
    ARM: zynq: remove TTC early mapping
    ARM: tegra: move debug-macro.S to include/debug
    ARM: tegra: don't include iomap.h from debug-macro.S
    ARM: tegra: decouple uncompress.h and debug-macro.S
    ARM: tegra: simplify DEBUG_LL UART selection options
    ARM: tegra: select SPARSE_IRQ
    ARM: tegra: enhance timer.c to get IO address from device tree
    ARM: tegra: enhance timer.c to get IRQ info from device tree
    ARM: timer: fix checkpatch warnings
    ARM: tegra: add TWD to device tree
    ARM: tegra: define DT bindings for and instantiate RTC
    ARM: tegra: define DT bindings for and instantiate timer
    clocksource/mtu-nomadik: use apb_pclk
    clk: ux500: Register mtu apb_pclocks
    ARM: plat-nomadik: convert platforms to SPARSE_IRQ
    mfd/db8500-prcmu: use the irq_domain_add_simple()
    mfd/ab8500-core: use irq_domain_add_simple()
    ...

    Linus Torvalds
     

17 Nov, 2012

1 commit


05 Nov, 2012

1 commit

  • This moves the MTU timer driver from arch/arm/plat-nomadik
    to drivers/clocksource and moves the header file to the
    platform_data directory.

    As this moves the last file being compiled to an object out
    of arch/arm/plat-nomadik, we have to "turn off the light"
    and delete the plat-nomadik directory, because it is not
    allowed to have an empty Makefile in a plat-* directory.
    This is probably also a desired side effect of depopulating
    the arch/arm directory of drivers. Luckily we have just
    deleted all the include files prior to this so
    by moving the last one we may delete the directory.

    After this all the Ux500 and Nomadik device drivers live
    outside of the arch/arm hierarchy.

    Cc: Alessandro Rubini
    Acked-by: Arnd Bergmann
    Signed-off-by: Linus Walleij

    Linus Walleij
     

17 Sep, 2012

1 commit

  • This patch adds support for the ARM generic timers with A64 instructions
    for accessing the timer registers. It uses the physical counter as the
    clock source and the virtual counter as sched_clock.

    The timer frequency can be specified via DT or read from the CNTFRQ_EL0
    register. The physical counter is also accessible from user space
    allowing fast gettimeofday() implementation.

    Signed-off-by: Marc Zyngier
    Signed-off-by: Will Deacon
    Signed-off-by: Catalin Marinas
    Acked-by: Tony Lindgren
    Acked-by: Nicolas Pitre
    Acked-by: Olof Johansson
    Acked-by: Santosh Shilimkar
    Acked-by: Arnd Bergmann

    Marc Zyngier
     

24 Jul, 2012

1 commit

  • Pull support for three new arm SoC types from Arnd Bergmann:

    - The mvebu platform includes Marvell's Armada XP and Armada 370 chips,
    made by the mvebu business unit inside of Marvell. Since the same
    group also made the older but similar platforms we call "orion5x",
    "kirkwood", "mv78xx0" and "dove", we plan to move all of them into
    the mach-mvebu directory in the future.

    - socfpga is Altera's platform based on Cortex-A9 cores and a lot of
    FPGA space. This is similar to the Xilinx zynq platform we already
    support. The code is particularly clean, which is helped by the fact
    that the hardware doesn't do much besides the parts that are expected
    to get added in the FPGA.

    - The OMAP subarchitecture gains support for the latest generation, the
    OMAP5 based on the new Cortex-A15 core. Support is rather
    rudimentary for now, but will be extended in the future.

    * tag 'newsoc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (25 commits)
    ARM: socfpga: initial support for Altera's SOCFPGA platform
    arm: mvebu: generate DTBs for supported SoCs
    ARM: mvebu: MPIC: read number of interrupts from control register
    arm: mach-mvebu: add entry to MAINTAINERS
    arm: mach-mvebu: add compilation/configuration change
    arm: mach-mvebu: add defconfig
    arm: mach-mvebu: add documentation for new device tree bindings
    arm: mach-mvebu: add support for Armada 370 and Armada XP with DT
    arm: mach-mvebu: add source files
    arm: mach-mvebu: add header
    clocksource: time-armada-370-xp: Marvell Armada 370/XP SoC timer driver
    ARM: Kconfig update to support additional GPIOs in OMAP5
    ARM: OMAP5: Add the build support
    arm/dts: OMAP5: Add omap5 dts files
    ARM: OMAP5: board-generic: Add device tree support
    ARM: omap2+: board-generic: clean up the irq data from board file
    ARM: OMAP5: Add SMP support
    ARM: OMAP5: Add the WakeupGen IP updates
    ARM: OMAP5: l3: Add l3 error handler support for omap5
    ARM: OMAP5: gpmc: Update gpmc_init()
    ...

    Conflicts:
    Documentation/devicetree/bindings/arm/omap/omap.txt
    arch/arm/mach-omap2/Makefile
    drivers/clocksource/Kconfig
    drivers/clocksource/Makefile

    Linus Torvalds
     

12 Jul, 2012

1 commit

  • Make a common device tree glue for clocksource/dw_apb_timer.
    Move mach-picoxcell/time.c to be a generic device tree application
    of the dw_apb_timer.

    Configure mach-picoxcell to use the dw_apb_timer_of device tree
    implementation in drivers/clocksource.

    Signed-off-by: Pavel Machek
    Signed-off-by: Dinh Nguyen
    Acked-by: Jamie Iles
    Acked-by: Thomas Gleixner
    Signed-off-by: Arnd Bergmann

    Dinh Nguyen
     

10 Jul, 2012

1 commit


02 May, 2012

1 commit

  • This platform has been obsoleted and was only available inside of
    ST-Ericsson, no users of this code are left in the world. This
    deletes the core U5500 support entirely in the same manner as the
    obsoleted U8500 silicon was previously deleted.

    The cpu_is_u5500() macros that can read out the CPU ID is left
    until the next kernel cycle, this makes it possible to merge
    deletion of dependent drivers without breakage.

    This also has the upside of removing the mailbox driver which was
    our only driver that was outside the drivers/* hiearchy, now the
    machine directory only handles machines and nothing else.

    Cc: Srinidhi Kasagar
    Cc: Rabin Vincent
    Cc: Jonas Aberg
    Cc: Per Forlin
    Cc: Ulf Hansson
    Signed-off-by: Linus Walleij

    Linus Walleij
     

27 Mar, 2012

1 commit


22 Sep, 2011

1 commit


24 Jul, 2011

1 commit


01 Jul, 2011

1 commit

  • arm, mips and x86 implement i8253 based clockevents. All the same code
    copied. Create a common implementation in drivers/clocksource/i8253.c.

    About time to rename drivers/clocksource/ to something else.

    Signed-off-by: Thomas Gleixner
    Cc: Russell King
    Cc: Ralf Baechle
    Cc: John Stultz
    Link: http://lkml.kernel.org/r/20110609130621.921710458@linutronix.de

    Thomas Gleixner
     

28 Jun, 2011

1 commit

  • The APB timers are an IP block from Synopsys (DesignWare APB timers)
    and are also found in other systems including ARM SoC's. This patch
    adds functions for creating clock_event_devices and clocksources from
    APB timers but does not do the resource allocation. This is handled
    in a higher layer to allow the timers to be created from multiple
    methods such as platform_devices.

    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"
    Cc: Jacob Pan
    Signed-off-by: Jamie Iles
    Signed-off-by: John Stultz

    Jamie Iles
     

09 Jun, 2011

1 commit

  • Move them to drivers/clocksource/i8253.c and remove the
    implementations in arch/

    [ tglx: Avoid the extra file in lib - folded arch patches in. The
    export will become conditional in a later step ]

    Signed-off-by: Ralf Baechle
    Link: http://lkml.kernel.org/r/20110601180610.221426078@duck.linux-mips.net
    Cc: Russell King
    Signed-off-by: Thomas Gleixner

    Ralf Baechle
     

24 May, 2011

1 commit

  • Add a generic mmio clocksource, covering both 32-bit and 16-bit register
    access sizes, for up or down counters. This can be used to easily
    create clocksources for simple counter-based implementations.

    Cc: Alessandro Rubini
    Cc: Colin Cross
    Cc: Eric Miao
    Cc: Erik Gilling
    Acked-by: "Hans J. Koch"
    Cc: Imre Kaloz
    Cc: Krzysztof Halasa
    Cc: Kukjin Kim
    Cc: Lennert Buytenhek
    Cc: Linus Walleij
    Cc: linux-omap@vger.kernel.org
    Acked-by: Nicolas Pitre
    Cc: Olof Johansson
    Tested-by: Sascha Hauer
    Reviewed-by: Thomas Gleixner
    Tested-by: Tony Lindgren
    Reviewed-by: Viresh Kumar
    Cc: Wan ZongShun
    Signed-off-by: Russell King

    Russell King
     

14 May, 2011

1 commit


07 Mar, 2010

1 commit

  • Move the CS5535 MFGPT hrtimer kconfig option to be with the other MFGPT
    options. This makes it easier to find and also removes it from the main
    "Device Drivers" menu, where it should not have been.

    Signed-off-by: Randy Dunlap
    Acked-by: Andres Salomon
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     

16 Dec, 2009

1 commit

  • This is based on the old code in arch/x86/kernel/mfgpt_32.c, but is
    modular and not Geode-specific. There's no reason why the clock event
    device needs to be registered so early at boot; the clockevent code is
    perfectly capable of dynamic switching.

    [akpm@linux-foundation.org: add linux/irq.h include]
    Signed-off-by: Andres Salomon
    Cc: Jordan Crouse
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Cc: john stultz
    Cc: Chris Ball
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andres Salomon