summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-09-22Merge branch 'kirkwood/addr_decode' of ↵Olof Johansson
git://git.infradead.org/users/jcooper/linux into late/kirkwood * 'kirkwood/addr_decode' of git://git.infradead.org/users/jcooper/linux: arm: mvebu: add address decoding controller to the DT arm: mvebu: add basic address decoding support to Armada 370/XP arm: plat-orion: make bridge_virt_base non-const to support DT use case arm: plat-orion: introduce PLAT_ORION_LEGACY hidden config option arm: plat-orion: use void __iomem pointers for addr-map functions arm: plat-orion: use void __iomem pointers for time functions arm: plat-orion: use void __iomem pointers for MPP functions arm: plat-orion: use void __iomem pointers for UART registration functions arm: mach-mvebu: use IOMEM() for base address definitions arm: mach-orion5x: use IOMEM() for base address definitions arm: mach-mv78xx0: use IOMEM() for base address definitions arm: mach-kirkwood: use IOMEM() for base address definitions arm: mach-dove: use IOMEM() for base address definitions arm: mach-orion5x: use plus instead of or for address definitions arm: mach-mv78xx0: use plus instead of or for address definitions arm: mach-kirkwood: use plus instead of or for address definitions arm: mach-dove: use plus instead of or for address definitions This branch had quite a few conflicts, in particular with the PCI static map rework from Rob Herring, and a few other context conflicts due to changes in Kconfig, etc. I fixed up conflicts in: arch/arm/Kconfig arch/arm/mach-dove/common.c arch/arm/mach-dove/include/mach/dove.h arch/arm/mach-kirkwood/common.c arch/arm/mach-kirkwood/include/mach/kirkwood.h arch/arm/mach-mv78xx0/common.c arch/arm/mach-mv78xx0/include/mach/mv78xx0.h arch/arm/mach-orion5x/common.c arch/arm/mach-orion5x/include/mach/orion5x.h Signed-off-by: Olof Johansson <olof@lixom.net>
2012-09-22Merge branch 'kirkwood/cleanup' of ↵Olof Johansson
git://git.infradead.org/users/jcooper/linux into late/kirkwood From Jason Cooper: Misc: - trim includes for board-dnskw.c * 'kirkwood/cleanup' of git://git.infradead.org/users/jcooper/linux: ARM: kirkwood: Trim excess #includes in board-dnskw.c
2012-09-22Merge branch 'kirkwood/dt' of git://git.infradead.org/users/jcooper/linux ↵Olof Johansson
into late/kirkwood From Jason Cooper: New bindings: - iconnect nand and keys - mv_cesa - gpio-fan * 'kirkwood/dt' of git://git.infradead.org/users/jcooper/linux: ARM: kirkwood: Use devicetree to define DNS-32[05] fan hwmon: Add devicetree bindings to gpio-fan Crypto: CESA: Add support for DT based instantiation. ARM: Kirkwood: Describe iconnect nand in DT. ARM: Kirkwood: Describe iconnect keys in DT.
2012-09-22Merge branch 'kirkwood/defconfig' of ↵Olof Johansson
git://git.infradead.org/users/jcooper/linux into late/kirkwood From Jason Cooper: defconfig: - update kirkwood_defconfig via 'make oldconfig' - Add all Kirkwood DT boards to the defconfig - enable SERIAL_OF_PLATFORM and ORION_WATCHDOG in kirkwood_defconfig * 'kirkwood/defconfig' of git://git.infradead.org/users/jcooper/linux: ARM: Kirkwood: add DT boards to defconfig ARM: Kirkwood: update defconfig
2012-09-22Merge branch 'kirkwood/boards' of ↵Olof Johansson
git://git.infradead.org/users/jcooper/linux into late/kirkwood * 'kirkwood/boards' of git://git.infradead.org/users/jcooper/linux: ARM: Dove: allow PCI to be disabled ARM: dove: SolidRun CuBox DT ARM: dove: add device tree descriptors ARM: dove: add device tree based machine descriptor ARM: dove: add crypto engine ARM: dove: add clock gating control ARM: dove: unify clock setup ARM: initial DTS support for km_kirkwood arm: add documentation describing Marvell families of SoC ARM: kirkwood: DT descriptor for Seagate FreeAgent Dockstar ARM: kirkwood: DT board setup for Seagate FreeAgent Dockstar ARM: Kirkwood: Iomega ix2-200 DT support Context conflicts in arch/arm/Kconfig and arch/arm/mach-dove/common.c. The new device trees added to arch/arm/mach-kirkwood/Makefile.boot are kept and dealt with in a separate changeset, since moving them out to the new Makefile in this merge commit doesn't work well. Signed-off-by: Olof Johansson <olof@lixom.net>
2012-09-22Merge branch 'next/multiplatform' into late/kirkwoodOlof Johansson
By Arnd Bergmann (15) and David Brown (1) * next/multiplatform: ARM: msm: Move core.h contents into common.h 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
2012-09-22Merge branch 'next/cleanup' into late/kirkwoodOlof Johansson
By Arnd Bergmann (21) and Wei Yongjun (1) via Olof Johansson (2) and Haojian Zhuang (1) * next/cleanup: (22 commits) ARM: mmp: using for_each_set_bit to simplify the code net: seeq: use __iomem pointers for MMIO video: da8xx-fb: use __iomem pointers for MMIO scsi: eesox: use __iomem pointers for MMIO serial: ks8695: use __iomem pointers for MMIO input: rpcmouse: use __iomem pointers for MMIO ARM: samsung: use __iomem pointers for MMIO ARM: spear13xx: use __iomem pointers for MMIO ARM: sa1100: use __iomem pointers for MMIO ARM: prima2: use __iomem pointers for MMIO ARM: nomadik: use __iomem pointers for MMIO ARM: msm: use __iomem pointers for MMIO ARM: lpc32xx: use __iomem pointers for MMIO ARM: ks8695: use __iomem pointers for MMIO ARM: ixp4xx: use __iomem pointers for MMIO ARM: iop32x: use __iomem pointers for MMIO ARM: iop13xx: use __iomem pointers for MMIO ARM: integrator: use __iomem pointers for MMIO ARM: imx: use __iomem pointers for MMIO ARM: ebsa110: use __iomem pointers for MMIO ...
2012-09-22Merge branch 'cleanup/__iomem' into next/cleanupOlof Johansson
__iomem annotation cleanup branch from Arnd. * cleanup/__iomem: (21 commits) net: seeq: use __iomem pointers for MMIO video: da8xx-fb: use __iomem pointers for MMIO scsi: eesox: use __iomem pointers for MMIO serial: ks8695: use __iomem pointers for MMIO input: rpcmouse: use __iomem pointers for MMIO ARM: samsung: use __iomem pointers for MMIO ARM: spear13xx: use __iomem pointers for MMIO ARM: sa1100: use __iomem pointers for MMIO ARM: prima2: use __iomem pointers for MMIO ARM: nomadik: use __iomem pointers for MMIO ARM: msm: use __iomem pointers for MMIO ARM: lpc32xx: use __iomem pointers for MMIO ARM: ks8695: use __iomem pointers for MMIO ARM: ixp4xx: use __iomem pointers for MMIO ARM: iop32x: use __iomem pointers for MMIO ARM: iop13xx: use __iomem pointers for MMIO ARM: integrator: use __iomem pointers for MMIO ARM: imx: use __iomem pointers for MMIO ARM: ebsa110: use __iomem pointers for MMIO ARM: at91: use __iomem pointers for MMIO ... Signed-off-by: Olof Johansson <olof@lixom.net>
2012-09-22ARM: kirkwood: Trim excess #includes in board-dnskw.cJamie Lentin
Lots of code has now moved into the devicetree, leaving a collection of useless header files. Tidy them up. This applies cleanly atop of my previous patch, "[PATCH V2 2/2] ARM: kirkwood: Use devicetree to define DNS-32[05] fan", which also removes gpio-fan.h Signed-off-by: Jamie Lentin <jm@lentin.co.uk> Acked-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-22ARM: kirkwood: Use devicetree to define DNS-32[05] fanJamie Lentin
Remove more board-specific code by using devicetree to define the fan attached to both boards. Signed-off-by: Jamie Lentin <jm@lentin.co.uk> Acked-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-22hwmon: Add devicetree bindings to gpio-fanJamie Lentin
Allow a gpio-fan to be defined in devicetree, see binding documentation for details. Signed-off-by: Jamie Lentin <jm@lentin.co.uk> Acked-by: Andrew Lunn <andrew@lunn.ch> Acked-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-22Crypto: CESA: Add support for DT based instantiation.Andrew Lunn
Based on work by Michael Walle and Jason Cooper. Added support for getting the interrupt number and address of SRAM from DT. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net> Conflicts: arch/arm/mach-kirkwood/board-dt.c
2012-09-22ARM: Kirkwood: Describe iconnect nand in DT.Arnaud Patard (Rtp)
Define the nand and its partitions in DT and remove them from cmdline Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-22ARM: Kirkwood: Describe iconnect keys in DT.Arnaud Patard (Rtp)
Define the 2 keys found on iconnect in DT. It's also changing the keycodes/ switches to use better ones. Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-22Merge branch 'multiplatform/platform-data' into next/multiplatformOlof Johansson
* 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@lixom.net>
2012-09-22ARM: msm: Move core.h contents into common.hDavid Brown
No real need to have a separate core.h from the common.h file. Fold these two prototypes into the common header file. Cc: Arnd Bergmann <arnd@arndb.de> Signed-off-by: David Brown <davidb@codeaurora.org> Signed-off-by: Olof Johansson <olof@lixom.net>
2012-09-22Merge branch 'multiplatform/smp_ops' into next/multiplatformOlof Johansson
* multiplatform/smp_ops: ARM: consolidate pen_release instead of having per platform definitions ARM: smp: Make SMP operations mandatory ARM: SoC: convert spear13xx to SMP operations ARM: SoC: convert imx6q to SMP operations ARM: SoC: convert highbank to SMP operations ARM: SoC: convert shmobile SMP to SMP operations ARM: SoC: convert ux500 to SMP operations ARM: SoC: convert MSM to SMP operations ARM: SoC: convert Exynos4 to SMP operations ARM: SoC: convert Tegra to SMP operations ARM: SoC: convert OMAP4 to SMP operations ARM: SoC: convert VExpress/RealView to SMP operations ARM: SoC: add per-platform SMP operations Conflicts due to file moves or removals in: arch/arm/mach-msm/board-msm8960.c arch/arm/mach-msm/board-msm8x60.c arch/arm/mach-tegra/board-harmony.c arch/arm/mach-tegra/board-trimslice.c Conflicts due to board file cleanup: arch/arm/mach-tegra/board-paz00.c Conflicts due to cpu hotplug addition: arch/arm/mach-tegra/hotplug.c Signed-off-by: Olof Johansson <olof@lixom.net>
2012-09-21Merge branch 'board' of git://github.com/hzhuang1/linux into next/cleanupOlof Johansson
* 'board' of git://github.com/hzhuang1/linux: ARM: mmp: using for_each_set_bit to simplify the code
2012-09-21ARM: Kirkwood: add DT boards to defconfigJason Cooper
Also, enable SERIAL_OF_PLATFORM and ORION_WATCHDOG Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: Kirkwood: update defconfigJason Cooper
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mvebu: add address decoding controller to the DTThomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mvebu: add basic address decoding support to Armada 370/XPThomas Petazzoni
This commit adds basic support for address decoding configuration for the Armada 370 and Armada XP SoCs, re-using the infrastructure provided in plat-orion. For now, only a BootROM window is configured on Armada XP, which is needed to get the non-boot CPUs started and is therefore a requirement for SMP support. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: plat-orion: make bridge_virt_base non-const to support DT use caseThomas Petazzoni
For the Armada 370 and XP SoCs where the DT is used, we need to fill at runtime the bridge_virt_base field on the orion_addr_map_cfg. Therefore, remove the 'const' qualifier on this field. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: plat-orion: introduce PLAT_ORION_LEGACY hidden config optionThomas Petazzoni
Until now, the PLAT_ORION configuration option was common to all the Marvell EBU SoCs, and selecting this option had the effect of enabling the MPP code, GPIO code, address decoding and PCIe code from plat-orion, as well as providing access to driver-specific header files from plat-orion/include. However, the Armada 370 and XP SoCs will not use the MPP and GPIO code (instead some proper pinctrl and gpio drivers are in preparation), and generally, we want to move away from plat-orion and instead have everything in mach-mvebu. That said, in the mean time, we want to leverage the driver-specific headers as well as the address decoding code, so we introduce PLAT_ORION_LEGACY. The older Marvell SoCs need to select PLAT_ORION_LEGACY, while the newer Marvell SoCs need to select PLAT_ORION. Of course, when PLAT_ORION_LEGACY is selected, it automatically selects PLAT_ORION. Then, with just PLAT_ORION, you have the address decoding code plus the driver-specific headers. If you add PLAT_ORION_LEGACY to this, you gain the old MPP, GPIO and PCIe code. Again, this is only a temporary solution until we make all Marvell EBU platforms converge into the mach-mvebu directory. This solution avoids duplicating the existing address decoding code into mach-mvebu. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: plat-orion: use void __iomem pointers for addr-map functionsThomas Petazzoni
The functions for address mapping management now take void __iomem pointers, so we remove the temporary "unsigned long" casts from the mach-*/common.c files. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: plat-orion: use void __iomem pointers for time functionsThomas Petazzoni
The functions for time management now take void __iomem pointers, so we remove the temporary "unsigned long" casts from the mach-*/common.c files. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: plat-orion: use void __iomem pointers for MPP functionsThomas Petazzoni
The registration function for MPP now takes void __iomem pointers, so we remove the temporary "unsigned long" casts from the mach-*/mpp.c files. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: plat-orion: use void __iomem pointers for UART registration functionsThomas Petazzoni
The registration functions for UARTs now take void __iomem pointers, so we remove the temporary "unsigned long" casts from the mach-*/common.c files. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mach-mvebu: use IOMEM() for base address definitionsThomas Petazzoni
We now define all virtual base address constants using IOMEM() so that those are naturally typed as void __iomem pointers, and we do the necessary adjustements in the mach-mvebu code. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mach-orion5x: use IOMEM() for base address definitionsThomas Petazzoni
We now define all virtual base address constants using IOMEM() so that those are naturally typed as void __iomem pointers, and we do the necessary adjustements in the mach-orion5x code. Note that we introduce a few temporary additional "unsigned long" casts when calling into plat-orion functions. Those are removed by followup patches converting plat-orion functions to void __iomem pointers as well. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mach-mv78xx0: use IOMEM() for base address definitionsThomas Petazzoni
We now define all virtual base address constants using IOMEM() so that those are naturally typed as void __iomem pointers, and we do the necessary adjustements in the mach-mv78xx0 code. Note that we introduce a few temporary additional "unsigned long" casts when calling into plat-orion functions. Those are removed by followup patches converting plat-orion functions to void __iomem pointers as well. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mach-kirkwood: use IOMEM() for base address definitionsThomas Petazzoni
We now define all virtual base address constants using IOMEM() so that those are naturally typed as void __iomem pointers, and we do the necessary adjustements in the mach-kirkwood code. Note that we introduce a few temporary additional "unsigned long" casts when calling into plat-orion functions. Those are removed by followup patches converting plat-orion functions to void __iomem pointers as well. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mach-dove: use IOMEM() for base address definitionsThomas Petazzoni
We now define all virtual base address constants using IOMEM() so that those are naturally typed as void __iomem pointers, and we do the necessary adjustements in the mach-dove code. Note that we introduce a few temporary additional "unsigned long" casts when calling into plat-orion functions. Those are removed by followup patches converting plat-orion functions to void __iomem pointers as well. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mach-orion5x: use plus instead of or for address definitionsThomas Petazzoni
Since we are going to use IOMEM() to define many base virtual addresses, we can no longer use binary or to define the individual register addresses ("binary or" arithmetic on pointers is not allowed). Instead, use the more conventional plus operator to do so. The binary or operators were actually not useful because the low-order bits of the base address were always zero, so the usage of the binary or operators was effectively identical to a plus operator. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mach-mv78xx0: use plus instead of or for address definitionsThomas Petazzoni
Since we are going to use IOMEM() to define many base virtual addresses, we can no longer use binary or to define the individual register addresses ("binary or" arithmetic on pointers is not allowed). Instead, use the more conventional plus operator to do so. The binary or operators were actually not useful because the low-order bits of the base address were always zero, so the usage of the binary or operators was effectively identical to a plus operator. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mach-kirkwood: use plus instead of or for address definitionsThomas Petazzoni
Since we are going to use IOMEM() to define many base virtual addresses, we can no longer use binary or to define the individual register addresses ("binary or" arithmetic on pointers is not allowed). Instead, use the more conventional plus operator to do so. The binary or operators were actually not useful because the low-order bits of the base address were always zero, so the usage of the binary or operators was effectively identical to a plus operator. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: mach-dove: use plus instead of or for address definitionsThomas Petazzoni
Since we are going to use IOMEM() to define many base virtual addresses, we can no longer use binary or to define the individual register addresses ("binary or" arithmetic on pointers is not allowed). Instead, use the more conventional plus operator to do so. The binary or operators were actually not useful because the low-order bits of the base address were always zero, so the usage of the binary or operators was effectively identical to a plus operator. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: Dove: allow PCI to be disabledRussell King
Allow PCI support for Dove to be disabled. Some platforms do not have anything connected to the PCIe ports, so requiring PCI support to be built into the kernel just wastes space, and presents a lot more config options than are necessary. However, select USB_ARCH_HAS_EHCI so that we can still have EHCI support. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: dove: SolidRun CuBox DTSebastian Hesselbarth
This patch adds basic support for the SolidRun CuBox to DT based mach-dove. There are still some issues related to ongoing orion/mvebu development, e.g. gpio-led will not work as there is no DT pinctrl for dove yet and we don't have board specific setup code. Nevertheless, the DT description is already introduced here. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: dove: add device tree descriptorsSebastian Hesselbarth
This patch adds device tree decriptors for dove SoC and currently supported boards. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: dove: add device tree based machine descriptorSebastian Hesselbarth
This adds a generic DT_MACHINE for mach-dove. As with other orion based SoCs there still is some glue code required to make all internal devices work, i.e. auxdata is provided to pass clocks to corresponding device drivers. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: dove: add crypto engineSebastian Hesselbarth
This patch adds a dove specific setup function for the Marvell CESA crypto engine available on orion based SoCs. Dove setup was just missing a function to call orion_crypto_init with dove specific setup. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: dove: add clock gating controlSebastian Hesselbarth
This patch adds clock gates from the clock gating control register available on dove. All clock gates are hooked up to tclk, except for gigabit ethernet controller (ge) which is a child of gephy to allow both enabled/disabled at the same time. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: dove: unify clock setupSebastian Hesselbarth
This patch synchronizes the clock setup of dove with other orion-based platforms. In dove_find_tclk there was a note about DOVE_SAMPLE_HI/LO register to detect tclk. While it might be possible to set a different tclk frequency with reset strapping the Dove datasheets don't tell anything about tclk frequency here. Therefore, I removed that comment. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: initial DTS support for km_kirkwoodValentin Longchamp
This is a first attempt to support the km_kirkwood reference design with a device tree. This km_kirkwood design is present in many Keymile products. It is based on the Marvell Bobcat SOC which integrates a Kirkwood CPU next to a big L2 Ethernet Switch. The Kirkwood in the SOC is very similar to the "normal" one, but there are a few differences. This initial support is minimal: the kernel can boot with network (ge0), serial port and NAND functional. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Cc: Holger Brunck <holger.brunck@keymile.com> Acked-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21arm: add documentation describing Marvell families of SoCThomas Petazzoni
As stated in the introduction of the document, the families of ARM SoCs at Marvell are very complicated, and it is difficult for newcomers to understand the organization of this SoC family and how it relates to the Linux kernel support for those hardware platforms. This document is only at RFC stage for now, it requires reviews and comments from the Marvell maintainers, the PXA maintainers and the MMP maintainers. For correctness of course, but also to add any other information that would be useful. For example, one of the thing that wasn't clear how to detail in the documentation is how the SoCs relate to each other in terms of hardware IP blocks. For example, most of the Kirkwood/Dove/Armada 370-XP/etc. hardware IPs (I2C, SPI, USB, SATA, etc.) are identical, while the PXA and MMP families are completely separate. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Andrew Lunn <andrew@lunn.ch> Cc: Jason Cooper <jason@lakedaemon.net> Cc: Gregory Clement <gregory.clement@free-electrons.com> Cc: Eric Miao <eric.y.miao@gmail.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Haojian Zhuang <haojian.zhuang@gmail.com> Cc: Nicolas Pitre <nico@fluxnic.net> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Olof Johansson <olof@lixom.net> Cc: Lior Amsalem <alior@marvell.com> Cc: Maen Suleiman <maen@marvell.com> Cc: Tawfik Bayouk <tawfik@marvell.com> Cc: Shadi Ammouri <shadi@marvell.com> Cc: Eran Ben-Avi <benavi@marvell.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: kirkwood: DT descriptor for Seagate FreeAgent DockstarSebastian Hesselbarth
This adds the corresponding device tree descriptor for the Seagate FreeAgent Dockstar based on Kirkwood DT. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: kirkwood: DT board setup for Seagate FreeAgent DockstarSebastian Hesselbarth
This add a DT compatible board specific setup for the Seagate FreeAgent Dockstar. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: Kirkwood: Iomega ix2-200 DT supportAlan M Butler
Add support for the Iomega ix2-200. Led's and buttons working as of kernel 3.6-rc2 the 3 lines in the network interface do seem to be required as removing either causes the network card to not be able to reach the network (at least on my device). Product page: http://go.iomega.com/en/products/network-storage-desktop/storcenter-network-storage-solution/network-hard-drive-ix2-200-cloud/?partner=4735#tech_specsItem_tab Signed-off-by: Alan M Butler <alanbutty12@gmail.com> Acked-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
2012-09-21ARM: mmp: using for_each_set_bit to simplify the codeWei Yongjun
Using for_each_set_bit() to simplify the code. spatch with a semantic match is used to found this. (http://coccinelle.lip6.fr/) Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com>