24 Jun, 2013

6 commits

  • Because of inline asm usage in platsmp.c, smc instruction
    creates build failure for ARM V6+V7 build where as using instruction
    encoding for smc breaks the thumb2 build.

    So move the code snippet to separate asm file and mark
    it with 'armv7-a$(plus_sec)' to avoid any build issues.

    Signed-off-by: Santosh Shilimkar
    Signed-off-by: Arnd Bergmann

    Santosh Shilimkar
     
  • With the new default platform code, we can always boot using DT
    without requiring a board file, but we cannot build a kernel
    unless we select at least one CPU core, which breaks some
    "randconfig" builds.

    This adapts the ARCH_MULTI_V4T and ARCH_MULTI_V5 options so we
    always default to a common CPU core if no platform was enabled
    that picks something else. The default we pick for ARMv4T is
    ARM920T, while for ARMv5 we pick ARM926T.

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • This is required for building a kernel that enables only
    IMX6SL but not IMX6Q, which would get a build error when
    syscon is not available.

    Signed-off-by: Arnd Bergmann
    Acked-by: Shawn Guo

    Arnd Bergmann
     
  • Selecting this symbol causes a build warning without SMP:

    warning: (ARCH_KEYSTONE) selects ARM_ERRATA_798181 which has unmet direct dependencies (CPU_V7 && SMP)

    Signed-off-by: Arnd Bergmann
    Acked-by: Santosh Shilimkar

    Arnd Bergmann
     
  • This is required for building a kernel that enables only
    scb9328 and would not get the i.MX1 specific files
    otherwise.

    Signed-off-by: Arnd Bergmann
    Acked-by: Sascha Hauer

    Arnd Bergmann
     
  • If AM43x and SMP is selected, OMAP4 & OMAP5 deselected, build error as
    follows,

    arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
    arch/arm/mach-omap2/sleep44xx.S:131: undefined reference to `omap4_get_scu_base'
    arch/arm/mach-omap2/sleep44xx.S:132: undefined reference to `scu_power_mode'
    arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
    arch/arm/mach-omap2/sleep44xx.S:227: undefined reference to `omap4_get_scu_base'
    arch/arm/mach-omap2/sleep44xx.S:229: undefined reference to `scu_power_mode'

    Resolve it by building sleep44xx.S only for OMAP4 & OMAP5.

    Signed-off-by: Afzal Mohammed
    Signed-off-by: Arnd Bergmann

    Mohammed, Afzal
     

22 Jun, 2013

1 commit

  • From Jason Cooper:

    mvebu register map changes for v3.11 (round 2)

    This series removes the hardcoded register base address for mvebu.

    For round 2:
    - multiplatform
    - fix booting on anything other than mvebu

    Depends (none new for round 2):
    - mvebu/fixes-non-critical (up to tags/fixes-non-3.11-1)
    - mvebu/cleanup (up to tags/cleanup-3.11-3)

    * tag 'regmap-3.11-2' of git://git.infradead.org/users/jcooper/linux:
    arm: mvebu: fix coherency_late_init() for multiplatform

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

21 Jun, 2013

8 commits

  • …/kernel/git/horms/renesas into next/soc

    From Simon Horman:

    Renesas ARM based SoC boot cleanup for v3.11

    Work by Magnus Damm and others to clean up the boot of and move
    things closer to supporting multi-arch.

    As a side effect of this work it was decided to remove support for
    two boards, Bonito and AP4EVB. Those patches are included in this
    series as they depend on earlier patches in the series.

    * tag 'renesas-cleanup-boot-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
    ARM: shmobile: Remove Bonito board support
    ARM: shmobile: Remove AP4EVB board support
    ARM: shmobile: Remove mach/memory.h
    ARM: shmobile: Remove MEMORY_START/SIZE
    ARM: shmobile: Enable ARM_PATCH_PHYS_VIRT
    ARM: shmobile: Remove old SCU boot code
    ARM: shmobile: EMEV2 SMP with SCU boot fn and args
    ARM: shmobile: sh73a0 SMP with SCU boot fn and args
    ARM: shmobile: r8a7779 SMP with SCU boot fn and args
    ARM: shmobile: Add SCU boot function using argument
    ARM: shmobile: Add SMP boot function and argument
    ARM: shmobile: Rework sh7372 sleep code to use virt_to_phys()
    ARM: shmobile: Remove romImage CONFIG_MEMORY_START
    ARM: shmobile: Let romImage rely on default ATAGS
    ARM: shmobile: uImage load address rework

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     
  • …it/mmind/linux-rockchip into next/soc

    From Heiko Stuebner:

    Adds basic support for Rockchip Cortex-A9 SoCs.

    * tag 'v3.11-rockchip-basics' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
    arm: add basic support for Rockchip RK3066a boards
    arm: add debug uarts for rockchip rk29xx and rk3xxx series
    arm: Add basic clocks for Rockchip rk3066a SoCs
    clocksource: dw_apb_timer_of: use clocksource_of_init
    clocksource: dw_apb_timer_of: select DW_APB_TIMER
    clocksource: dw_apb_timer_of: add clock-handling
    clocksource: dw_apb_timer_of: enable the use the clocksource as sched clock

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     
  • This adds a generic devicetree board file and a dtsi for boards
    based on the RK3066a SoCs from Rockchip.

    Apart from the generic parts (gic, clocks, pinctrl) the only components
    currently supported are the timers, uarts and mmc ports (all DesignWare-
    based).

    Signed-off-by: Heiko Stuebner
    Acked-by: Olof Johansson

    Heiko Stuebner
     
  • Uarts on all recent Rockchip SoCs are Synopsis DesignWare 8250 types.
    Only their addresses vary very much.

    This patch adds the necessary definitions to use any of the uart ports
    for early debug purposes.

    Signed-off-by: Heiko Stuebner

    Heiko Stuebner
     
  • This adds a basic clock setup for rk3066a SoCs. Only the gates are
    set up currently, as the mux and dividers should use the upcoming
    generic devicetree bindings.

    Clocks whose rates need to be known are supplied by fixed-rate
    "dummy"-clocks that provide the correct rate. This is uncritical insofar
    that the only bootloader currently in existence for Rockchip devices
    is the propietary Rockchip one that always setups the clocks in the
    necessary way.

    Signed-off-by: Heiko Stuebner
    Reviewed-by: Mike Turquette

    Heiko Stuebner
     
  • …/kgene/linux-samsung into next/soc

    From Kukjin Kim:

    update exynos_defconfig
    - enable GPIO buttons and RTC drivers

    * tag 'samsung-defconfig-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
    ARM: exynos_defconfig: Enable GPIO buttons and RTC drivers

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     
  • …it/kgene/linux-samsung into next/soc

    From Kukjin Kim:

    cleanup and removing dead code for only support DT for exynos
    - remove board file for exynos
    - remove legacy files which are not used anymore
    - decouple ARCH_EXYNOS from PLAT_S5P

    * tag 'remove-nondt-exynos-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: (35 commits)
    ARM: EXYNOS: Remove remaining dead code after non-DT support removal
    ARM: EXYNOS: Remove legacy L2X0 initialization
    ARM: EXYNOS: Use exynos_init_io() as map_io callback
    ARM: EXYNOS: Remove custom init_irq callbacks
    ARM: EXYNOS: Remove mach/regs-usb-phy.h header
    thermal: exynos: Support both EXYNOS4X12 SoCs
    ARM: EXYNOS: Remove unused base addresses from mach/map.h header
    ARM: EXYNOS: Remove mach/irqs.h header
    ARM: EXYNOS: Select SPARSE_IRQ for Exynos
    ARM: SAMSUNG: Make legacy MFC support code depend on SAMSUNG_ATAGS
    ARM: EXYNOS: Remove mach/regs-gpio.h header
    ARM: EXYNOS: Remove mach/gpio.h
    ARM: EXYNOS: Remove setup-i2c0.c
    ARM: EXYNOS: Do not select legacy Kconfig symbols any more
    ARM: SAMSUNG: Include most of mach/ headers conditionally
    ARM: EXYNOS: Decouple ARCH_EXYNOS from PLAT_S5P
    USB: Check for ARCH_EXYNOS separately
    platform: Check for ARCH_EXYNOS separately
    ARM: SAMSUNG: Compile legacy IRQ and GPIO PM code only with ATAGS support
    ARM: EXYNOS: Provide compatibility stubs for PM code in pm-core.h header
    ...

    Conflicts:
    arch/arm/mach-exynos/Kconfig

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     
  • …/linux-samsung into next/soc

    From Kukjin Kim:

    arch/arm/mach-exynos update
    - enable XHCI on exynos5
    - enable Pinctrl on exynos4 and exynos5
    - calling scu_enable() is only available on Cortex-A9

    * tag 'exynos-arch-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
    ARM: EXYNOS: call scu_enable() only in case of cortex-A9 processor
    ARM: EXYNOS: Select PINCTRL_EXYNOS for exynos4/5 at chip level
    ARM: EXYNOS: Enable XHCI support on exynos5

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     

20 Jun, 2013

10 commits

  • Conflicts:
    arch/arm/mach-omap2/Makefile
    arch/arm/mach-omap2/io.c

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • …x/kernel/git/tmlind/linux-omap into next/soc

    From Tony Lindgren:

    Fix am43x minimal booting as I accidentally left out one
    patch from the already merged omap-for-v3.11/soc-signed branch.
    Also fixes for ti81x booting and revision check updates.

    These are based on omap-for-v3.11/soc-signed because of the
    am43x dependency to earlier patches.

    * tag 'omap-for-v3.11/soc-part2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
    ARM: OMAP3+: am33xx id: Add new am33xx specific function to check dev_feature
    ARM: OMAP: TI816X: add powerdomains for TI816x
    ARM: OMAP2: TI81XX: id: Add cpu id for TI816x ES2.0 and ES2.1
    ARM: OMAP2+: AM43x: basic dt support

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     
  • From Maxime Ripard:

    Allwinner platform additions, take 2

    Adds machine support for the Allwinner A10s SoC

    * tag 'sunxi-core-for-3.11-2' of git://github.com/mripard/linux:
    ARM: sunxi: Add Allwinner A10s machine compatible

    Depends on the sunxi/cleanup branch

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • From Maxime Ripard:

    Allwinner defconfig changes for 3.11

    * tag 'sunxi-defconfig-for-3.11' of git://github.com/mripard/linux:
    ARM: multi_v7: Enable Allwinner EMAC in multi_v7_defconfig

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • …l/git/nsekhar/linux-davinci into next/soc

    From Sekhar Nori:

    DaVinci SoC changes for v3.11

    This pull request moves DaVinci EDMA library to
    arch/arm/common so it can be used by OMAP based AM335x.
    This is a temporary step until all drivers are converted
    to use the dmaengine driver in drivers/dma/edma.c.

    Several drivers like SPI, MMC/SD have already been converted.
    Some like audio are pending.

    The other two patches in the pull request are cleanup in nature.

    * tag 'davinci-for-v3.11/soc-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
    ARM: edma: remove unused transfer controller handlers
    ARM: davinci: move private EDMA API to arm/common
    ARM: davinci: remove __init atrribute from function declaration

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     
  • As noticed by Arnaud Patard (Rtp) , commit
    865e0527d2d7 ('arm: mvebu: avoid hardcoded virtual address in
    coherency code') added a postcore_initcall() to register the bus
    notifier that the mvebu code needs to apply correct DMA operations on
    its platform devices breaks the multiplatform boot on other platforms,
    because the bus notifier registration is unconditional.

    This commit fixes that by registering the bus notifier only if we have
    the mvebu coherency unit described in the Device Tree. The conditional
    used is exactly the same in which the bus_register_notifier() call was
    originally enclosed before 865e0527d2d7 ('arm: mvebu: avoid hardcoded
    virtual address in coherency code').

    Signed-off-by: Thomas Petazzoni
    Reported-by: Arnaud Patard (Rtp)
    Acked-by: Andrew Lunn
    Signed-off-by: Jason Cooper

    Thomas Petazzoni
     
  • This avoids impossible platform combinations, as we cannot
    build a combined V5 + V6/V7 kernel.

    Signed-off-by: Arnd Bergmann
    Acked-by: Linus Walleij

    Arnd Bergmann
     
  • From Shawn Guo:

    imx soc changes for 3.11:

    * New SoCs i.MX6 Sololite and Vybrid VF610 support
    * imx5 and imx6 clock fixes and additions
    * Update clock driver to use of_clk_init() function
    * Refactor restart routine mxc_restart() to get it work for DT boot
    as well
    * Clean up mxc specific ulpi access ops
    * imx defconfig updates

    * tag 'imx-soc-3.11' of git://git.linaro.org/people/shawnguo/linux-2.6: (29 commits)
    ARM: imx_v6_v7_defconfig: Enable Vybrid VF610
    ARM: imx_v6_v7_defconfig: Enable imx-wm8962 by default
    ARM: clk-imx6qdl: Add clko1 configuration for imx6qdl-sabresd
    ARM: imx_v6_v7_defconfig: Enable PWM and backlight options
    ARM: imx: Remove mxc specific ulpi access ops
    ARM: imx: add initial support for VF610
    ARM: imx: add VF610 clock support
    ARM: imx_v6_v7_defconfig: enable parallel display
    ARM: imx: clk: No need to initialize phandle struct
    ARM: imx: irq-common: Include header to avoid sparse warning
    ARM: imx: Enable mx6 solo-lite support
    ARM: imx6: use common of_clk_init() call to initialize clocks
    ARM: imx6q: call of_clk_init() to register fixed rate clocks
    ARM: imx: imx_v6_v7_defconfig: Select CONFIG_DRM_IMX_TVE
    ARM: i.MX6: clk: add different DualLite MLB clock config
    ARM i.MX5: Add S/PDIF clocks
    ARM i.MX53: Add SATA clock
    ARM: imx6q: clk: add the eim_slow clock
    ARM: imx: remove MLB PLL from pllv3
    ARM: imx: disable pll8_mlb in mx6q_clks
    ...

    Conflicts:
    arch/arm/Kconfig.debug (simple add/add conflict)

    Includes an update to 3.10-rc6

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • …linusw/linux-stericsson into next/soc

    From Linus Walleij:

    Device Tree and Multiplatform support for U300:
    - Add devicetree support to timer, pinctrl (probe), I2C block,
    watchdog, DMA controller and clocks.
    - Piecewise add a device tree containing all peripherals.
    - Delete the ATAG boot path.
    - Delete redundant platform data and board files.
    - Convert to multiplatform.

    * tag 'u300-multiplatform' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson: (40 commits)
    ARM: u300: switch to using syscon regmap for board
    ARM: u300: Update MMC configs for u300 defconfig
    spi: pl022: use DMA by default when probing from DT
    pinctrl: get rid of all platform data for coh901
    ARM: u300: convert MMC/SD clock to device tree
    ARM: u300: move the gated system controller clocks to DT
    i2c: stu300: do not request a specific clock name
    clk: move the U300 fixed and fixed-factor to DT
    ARM: u300: remove register definition file
    ARM: u300: add syscon node
    ARM: u300 use module_spi_driver to register driver
    ARM: u300: delete remnant machine headers
    ARM: u300: convert to multiplatform
    ARM: u300: localize <mach/u300-regs.h>
    ARM: u300: delete <mach/irqs.h>
    ARM: u300: delete <mach/hardware.h>
    ARM: u300: push down syscon registers
    ARM: u300: remove deps from debug macro
    ARM: u300: move debugmacro to debug includes
    ARM: u300: delete all static board data
    ...

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     
  • …nel/git/linusw/linux-integrator into next/soc

    From Linus Walleij:

    This is a patch series that:
    - Pulls the Integrator/AP PCI bridge driver into one file
    - Adds full device tree support for it
    - Keeps ATAG support around for the time being

    * tag 'integrator-pci-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator:
    ARM: integrator: basic PCIv3 device tree support
    ARM: integrator: move static ioremapping into PCIv3 driver
    ARM: integrator: move VGA base assignment
    ARM: integrator: remap PCIv3 base dynamically
    ARM: integrator: move V3 register definitions into driver
    ARM: integrator: move PCI base address grab to probe
    ARM: integrator: grab PCI error IRQ in probe()
    ARM: integrator: convert PCIv3 bridge to platform device
    ARM: integrator: merge PCIv3 driver into one file
    ARM: pci: create pci_common_init_dev()
    Documentation/devicetree: add a small note on PCI

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     

19 Jun, 2013

15 commits