26 Sep, 2014

1 commit

  • The ASM below does not compile with clang and is not the way that the mcr
    command is used in other parts of the kernel.

    arch/arm/mach-vt8500/vt8500.c:72:11: error: invalid % escape in inline assembly string
    asm("mcr%? p15, 0, %0, c7, c0, 4" : : "r" (0));
    ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
    1 error generated.

    There are other forms that are supported on different ARM instruction sets but
    generally the kernel just uses mcr as it is supported in all ARM instruction
    sets.

    Signed-off-by: Behan Webster
    Reviewed-by: Mark Charlebois
    Acked-by: Will Deacon
    Acked-by: Tony Prisk
    Signed-off-by: Arnd Bergmann

    Behan Webster
     

07 Jul, 2014

1 commit


17 Jun, 2014

1 commit

  • This config exists entirely to hide the cpufreq menu from the
    kernel configuration unless a platform has selected it. Nothing
    is actually built if this config is 'Y' and it just leads to more
    patches that add a select under a platform Kconfig so that some
    other CPUfreq option can be chosen. Let's remove the option so
    that we can always enable CPUfreq drivers on ARM platforms.

    Acked-by: Viresh Kumar
    Signed-off-by: Stephen Boyd
    Signed-off-by: Arnd Bergmann

    Stephen Boyd
     

20 Feb, 2014

2 commits


08 Oct, 2013

1 commit

  • CLKDEV_LOOKUP selects HAVE_CLK and COMMON_CLK selects CLKDEV_LOOKUP. So
    all symbols that select at least two of these symbols can be simplified.

    For imx, omap2 and ux500 some rearrangements were necessary before the
    simplification.

    Acked-by: Tony Lindgren
    Acked-by: Stephen Boyd
    Acked-by: Dinh Nguyen
    Acked-by: Nicolas Ferre
    Acked-by: Pawel Moll
    Acked-by: Linus Walleij
    Signed-off-by: Uwe Kleine-König
    Signed-off-by: Olof Johansson

    Uwe Kleine-König
     

30 Sep, 2013

2 commits


10 Jul, 2013

1 commit

  • Preparing to move the parsing of reboot= to generic kernel code forces
    the change in reboot_mode handling to use the enum.

    [akpm@linux-foundation.org: fix arch/arm/mach-socfpga/socfpga.c]
    Signed-off-by: Robin Holt
    Cc: Russell King
    Cc: Russ Anderson
    Cc: Robin Holt
    Cc: H. Peter Anvin
    Cc: Guan Xuetao
    Acked-by: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robin Holt
     

01 Jun, 2013

1 commit

  • From Maxime Ripard:
    Cleanups in various machine definitions
    - Patches to remove the .init_irq definition when using irqchip_init
    - Make the ARM core code call debug_ll_io_init when no map_io callback is
    declared
    - Remove the .map_io definition in the various machines using it

    (Some of these go through the platform maintainers, these are the ones who got
    explicitly acked and not picked up by anyone else)

    Signed-off-by: Olof Johansson

    * tag 'arm-soc-cleanups-for-3.11' of git://github.com/mripard/linux:
    ARM: sunxi: Remove the .map_io function declaration
    ARM: mxs: remove the .map_io declaration
    ARM: highbank: remove the .map_io declaration
    ARM: mmu: Call debug_ll_io_init if no map_io function is specified
    ARM: vt8500: Remove init_irq declaration in machine description
    ARM: virt: Remove init_irq declaration in machine description
    ARM: vexpress: Remove init_irq declaration in machine description
    ARM: sirf: Remove init_irq declaration in machine description
    ARM: spear: Remove init_irq declaration in machine description
    ARM: nomadik: Remove init_irq declaration in machine description

    Olof Johansson
     

24 May, 2013

1 commit


21 May, 2013

1 commit

  • When I tried booting a stih415 Dual core A9 with multi_v7_defconfig, it
    failed to boot. The issues seems to be changing by enabling or disabling
    VT8550 platform. Having a quick look at dt_compat list, it seems to miss
    a NULL terminator, which means of_flat_dt_match will compat check will
    cross the boundary of dt_compat and fault at some point , which is what
    was happening in my case.

    Without this patch if we try to boot multi_v7_defconfig you might notice
    that some of the platforms might fault if they fall after vt8500 in
    machine-desc list. Other platforms which fall before vt8500 in mdesc list
    will not fault.

    Signed-off-by: Srinivas Kandagatla
    Acked-by: Tony Prisk
    Signed-off-by: Olof Johansson

    Srinivas Kandagatla
     

13 Apr, 2013

1 commit


04 Apr, 2013

1 commit

  • This patch adds support for the GPIO/pinmux controller found on the VIA
    VT8500 and Wondermedia WM8xxx-series SoCs.

    Each pin within the controller is capable of operating as a GPIO or as
    an alternate function. The pins are numbered according to their control
    bank/bit so that if new pins are added, the existing numbering is maintained.

    All currently supported SoCs are included: VT8500, WM8505, WM8650, WM8750 and
    WM8850.

    Signed-off-by: Tony Prisk
    Reviewed-by: Stephen Warren
    Acked-by: Linus Walleij

    Tony Prisk
     

22 Feb, 2013

2 commits

  • Pull ARM SoC-specific updates from Arnd Bergmann:
    "This is a larger set of new functionality for the existing SoC
    families, including:

    - vt8500 gains support for new CPU cores, notably the Cortex-A9 based
    wm8850

    - prima2 gains support for the "marco" SoC family, its SMP based
    cousin

    - tegra gains support for the new Tegra4 (Tegra114) family

    - socfpga now supports a newer version of the hardware including SMP

    - i.mx31 and bcm2835 are now using DT probing for their clocks

    - lots of updates for sh-mobile

    - OMAP updates for clocks, power management and USB

    - i.mx6q and tegra now support cpuidle

    - kirkwood now supports PCIe hot plugging

    - tegra clock support is updated

    - tegra USB PHY probing gets implemented diffently"

    * tag 'soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (148 commits)
    ARM: prima2: remove duplicate v7_invalidate_l1
    ARM: shmobile: r8a7779: Correct TMU clock support again
    ARM: prima2: fix __init section for cpu hotplug
    ARM: OMAP: Consolidate OMAP USB-HS platform data (part 3/3)
    ARM: OMAP: Consolidate OMAP USB-HS platform data (part 1/3)
    arm: socfpga: Add SMP support for actual socfpga harware
    arm: Add v7_invalidate_l1 to cache-v7.S
    arm: socfpga: Add entries to enable make dtbs socfpga
    arm: socfpga: Add new device tree source for actual socfpga HW
    ARM: tegra: sort Kconfig selects for Tegra114
    ARM: tegra: enable ARCH_REQUIRE_GPIOLIB for Tegra114
    ARM: tegra: Fix build error w/ ARCH_TEGRA_114_SOC w/o ARCH_TEGRA_3x_SOC
    ARM: tegra: Fix build error for gic update
    ARM: tegra: remove empty tegra_smp_init_cpus()
    ARM: shmobile: Register ARM architected timer
    ARM: MARCO: fix the build issue due to gic-vic-to-irqchip move
    ARM: shmobile: r8a7779: Correct TMU clock support
    ARM: mxs_defconfig: Select CONFIG_DEVTMPFS_MOUNT
    ARM: mxs: decrease mxs_clockevent_device.min_delta_ns to 2 clock cycles
    ARM: mxs: use apbx bus clock to drive the timers on timrotv2
    ...

    Linus Torvalds
     
  • Pull ARM SoC multiplatform support from Arnd Bergmann:
    "Converting more ARM platforms to multiplatform support. This time,
    OMAP gets converted, which is a major step since this is by far the
    largest platform in terms of code size. The same thing happens to the
    vt8500 platform."

    * tag 'multiplatform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    net: cwdavinci_cpdma: export symbols for cpsw
    remoteproc: omap: depend on OMAP_MBOX_FWK
    [media] davinci: do not include mach/hardware.h
    ARM: OMAP2+: Make sure files with omap initcalls include soc.h
    ARM: OMAP2+: Include soc.h to drm.c to fix compiling
    ARM: OMAP2+: Fix warning for hwspinlock omap_postcore_initcall
    ARM: multi_v7_defconfig: add ARCH_ZYNQ
    ARM: multi_v7_defconfig: remove unnecessary CONFIG_GPIOLIB
    arm: vt8500: Remove remaining mach includes
    arm: vt8500: Convert debug-macro.S to be multiplatform friendly
    arm: vt8500: Remove single platform Kconfig options
    ARM: OMAP2+: Remove now obsolete uncompress.h and debug-macro.S
    ARM: OMAP2+: Add minimal support for booting vexpress
    ARM: OMAP2+: Enable ARCH_MULTIPLATFORM support
    ARM: OMAP2+: Disable code that currently does not work with multiplaform
    ARM: OMAP2+: Add multiplatform debug_ll support
    ARM: OMAP: Fix dmaengine init for multiplatform
    ARM: OMAP: Fix i2c cmdline initcall for multiplatform
    ARM: OMAP2+: Use omap initcalls
    ARM: OMAP2+: Limit omap initcalls to omap only on multiplatform kernels

    Linus Torvalds
     

06 Feb, 2013

1 commit

  • …-2.6 into next/cleanup

    From Shawn Guo:
    The series cleans up ARCH_HAS_DECOMP_WDOG and arch_decomp_wdog which
    are unused on ARM architecure. Samsung has some code setting up wdog
    in arch_decomp_wdog(). But since CONFIG_S3C_BOOT_WATCHDOG is defined
    nowhere, it will not run. Otherwise, system can not boot at all when
    wdog is set up but no one pats it.

    * tag 'cleanup-decompwdog-3.9' of git://git.linaro.org/people/shawnguo/linux-2.6:
    ARM: samsung: remove unused arch_decomp_wdog() code
    ARM: remove unused arch_decomp_wdog()
    ARM: decompress: remove unused ARCH_HAS_DECOMP_WDOG

    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     

28 Jan, 2013

1 commit


22 Jan, 2013

1 commit

  • In drivers/gpio/Kcong, ARCH_REQUIRE_GPIOLIB selects GPIOLIB which in
    turn selects GENERIC_GPIO. So GENERIC_GPIO will be selected
    automatically for those platforms that select ARCH_REQUIRE_GPIOLIB.

    Remove the redundant 'select GENERIC_GPIO' for platforms that already
    select ARCH_REQUIRE_GPIOLIB at either mach or plat level.

    Signed-off-by: Shawn Guo
    Acked-by: Linus Walleij
    Signed-off-by: Olof Johansson

    Shawn Guo
     

16 Jan, 2013

1 commit

  • This patch converts arch-vt8500 to make use of CLKSRC_OF. Doing so
    removes the need for include/linux/vt8500_timer.h as vt8500_timer_init
    no longer needs to be visible outside vt8500_timer.c

    Signed-off-by: Tony Prisk
    Reviewed-by: Stephen Warren
    Signed-off-by: Olof Johansson

    Tony Prisk
     

14 Jan, 2013

1 commit


12 Jan, 2013

4 commits


11 Jan, 2013

1 commit

  • With ARCH_HAS_DECOMP_WDOG removed from arch/arm/boot/compressed/decompress.c,
    all the arch_decomp_wdog() definition at platform level is unneeded.
    Remmove it.

    Signed-off-by: Shawn Guo
    Acked-by: Nicolas Pitre
    Acked-by: Jason Cooper

    Shawn Guo
     

25 Dec, 2012

1 commit

  • Now that the only field in struct sys_timer is .init, delete the struct,
    and replace the machine descriptor .timer field with the initialization
    function itself.

    This will enable moving timer drivers into drivers/clocksource without
    having to place a public prototype of each struct sys_timer object into
    include/linux; the intent is to create a single of_clocksource_init()
    function that determines which timer driver to initialize by scanning
    the device dtree, much like the proposed irqchip_init() at:
    http://www.spinics.net/lists/arm-kernel/msg203686.html

    Includes mach-omap2 fixes from Igor Grinberg.

    Tested-by: Robert Jarzmik
    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
     

26 Oct, 2012

2 commits


15 Oct, 2012

2 commits


08 Oct, 2012

1 commit

  • This removes a build-time warning in uncompress.h due to incorrectly
    cast values being passed to readb/writeb.

    Removed arm/io.h and readb/writeb. Read/write directly to the serial
    port with a volatile pointer.

    Signed-off-by: Tony Prisk
    Signed-off-by: Olof Johansson

    Tony Prisk
     

07 Oct, 2012

1 commit


02 Oct, 2012

1 commit

  • Pull ARM soc multiplatform enablement from Olof Johansson:
    "This is a pretty significant branch. It's the introduction of the
    first multiplatform support on ARM, and with this (and the later
    branch) merged, it is now possible to build one kernel that contains
    support for highbank, vexpress, mvebu, socfpga, and picoxcell. More
    platforms will be convered over in the next few releases.

    Two critical last things had to be done for this to be practical and
    possible:
    * Today each platform has its own include directory under
    mach-/include/mach/*, and traditionally that is where a lot
    of driver/platform shared definitions have gone, such as platform
    data structures. They now need to move out to a common location
    instead, and this branch moves a large number of those out to
    include/linux/platform_data.
    * Each platform used to list the device trees to compile for its
    boards in mach-/Makefile.boot.

    Both of the above changes will mean that there are some merge
    conflicts to come (and some to resolve here). It's a one-time move
    and once it settles in, we should be good for quite a while. Sorry
    for the overhead."

    Fix conflicts as per Olof.

    * tag 'multiplatform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (51 commits)
    ARM: add v7 multi-platform defconfig
    ARM: msm: Move core.h contents into common.h
    ARM: highbank: call highbank_pm_init from .init_machine
    ARM: dtb: move all dtb targets to common Makefile
    ARM: spear: move platform_data definitions
    ARM: samsung: move platform_data definitions
    ARM: orion: move platform_data definitions
    ARM: vexpress: convert to multi-platform
    ARM: initial multiplatform support
    ARM: mvebu: move armada-370-xp.h in mach dir
    ARM: vexpress: remove dependency on mach/* headers
    ARM: picoxcell: remove dependency on mach/* headers
    ARM: move all dtb targets out of Makefile.boot
    ARM: picoxcell: move debug macros to include/debug
    ARM: socfpga: move debug macros to include/debug
    ARM: mvebu: move debug macros to include/debug
    ARM: vexpress: move debug macros to include/debug
    ARM: highbank: move debug macros to include/debug
    ARM: move debug macros to common location
    ARM: make mach/gpio.h headers optional
    ...

    Linus Torvalds
     

30 Sep, 2012

1 commit


22 Sep, 2012

1 commit

  • * multiplatform/platform-data:
    ARM: spear: move platform_data definitions
    ARM: samsung: move platform_data definitions
    ARM: orion: move platform_data definitions
    ARM: nomadik: move platform_data definitions
    ARM: w90x900: move platform_data definitions
    ARM: vt8500: move platform_data definitions
    ARM: tegra: move sdhci platform_data definition
    ARM: sa1100: move platform_data definitions
    ARM: pxa: move platform_data definitions
    ARM: netx: move platform_data definitions
    ARM: msm: move platform_data definitions
    ARM: imx: move platform_data definitions
    ARM: ep93xx: move platform_data definitions
    ARM: davinci: move platform_data definitions
    ARM: at91: move platform_data definitions

    Conflicts due to removed files:
    arch/arm/mach-tegra/board-harmony.c
    arch/arm/mach-tegra/board-trimslice.c

    Conflicts due to code removal:
    arch/arm/mach-tegra/board-paz00.c

    Context conflicts in:
    drivers/mmc/host/sdhci-tegra.c
    drivers/net/irda/pxaficp_ir.c

    Signed-off-by: Olof Johansson

    Olof Johansson
     

21 Sep, 2012

1 commit

  • Merged existing board files to a single dt-capable file.
    Converted irq and timer code to devicetree.
    Removed existing device files that are no longer required with
    devicetree support.
    All existing platform devices are converted to devicetree nodes
    except PWM.

    Removed restart.c and moved code into vt8500.c to remove
    duplicate PMC code.

    Signed-off-by: Tony Prisk
    Acked-by: Arnd Bergmann

    Tony Prisk
     

14 Sep, 2012

2 commits

  • Most platforms don't need mach/gpio.h and it prevents multi-platform
    kernel images. Add CONFIG_NEED_MACH_GPIO_H and make platforns select it
    if they need gpio.h. This is platforms that define __GPIOLIB_COMPLEX
    or have lots of implicit includes pulled in by mach/gpio.h.

    at91 and omap have gpio clean-up pending and can drop
    CONFIG_NEED_MACH_GPIO_H once that is in.

    Signed-off-by: Rob Herring
    Cc: Russell King
    Acked-by: Jason Cooper
    Acked-by: Linus Walleij

    Rob Herring
     
  • Platform data for device drivers should be defined in
    include/linux/platform_data/*.h, not in the architecture
    and platform specific directories.

    This moves such data out of the vt8500 include directories

    Signed-off-by: Arnd Bergmann
    Acked-by: Mark Brown
    Acked-by: Greg Kroah-Hartman
    Acked-by: Nicolas Pitre
    Acked-by: Tony Prisk
    Cc: Florian Tobias Schandinat

    Arnd Bergmann