GitHub/LineageOS/android_kernel_motorola_exynos9610.git
11 years agoMerge tag 'u300-multiplatform' of git://git.kernel.org/pub/scm/linux/kernel/git/linus...
Arnd Bergmann [Wed, 19 Jun 2013 23:51:18 +0000 (01:51 +0200)]
Merge tag 'u300-multiplatform' of git://git./linux/kernel/git/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>
11 years agoMerge tag 'integrator-pci-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel...
Arnd Bergmann [Wed, 19 Jun 2013 23:00:15 +0000 (01:00 +0200)]
Merge tag 'integrator-pci-for-arm-soc' of git://git./linux/kernel/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>
11 years agoMerge tag 'keystone-soc-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Tue, 18 Jun 2013 07:23:04 +0000 (00:23 -0700)]
Merge tag 'keystone-soc-for-arm-soc' of git://git./linux/kernel/git/ssantosh/linux-keystone into next/soc

From Santosh Shilimkar:
SOC support for Keystone II devices:
- Minimal machine and device-tree support with arch_timers and console UART
- Reboot hook using PLL reset
- Low level debug support using UART
- SMP boot support

* tag 'keystone-soc-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  ARM: keystone: Enable SMP support on Keystone machines
  ARM: keystone: Add minimal TI Keystone platform support
  ARM: dts: keystone: Add minimal Keystone SOC device tree data

Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: keystone: Enable SMP support on Keystone machines
Santosh Shilimkar [Mon, 10 Jun 2013 16:20:17 +0000 (12:20 -0400)]
ARM: keystone: Enable SMP support on Keystone machines

Add basic SMP support for Keystone machines. This does not
include support for CPU hotplug for now.

Cc: Arnd Bergmann <arnd@arndb.de>
Cc: arm@kernel.org
Acked-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
11 years agoARM: keystone: Add minimal TI Keystone platform support
Santosh Shilimkar [Mon, 10 Jun 2013 15:27:13 +0000 (11:27 -0400)]
ARM: keystone: Add minimal TI Keystone platform support

Texas Instruments Keystone family of multi-core devices are
based on ARM Cortex A15. Patch adds basic definitions for a
new Keystone sub-architecture in ARM.

The TCI66xxK2H Communications Infrastructure Keystone SoCs
are member of the C66x family based on TI's new KeyStone 2
multi-core SoC Architecture designed specifically for high
performance wireless and networking infrastructure applications.
The SOCs contains many subsystems like Cortex A15 ARM CorePacs,
C66XX DSP CorePacs, MSMC memory controller, Tera Net bus,
IP Network, Navigator, Hyperlink, 1G/10G Ethernet, Radio layers
and queue based communication systems.

Cc: Arnd Bergmann <arnd@arndb.de>
Cc: arm@kernel.org
Acked-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
11 years agoARM: dts: keystone: Add minimal Keystone SOC device tree data
Santosh Shilimkar [Mon, 10 Jun 2013 15:33:31 +0000 (11:33 -0400)]
ARM: dts: keystone: Add minimal Keystone SOC device tree data

Add minimal device tree data for Keystone2 based SOCs. Patch
contains mainly ARM related SOC data and nothing about EVM specific
yet.

Cc: Grant Likely <grant.likely@linaro.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: arm@kernel.org
Acked-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
11 years agoARM: u300: switch to using syscon regmap for board
Linus Walleij [Thu, 13 Jun 2013 19:21:31 +0000 (21:21 +0200)]
ARM: u300: switch to using syscon regmap for board

This switches the code using a local remapping of the
system controller to enable the U300 board to be
self-powered over to making the U300-specific syscon
compatible with the MFD generic syscon driver, selecting
the generic syscon driver, and augmenting the board
power code to pick the regmap and manipulate the syscon
from the regmap side of things.

Cc: Dong Aisheng <dong.aisheng@linaro.org>
Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: Update MMC configs for u300 defconfig
Ulf Hansson [Mon, 27 May 2013 12:41:55 +0000 (14:41 +0200)]
ARM: u300: Update MMC configs for u300 defconfig

Enable MMC_UNSAFE_RESUME to be accomplish a proper suspend/resume cycle
for SD/SDIO/(e)MMC.

ARMMMCI host driver supports clock gating through runtime PM, thus
MMC_CLKGATE is not needed. Moreover ARMMMCI can do scatter-gather which
means we can explicity disable MMC_BLOCK_BOUNCE, since it's default
enabled, to skip unnecessary bounce buffer copying.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agospi: pl022: use DMA by default when probing from DT
Linus Walleij [Thu, 23 May 2013 17:46:40 +0000 (19:46 +0200)]
spi: pl022: use DMA by default when probing from DT

In the past we controlled the selection of DMA for a certain
host by a boolean switch in the platform data. Currently
there is no way to enable DMA on a PL022 probed from the
device tree. Let's default to trying to obtain DMA channels
in the DT case, and then we can always fail (and thus fall
back to PIO mode).

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agopinctrl: get rid of all platform data for coh901
Linus Walleij [Thu, 23 May 2013 18:09:43 +0000 (20:09 +0200)]
pinctrl: get rid of all platform data for coh901

This deletes the dependency on any platform data for
the COH901 pin controller. There is only one user in the
kernel, and if we at some point want to support more
variants, they shall provide their variant info through
the device tree.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: convert MMC/SD clock to device tree
Linus Walleij [Thu, 23 May 2013 17:18:28 +0000 (19:18 +0200)]
ARM: u300: convert MMC/SD clock to device tree

This converts the last of the U300 clocks to being probed from
the device tree.

Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: move the gated system controller clocks to DT
Linus Walleij [Thu, 23 May 2013 13:42:33 +0000 (15:42 +0200)]
ARM: u300: move the gated system controller clocks to DT

This moves the slow, fast, AHB bridge and "rest" clocks on
the U300 system controller over to registration from the
device tree.

Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoi2c: stu300: do not request a specific clock name
Linus Walleij [Thu, 23 May 2013 13:26:29 +0000 (15:26 +0200)]
i2c: stu300: do not request a specific clock name

We have used the default clock associated with the block
for a long time, only heuristics in the clock system has
made this work anyway. This needs to be done away with as
we start probing this driver and its clocks exclusively
from the device tree.

Acked-by: Wolfram Sang <wsa@the-dreams.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoclk: move the U300 fixed and fixed-factor to DT
Linus Walleij [Thu, 23 May 2013 09:09:57 +0000 (11:09 +0200)]
clk: move the U300 fixed and fixed-factor to DT

This converts the fixed and fixed-factor clocks in the U300
platform to register themselves from the device tree.

Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: remove register definition file
Linus Walleij [Wed, 22 May 2013 14:20:27 +0000 (16:20 +0200)]
ARM: u300: remove register definition file

Now that the core file is the only one actually using any
of the base addresses, we can delete that header and move
the base address definitions into the one and only core
file.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: add syscon node
Linus Walleij [Wed, 22 May 2013 14:15:13 +0000 (16:15 +0200)]
ARM: u300: add syscon node

This adds a device tree node for the U300 system controller
and remaps this dynamically instead of using hard-coded
virtual addresses. The board power set-up code is altered
to fetch a reference to the syscon using ampersand <&syscon>
notation. This way of passing a pointer to the syscon will
also be used by the clocks.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300 use module_spi_driver to register driver
Peter Huewe [Mon, 20 May 2013 20:22:04 +0000 (22:22 +0200)]
ARM: u300 use module_spi_driver to register driver

Removing some boilerplate by using module_spi_driver instead of calling
register and unregister in the otherwise empty init/exit functions.

Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: delete remnant machine headers
Linus Walleij [Thu, 2 May 2013 16:07:11 +0000 (18:07 +0200)]
ARM: u300: delete remnant machine headers

Two files remain in <mach/*> for U300: timex.h and
uncompress.h. The former is done away with by using
defaults, the latter is unused in multiplatform.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: convert to multiplatform
Linus Walleij [Thu, 2 May 2013 16:01:46 +0000 (18:01 +0200)]
ARM: u300: convert to multiplatform

Now that we removed our dependency on <mach/*> the U300
can be converted to mutliplatform. Remove the invalid restriction
that U300 would not support AUTO_ZRELADDR (it does) and update
the defconfig in the process.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: localize <mach/u300-regs.h>
Linus Walleij [Thu, 2 May 2013 15:12:33 +0000 (17:12 +0200)]
ARM: u300: localize <mach/u300-regs.h>

This register base file is now only used in the machine
itself so move it down into mach-u300.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: delete <mach/irqs.h>
Linus Walleij [Thu, 2 May 2013 15:05:05 +0000 (17:05 +0200)]
ARM: u300: delete <mach/irqs.h>

All IRQs are now obtained from the device tree, and this file
is unused, so delete it.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: delete <mach/hardware.h>
Linus Walleij [Thu, 2 May 2013 15:03:03 +0000 (17:03 +0200)]
ARM: u300: delete <mach/hardware.h>

This file is now unused and can be deleted.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: push down syscon registers
Linus Walleij [Thu, 2 May 2013 14:56:15 +0000 (16:56 +0200)]
ARM: u300: push down syscon registers

Get rid of the <mach/syscon.h> header as a prerequisite for
multiplatform support. Do this by pushing the registers down
to their respective drivers and deleting the unused remainder.

Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: remove deps from debug macro
Linus Walleij [Thu, 2 May 2013 15:00:29 +0000 (17:00 +0200)]
ARM: u300: remove deps from debug macro

This rids the dependency to <mach/hardware.h> (which is an
implicit dependency to <mach/u300-regs.h>) from the U300
debug macro. Take this opportunity to update the file
header.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: move debugmacro to debug includes
Linus Walleij [Thu, 2 May 2013 14:34:19 +0000 (16:34 +0200)]
ARM: u300: move debugmacro to debug includes

This moves the U300 debug macro to the debug headers to
make way for multiplatform support.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: delete all static board data
Linus Walleij [Mon, 22 Apr 2013 09:29:30 +0000 (11:29 +0200)]
ARM: u300: delete all static board data

We have now transferred all the U300 peripherals to the device
tree, so we just select USE_OF, and delete all static board data,
then require that this platform shall be booted using the device
tree and nothing else.

This gets rid of the MMCI (PL180), PL022, and serial PL011
platform data entries and more.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: add FSMC flash into the device tree
Linus Walleij [Mon, 22 Apr 2013 09:00:02 +0000 (11:00 +0200)]
ARM: u300: add FSMC flash into the device tree

This registers the U300 FSMC flash controller from the
device tree, and defines the three partitions. Skip the
BBT scan as in the current platform data.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: probe the U300 dummy-spichip from device tree
Linus Walleij [Sun, 21 Apr 2013 19:39:46 +0000 (21:39 +0200)]
ARM: u300: probe the U300 dummy-spichip from device tree

This probes the U300 dummy-spichip from the device tree
and adds the apropriate node to the tree.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: add SPI PL022 to the device tree
Linus Walleij [Fri, 19 Apr 2013 12:56:46 +0000 (14:56 +0200)]
ARM: u300: add SPI PL022 to the device tree

This registers the PL022 PrimeCell from the U300 device
tree. We make a new copy of the platform data for the
device tree boot path, as the old platform data is in an
older file which will be going away.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: add the COH 901 318 DMAC to device tree
Linus Walleij [Fri, 19 Apr 2013 11:44:25 +0000 (13:44 +0200)]
ARM: u300: add the COH 901 318 DMAC to device tree

This adds the COH 901 318 DMA controller to the U300
device tree. All devices now converted to device tree
so far will start to find their DMA channels.

Note that the U300 is not yet using the device tree
to obtain DMA channels, but this is a first step.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: augment device tree with DMA channels
Linus Walleij [Thu, 2 May 2013 08:38:52 +0000 (10:38 +0200)]
ARM: u300: augment device tree with DMA channels

This adds DMA channel assignments to the MMC/SD-controller
and the two UARTs already in the U300 device tree, as we
have now defined a way to obtain DMA channels from the
device tree.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agodma: coh901318: add devicetree support
Linus Walleij [Fri, 19 Apr 2013 11:42:55 +0000 (13:42 +0200)]
dma: coh901318: add devicetree support

This adds support for probing the COH 901 318 DMA controller
and channels from the device tree.

Contains portions of a sketch patch from Arnd Bergmann.

Cc: Arnd Bergmann <arnd@arndb.de>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: enable MMC/SD card from device tree
Linus Walleij [Wed, 10 Apr 2013 12:34:00 +0000 (14:34 +0200)]
ARM: u300: enable MMC/SD card from device tree

This adds support for the U300 MMC/SD card slot from the device
tree boot. No other changes needed.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: support regulators in the device tree
Linus Walleij [Fri, 19 Apr 2013 08:51:59 +0000 (10:51 +0200)]
ARM: u300: support regulators in the device tree

Now that we have enabled board power and the AB3100 regulators,
put the regulator data into the device tree and enable it so
we can start to tie regulators to devices. To begin with we're
only supplying the power to the board itself.

Cc: Mark Brown <broonie@kernel.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: set up board power from device tree
Linus Walleij [Fri, 19 Apr 2013 08:50:42 +0000 (10:50 +0200)]
ARM: u300: set up board power from device tree

This adds support for setting up the board power from the
device tree on the U300. We use a board-specific node in the
device tree for the S365 board and bind a regulator for the
board power to this node.

Cc: Mark Brown <broonie@kernel.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: u300: add RTC to device tree
Linus Walleij [Fri, 19 Apr 2013 11:22:57 +0000 (13:22 +0200)]
ARM: u300: add RTC to device tree

This adds the COH 901 331 RTC to the U300 device tree.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agortc: coh901331: add devicetree support
Linus Walleij [Fri, 19 Apr 2013 11:03:13 +0000 (13:03 +0200)]
rtc: coh901331: add devicetree support

This add devicetree probe support to the COH 901 331 RTC
driver.

Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: integrator: basic PCIv3 device tree support
Linus Walleij [Fri, 1 Mar 2013 01:20:55 +0000 (02:20 +0100)]
ARM: integrator: basic PCIv3 device tree support

This registers the memory ranges for I/O, non-prefetched and
prefetched memory and configuration space for the PCIv3 bridge
and let us fetch these basic memory resources from the device
tree in the device tree boot path. Remove the stepping stone
platform device. This is an either/or approach - the platform
data path is mutually exclusive to the plain platform data
path and provided addresses from the device tree have to be
correct.

This adds the interrupt-map property to the PCIv3 DTS file
and makes the bridge obtain mappings from the device tree.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoMerge tag 'tegra-for-3.11-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/swarr...
Olof Johansson [Sat, 15 Jun 2013 01:11:31 +0000 (18:11 -0700)]
Merge tag 'tegra-for-3.11-soc' of git://git./linux/kernel/git/swarren/linux-tegra into next/soc

From Stephen Warren:
ARM: tegra: core SoC support enhancements

This branch contains fixes and enhancement for core Tegra Soc support:
* CPU hotplug support for Tegra114.
* Some preliminary work on Tegra114 CPU sleep modes.
* Minor fix for EMC table DT parsing.

* tag 'tegra-for-3.11-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra:
  ARM: tegra: don't pass CPU ID to tegra_{set,clear}_cpu_in_lp2
  ARM: tegra: cpuidle: using IS_ENABLED for multi SoCs management in init func
  ARM: tegra: hook tegra_tear_down_cpu function in the PM suspend init function
  ARM: tegra: cpuidle: move the init function behind the suspend init function
  ARM: tegra: remove ifdef in the tegra_resume
  ARM: tegra: add cpu_disable for hotplug
  ARM: tegra114: add CPU hotplug support
  clk: tegra114: implement wait_for_reset and disable_clock for tegra_cpu_car_ops
  ARM: tegra114: add power up sequence for warm boot CPU
  ARM: tegra: make tegra_resume can work for Tegra114
  ARM: tegra: skip SCU and PL310 code when CPU is not Cortex-A9
  ARM: tegra: add an assembly marco to check Tegra SoC ID
  ARM: tegra: emc: correction of ram-code parsing from dt

Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoMerge tag 'renesas-soc2-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Sat, 15 Jun 2013 01:00:00 +0000 (18:00 -0700)]
Merge tag 'renesas-soc2-for-v3.11' of git://git./linux/kernel/git/horms/renesas into next/soc

From Simon Horman:
Second Round of Renesas ARM-based SoC updates for v3.11

* Ether device name updates for r8a7778 and r8a7779 Sergei Shtylyov
* Extended clock and driver coverage for r8a7778 by Goda-san and Morimoto-san
* Extended clock and coverage for r8a73a4 and r8a7790 by  Guennadi Liakhovetski
* HSCIF support for r8a7790 by Ulrich Hecht

* tag 'renesas-soc2-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r8a7790: add clock definitions and aliases for MMCIF and SDHI
  ARM: shmobile: r8a73a4: add clock definitions and aliases for MMCIF and SDHI
  ARM: shmobile: r8a7778: add support MMC driver
  ARM: shmobile: r8a7778: add support HSPI driver
  ARM: shmobile: r8a7778: add support I2C driver
  ARM: shmobile: r8a7778: add support MMC clock
  ARM: shmobile: r8a7778: add support HSPI clock
  ARM: shmobile: r8a7778: add support I2C clock
  ARM: shmobile: r8a7790: HSCIF support
  ARM: shmobile: r8a7778: fix Ether device name
  ARM: shmobile: r8a7779: fix Ether device name

Signed-off-by: Olof Johansson <olof@lixom.net>
Conflicts:
arch/arm/mach-shmobile/clock-r8a7778.c
arch/arm/mach-shmobile/include/mach/r8a7778.h

11 years agoMerge tag 'renesas-phy-rcar-usb-for-v3.11' of git://git.kernel.org/pub/scm/linux...
Olof Johansson [Sat, 15 Jun 2013 00:36:30 +0000 (17:36 -0700)]
Merge tag 'renesas-phy-rcar-usb-for-v3.11' of git://git./linux/kernel/git/horms/renesas into next/soc

From Simon Horman:
Renesas USB updates for v3.11

These updates are by Sergei Shtylyov to clean-up USB support
present for R8A7779/Marzen and then extend USB support coverage to
R8A7778/BOCK-W.

* tag 'renesas-phy-rcar-usb-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: BOCK-W: add USB support
  ARM: shmobile: r8a7778: add USB support
  phy-rcar-usb: add R8A7778 support
  phy-rcar-usb: handle platform data
  ARM: shmobile: Marzen: pass platform data to USB PHY device
  phy-rcar-usb: add platform data
  phy-rcar-usb: correct base address
  ARM: shmobile: r8a7779: remove USB PHY 2nd memory resource
  phy-rcar-usb: remove EHCI internal buffer setup
  ARM: shmobile: r8a7779: setup EHCI internal buffer
  ehci-platform: add pre_setup() method to platform data
  ARM: shmobile: Marzen: move USB EHCI, OHCI, and PHY devices to R8A7779 code

Conflicts:
arch/arm/mach-shmobile/board-marzen.c
arch/arm/mach-shmobile/setup-r8a7778.c

Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoMerge tag 'regmap-3.11' of git://git.infradead.org/users/jcooper/linux into next/soc
Olof Johansson [Fri, 14 Jun 2013 22:18:25 +0000 (15:18 -0700)]
Merge tag 'regmap-3.11' of git://git.infradead.org/users/jcooper/linux into next/soc

mvebu register map changes for v3.11

This series removes the hardcoded register base address for mvebu.

Depends:
 - 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' of git://git.infradead.org/users/jcooper/linux:
  arm: mvebu: disable DEBUG_LL/EARLY_PRINTK in defconfig
  arm: mvebu: add another earlyprintk Kconfig option
  arm: mvebu: don't hardcode the physical address for mvebu-mbus
  arm: mvebu: don't hardcode a physical address in headsmp.S
  arm: mvebu: remove hardcoded static I/O mapping
  arm: mvebu: move cache and mvebu-mbus initialization later
  arm: mvebu: avoid hardcoded virtual address in coherency code
  arm: mvebu: remove dependency of SMP init on static I/O mapping
  arm: mvebu: fix length of Ethernet registers area in .dtsi
  arm: mvebu: fix length of SATA registers area in .dtsi
  arm: mvebu: mark functions of armada-370-xp.c as static
  ARM: mvebu: Remove init_irq declaration in machine description
  ARM: Orion: Remove redundant init_dma_coherent_pool_size()

Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoMerge tag 'omap-for-v3.11/omap5-signed' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Fri, 14 Jun 2013 21:33:11 +0000 (14:33 -0700)]
Merge tag 'omap-for-v3.11/omap5-signed' of git://git./linux/kernel/git/tmlind/linux-omap into next/soc

From Tony Lindgren:
Omap5 SoC data via Paul Walmsley <paul@pwsan.com:

Add support for the OMAP5 SoC family.

As part of the transition to DT, no board files will be used
for OMAP5.  The hwmod data is gradually being transitioned
away from arch/arm/mach-omap2: IRQ, DMA, and memory map data
has been moved to DT.  Hopefully the dev_attr and clock role
data will be the next step.

Basic test logs are available here, although not for OMAP5,
since I don't have an OMAP5 board:
http://www.pwsan.com/omap/testlogs/omap5_v3.10/20130608130949/

* tag 'omap-for-v3.11/omap5-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP5: Remove unused include for ocp2scp
  ARM: OMAP5: Enable build and frameowrk initialisations
  ARM: OMAP5: voltagedomain data: Add OMAP5 voltage domain data
  ARM: OMAP5: hwmod data: Create initial OMAP5 SOC hwmod data
  ARM: OMAP5: powerdomain data: Add OMAP54XX data and update the header
  ARM: OMAP5: clockdomain data: Add OMAP54XX data and update the header
  ARM: OMAP5: SCRM: Add OMAP54XX header file.
  ARM: OMAP5: PRCM: Add OMAP54XX local MPU PRCM registers
  ARM: OMAP4+: PRCM MPU: Move function prototypes to common header for re-use
  ARM: OMAP5: CM: Add OMAP54XX register and bitfield files
  ARM: OMAP4+: CM: Move function prototypes to common header for re-use
  ARM: OMAP5: PRM: Add OMAP54XX register and bitfield files
  ARM: OMAP4+: PRM: Move function prototypes to common header for re-use

Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoMerge tag 'omap-for-v3.11/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Fri, 14 Jun 2013 21:31:36 +0000 (14:31 -0700)]
Merge tag 'omap-for-v3.11/soc-signed' of git://git./linux/kernel/git/tmlind/linux-omap into next/soc

From Tony Lindgren:
Omap SoC changes. Mostly improves am33xx support, and adds
minimal support for am43x SoCs.

* tag 'omap-for-v3.11/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP2+: AM43x: SRAM base and size
  ARM: OMAP2+: AM43x: GP or HS ?
  ARM: OMAP2+: AM43x: early init
  ARM: OMAP2+: AM43x: static mapping
  ARM: OMAP2+: AM437x: SoC revision detection
  ARM: OMAP2+: AM43x: soc_is support
  ARM: OMAP2+: AM43x: kbuild
  ARM: OMAP2+: AM43x: Kconfig
  ARM: OMAP2+: separate out OMAP4 restart
  ARM: AM33XX: clk: Add clock node for EHRPWM TBCLK
  ARM: OMAP3: clock data: get rid of unused USB host clock aliases and dummies
  ARM: OMAP2+: AM33xx: Add missing reset status info to GFX hwmod
  + Linux 3.10-rc5

Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoMerge tag 'omap-for-v3.11/pm-signed' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Fri, 14 Jun 2013 21:30:23 +0000 (14:30 -0700)]
Merge tag 'omap-for-v3.11/pm-signed' of git://git./linux/kernel/git/tmlind/linux-omap into next/soc

From Tony Lindgren:
Omap PM changes via Kevin Hilman <khilman@linaro.org>:

OMAP PM cleanups for v3.10

* tag 'omap-for-v3.11/pm-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP4+: PM: Consolidate OMAP4 PM code to re-use it for OMAP5
  ARM: OMAP4+: Make secondary_startup function name more consistent
  ARM: OMAP4+: PM: Consolidate MPU subsystem PM code for re-use
  ARM: OMAP4: PM: Avoid expensive cpu_suspend() path for all CPU power states except off

11 years agoarm: mvebu: disable DEBUG_LL/EARLY_PRINTK in defconfig
Thomas Petazzoni [Wed, 5 Jun 2013 07:05:01 +0000 (09:05 +0200)]
arm: mvebu: disable DEBUG_LL/EARLY_PRINTK in defconfig

Now that we have two different addresses for the UART, depending on
which bootloader is used, it is no longer desirable to enable
earlyprintk by default in the defconfig. Users who need earlyprintk
support will have to enable it explicitly, and select the right UART
configuration depending on their platform.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoarm: mvebu: add another earlyprintk Kconfig option
Thomas Petazzoni [Wed, 5 Jun 2013 07:05:00 +0000 (09:05 +0200)]
arm: mvebu: add another earlyprintk Kconfig option

In order to support both old and new bootloaders, we add a new Kconfig
option for the earlyprintk UART selection. The existing option allows
to work with old bootloaders (that keep the internal registers mapped
at 0xd0000000), while the newly introduced option allows to work with
new bootloaders (that remap the internal registers at 0xf1000000).

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoarm: mvebu: don't hardcode the physical address for mvebu-mbus
Thomas Petazzoni [Wed, 5 Jun 2013 07:04:59 +0000 (09:04 +0200)]
arm: mvebu: don't hardcode the physical address for mvebu-mbus

Since the mvebu-mbus driver doesn't yet have a DT binding (and this DT
binding may not necessarily be ready for 3.11), the physical address
of the mvebu-mbus registers are currently hardcoded. This doesn't play
well with the fact that the internal registers base address may be
different depending on the bootloader.

In order to have only one central place for the physical address of
the internal registers, we now use of_translate_address() to translate
the mvebu-mbus register offsets into the real physical address, by
using DT-based address translation. This will go away once the
mvebu-mbus driver gains a proper DT binding.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoarm: mvebu: don't hardcode a physical address in headsmp.S
Thomas Petazzoni [Thu, 6 Jun 2013 10:24:28 +0000 (12:24 +0200)]
arm: mvebu: don't hardcode a physical address in headsmp.S

Now that the coherency_init() function is called a bit earlier, we can
actually read the physical address of the coherency unit registers
from the Device Tree, and communicate that to the headsmp.S code,
which avoids hardcoding a physical address.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Will Deacon <will.deacon@arm.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoarm: mvebu: remove hardcoded static I/O mapping
Thomas Petazzoni [Wed, 5 Jun 2013 07:04:57 +0000 (09:04 +0200)]
arm: mvebu: remove hardcoded static I/O mapping

Now that we have removed the need of the static I/O mapping for early
initialization reasons, and fixed the registers area length that were
broken, we can get rid of the static I/O mapping. Only the earlyprintk
mapping needs to be set up, using the debug_ll_io_init() helper
function.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoarm: mvebu: move cache and mvebu-mbus initialization later
Thomas Petazzoni [Wed, 5 Jun 2013 07:04:56 +0000 (09:04 +0200)]
arm: mvebu: move cache and mvebu-mbus initialization later

Current, the L2 cache and the mvebu-mbus drivers are initialized at
->init_early() time. However, at ->init_early() time, ioremap() only
works if a static I/O mapping has already been put in place. If it's
not the case, it tries to do a memory allocation with kmalloc() which
is not possible so early at this stage of the initialization.

Since we want to get rid of the static I/O mapping, we cannot
initialize the L2 cache driver and the mvebu-mbus driver so early. So,
we move their initialization to the ->init_time() level, which is
slightly later (so ioremap() works properly), but sufficiently early
to be before the call of the ->smp_prepare_cpus() hook, which creates
an address decoding window for the BootROM, which requires the
mvebu-mbus driver to be properly initialized.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoarm: mvebu: avoid hardcoded virtual address in coherency code
Thomas Petazzoni [Wed, 5 Jun 2013 07:04:55 +0000 (09:04 +0200)]
arm: mvebu: avoid hardcoded virtual address in coherency code

Now that the coherency_get_cpu_count() function no longer requires a
very early mapping of the coherency unit registers, we can avoid the
hardcoded virtual address in coherency.c. However, the coherency
features are still used quite early, so we need to do the of_iomap()
early enough, at the ->init_timer() level, so we have the call of
coherency_init() at this point.

Unfortunately, at ->init_timer() time, it is not possible to register
a bus notifier, so we add a separate coherency_late_init() function
that gets called as as postcore_initcall(), when bus notifiers are
available.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoarm: mvebu: remove dependency of SMP init on static I/O mapping
Thomas Petazzoni [Wed, 5 Jun 2013 07:04:54 +0000 (09:04 +0200)]
arm: mvebu: remove dependency of SMP init on static I/O mapping

The ->smp_init_cpus() function is called very early during boot, at a
point where dynamic I/O mappings are not yet possible. However, in the
Armada 370/XP implementation of this function, we have to get the
number of CPUs. We used to do that by accessing a hardware register,
which requires relying on a static I/O mapping set up by
->map_io(). Not only this requires hardcoding a virtual address, but
it also prevents us from removing the static I/O mapping.

So this commit changes the way used to get the number of CPUs: we now
use the Device Tree, which is a representation of the hardware, and
provides us the number of available CPUs. This is also more accurate,
because it potentially allows to boot the Linux kernel on only a
number of CPUs given by the Device Tree, instead of unconditionally on
all CPUs.

As a consequence, the coherency_get_cpu_count() function becomes no
longer used, so we remove it.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoMerge tag 'tags/cleanup-3.11-3' into mvebu/regmap
Jason Cooper [Thu, 13 Jun 2013 17:47:57 +0000 (17:47 +0000)]
Merge tag 'tags/cleanup-3.11-3' into mvebu/regmap

mvebu cleanup for v3.11 (round 3)

 - mvebu
    - mark functions in armada-370-xp.c as static

11 years agoMerge tag 'tags/fixes-non-3.11-1' into mvebu/regmap
Jason Cooper [Thu, 13 Jun 2013 17:47:18 +0000 (17:47 +0000)]
Merge tag 'tags/fixes-non-3.11-1' into mvebu/regmap

mvebu fixes non-critical for v3.11 (round 1)

 - mvebu
    - fix register area length in dtsi for ethernet and sata

11 years agoMerge tag 's3c24xx-arch-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene...
Olof Johansson [Wed, 12 Jun 2013 23:12:03 +0000 (16:12 -0700)]
Merge tag 's3c24xx-arch-1' of git://git./linux/kernel/git/kgene/linux-samsung into next/soc

From Kukjin Kim, DMA driver updates for s3c24xx.

* tag 's3c24xx-arch-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: S3C24XX: remove obsolete s3c2412 specific dma settings
  ARM: S3C24XX: dma-s3c2443 - do not write into arbitary bits
  ARM: S3C24XX: split s3c2412 spi dma channels

Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: OMAP2+: AM43x: SRAM base and size
Sanjeev Premi [Mon, 27 May 2013 14:36:42 +0000 (20:06 +0530)]
ARM: OMAP2+: AM43x: SRAM base and size

This definition corresponds to the L3_OCMC0,
as in case of AM33XX.

Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Afzal Mohammed <afzal@ti.com>
[tony@atomide.com: updated to remove default y]
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP2+: AM43x: GP or HS ?
Afzal Mohammed [Mon, 27 May 2013 14:36:33 +0000 (20:06 +0530)]
ARM: OMAP2+: AM43x: GP or HS ?

Detect whether GP or HS, similar to the AM335x way.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP2+: AM43x: early init
Afzal Mohammed [Mon, 27 May 2013 14:36:23 +0000 (20:06 +0530)]
ARM: OMAP2+: AM43x: early init

Minimal early init - PRCM initialization not yet taken care.

Control module is similar (base address, feature register etc.) as
that of AM335x, while PRCM base address is different. Instead of
adding a new header file for AM43x, PRCM base address is added in
AM335x header file as it is similar to it to a large extent.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
[tony@atomide.com: updated to drop am33xx_check_features()]
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP2+: AM43x: static mapping
Afzal Mohammed [Mon, 27 May 2013 14:36:13 +0000 (20:06 +0530)]
ARM: OMAP2+: AM43x: static mapping

AM43x L4 WKUP/PER mappings are similar to AM335x, reuse.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP2+: AM437x: SoC revision detection
Afzal Mohammed [Mon, 27 May 2013 14:36:01 +0000 (20:06 +0530)]
ARM: OMAP2+: AM437x: SoC revision detection

Detect 437x SoC revision.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP2+: AM43x: soc_is support
Afzal Mohammed [Mon, 27 May 2013 14:35:51 +0000 (20:05 +0530)]
ARM: OMAP2+: AM43x: soc_is support

soc_is support for AM43x family of SoC's. Only variant now is AM437x,
it is made as a subclass of AM43x.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP2+: AM43x: kbuild
Afzal Mohammed [Mon, 27 May 2013 14:35:41 +0000 (20:05 +0530)]
ARM: OMAP2+: AM43x: kbuild

Build pieces that could be reused for AM43x - GIC related, secure
related and common PRCM.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP2+: AM43x: Kconfig
Afzal Mohammed [Mon, 27 May 2013 14:35:31 +0000 (20:05 +0530)]
ARM: OMAP2+: AM43x: Kconfig

Kconfig for AM43x (Cortex A9) family of SoC's.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP2+: separate out OMAP4 restart
Afzal Mohammed [Mon, 27 May 2013 14:35:19 +0000 (20:05 +0530)]
ARM: OMAP2+: separate out OMAP4 restart

Separate out OMAP4 restart and have it similar to other platforms, in
a different file. Main motive is to reuse omap4-common on platforms
other than OMAP4, like AM43x, even if OMAP4 is deselected (otherwise
would have caused build breakage).

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: shmobile: r8a7790: add clock definitions and aliases for MMCIF and SDHI
Guennadi Liakhovetski [Fri, 17 May 2013 14:55:15 +0000 (16:55 +0200)]
ARM: shmobile: r8a7790: add clock definitions and aliases for MMCIF and SDHI

Add MSTP clock definitions and fix aliases for the two MMCIF and four SDHI
interfaces on r8a7790 (H2).

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
[horms+renesas@verge.net.au: applied manually]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agoARM: shmobile: r8a73a4: add clock definitions and aliases for MMCIF and SDHI
Guennadi Liakhovetski [Fri, 17 May 2013 14:55:14 +0000 (16:55 +0200)]
ARM: shmobile: r8a73a4: add clock definitions and aliases for MMCIF and SDHI

Add MSTP clock definitions and fix aliases for the two MMCIF and three SDHI
interfaces on r8a73a4 (APE6).

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agoARM: socfpga: Add syscon to be part of socfpga
Dinh Nguyen [Wed, 5 Jun 2013 15:02:56 +0000 (10:02 -0500)]
ARM: socfpga: Add syscon to be part of socfpga

SOCFPGA has a system manager register block can be accessed by using
the syscon driver.

Signed-off-by: Dinh Nguyen <dinguyen@altera.com>
Cc: Pavel Machek <pavel@denx.de>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Olof Johansson <olof@lixom.net>
Cc: <linux@arm.linux.org.uk>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: socfpga: Add support to gate peripheral clocks
Dinh Nguyen [Wed, 5 Jun 2013 15:02:55 +0000 (10:02 -0500)]
ARM: socfpga: Add support to gate peripheral clocks

Add support to gate the clocks that directly feed peripherals. For clocks
with multiple parents, add the ability to determine the correct parent,
and also set parents. Also add support to calculate and set the clocks'
rate.

Signed-off-by: Dinh Nguyen <dinguyen@altera.com>
Reviewed-by: Pavel Machek <pavel@denx.de>
Acked-by: Mike Turquette <mturquette@linaro.org>
Cc: Mike Turquette <mturquette@linaro.org>
CC: Arnd Bergmann <arnd@arndb.de>
CC: Olof Johansson <olof@lixom.net>
Cc: Pavel Machek <pavel@denx.de>
CC: <linux@arm.linux.org.uk>
v4:
- Add Acked-by: Mike Turquette

v3:
- Addressed comments from Pavel

v2:
- Fix space/indent errors
- Add streq for strcmp == 0
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoMerge branch 'clps711x/soc' into next/soc
Olof Johansson [Tue, 11 Jun 2013 22:57:17 +0000 (15:57 -0700)]
Merge branch 'clps711x/soc' into next/soc

From Alexander Shiyan, this is a series of cleanups of clps711x, movig it
closer to multiplatform and cleans up a bunch of old code.

* clps711x/soc:
  ARM: clps711x: Update defconfig
  ARM: clps711x: Add support for SYSCON driver
  ARM: clps711x: edb7211: Control LCD backlight via PWM
  ARM: clps711x: edb7211: Add support for I2C
  ARM: clps711x: Optimize interrupt handling
  ARM: clps711x: Add clocksource framework
  ARM: clps711x: Replace "arch_initcall" in common code with ".init_early"
  ARM: clps711x: Move specific definitions from hardware.h to boards files
  ARM: clps711x: p720t: Define PLD registers as GPIOs
  ARM: clps711x: autcpu12: Move remaining specific definitions to board file
  ARM: clps711x: autcpu12: Special driver for handling memory is removed
  ARM: clps711x: autcpu12: Add support for NOR flash
  ARM: clps711x: autcpu12: Move LCD DPOT definitions to board file
  ARM: clps711x: Set PLL clock to zero if we work from 13 mHz source
  ARM: clps711x: Remove NEED_MACH_MEMORY_H dependency
  ARM: clps711x: Re-add GPIO support
  GPIO: clps711x: Add DT support
  GPIO: clps711x: Rewrite driver for using generic GPIO code
  + Linux 3.10-rc4

Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: Update defconfig
Alexander Shiyan [Mon, 13 May 2013 17:07:37 +0000 (21:07 +0400)]
ARM: clps711x: Update defconfig

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: Add support for SYSCON driver
Alexander Shiyan [Mon, 13 May 2013 17:07:36 +0000 (21:07 +0400)]
ARM: clps711x: Add support for SYSCON driver

This patch adds support for SYSCON driver for CLPS711X targets.
At this time there are no users for this driver, but it is will
be used as start point to use in CLPS711X drivers and remove
<mach/xx> dependencies.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: edb7211: Control LCD backlight via PWM
Alexander Shiyan [Mon, 13 May 2013 17:07:35 +0000 (21:07 +0400)]
ARM: clps711x: edb7211: Control LCD backlight via PWM

This patch provide control LCD backlight via PWM. GPIO is used
only for switch backlight ON and OFF.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: edb7211: Add support for I2C
Alexander Shiyan [Mon, 13 May 2013 17:07:34 +0000 (21:07 +0400)]
ARM: clps711x: edb7211: Add support for I2C

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: Optimize interrupt handling
Alexander Shiyan [Mon, 13 May 2013 17:07:33 +0000 (21:07 +0400)]
ARM: clps711x: Optimize interrupt handling

This patch modify interrupt handler for processing all penging interrupts
at once.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: Add clocksource framework
Alexander Shiyan [Mon, 13 May 2013 17:07:32 +0000 (21:07 +0400)]
ARM: clps711x: Add clocksource framework

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: Replace "arch_initcall" in common code with ".init_early"
Alexander Shiyan [Mon, 13 May 2013 17:07:31 +0000 (21:07 +0400)]
ARM: clps711x: Replace "arch_initcall" in common code with ".init_early"

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: Move specific definitions from hardware.h to boards files
Alexander Shiyan [Mon, 13 May 2013 17:07:30 +0000 (21:07 +0400)]
ARM: clps711x: Move specific definitions from hardware.h to boards files

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: p720t: Define PLD registers as GPIOs
Alexander Shiyan [Mon, 13 May 2013 17:07:29 +0000 (21:07 +0400)]
ARM: clps711x: p720t: Define PLD registers as GPIOs

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: autcpu12: Move remaining specific definitions to board file
Alexander Shiyan [Mon, 13 May 2013 17:07:28 +0000 (21:07 +0400)]
ARM: clps711x: autcpu12: Move remaining specific definitions to board file

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: autcpu12: Special driver for handling memory is removed
Alexander Shiyan [Mon, 13 May 2013 17:07:27 +0000 (21:07 +0400)]
ARM: clps711x: autcpu12: Special driver for handling memory is removed

This patch provide migration to using "mtd-ram" driver instead of using
special driver for handling NVRAM memory.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: autcpu12: Add support for NOR flash
Alexander Shiyan [Mon, 13 May 2013 17:07:26 +0000 (21:07 +0400)]
ARM: clps711x: autcpu12: Add support for NOR flash

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: autcpu12: Move LCD DPOT definitions to board file
Alexander Shiyan [Mon, 13 May 2013 17:07:24 +0000 (21:07 +0400)]
ARM: clps711x: autcpu12: Move LCD DPOT definitions to board file

We do not have driver for Up/Down digital potentiometer (DPOT), so
just define pins as GPIOs and export these pins to user.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: Set PLL clock to zero if we work from 13 mHz source
Alexander Shiyan [Mon, 13 May 2013 17:07:23 +0000 (21:07 +0400)]
ARM: clps711x: Set PLL clock to zero if we work from 13 mHz source

This clock will be used in audio subsystem. Since audio cannot work
without PLL we should indicate this.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: Remove NEED_MACH_MEMORY_H dependency
Alexander Shiyan [Mon, 13 May 2013 17:07:20 +0000 (21:07 +0400)]
ARM: clps711x: Remove NEED_MACH_MEMORY_H dependency

This patch removes dependency of NEED_MACH_MEMORY_H for CLPS711X-target.
Since some board may have memory holes, define ARCH_HAS_HOLES_MEMORYMODEL
for these boards.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: clps711x: Re-add GPIO support
Alexander Shiyan [Fri, 26 Apr 2013 15:47:29 +0000 (19:47 +0400)]
ARM: clps711x: Re-add GPIO support

arch_initcall was been removed from GPIO driver, so this patch
re-add support for GPIO into boards as platform_device.
Since some drivers (spi, nand, etc.) is not support deferred probe,
separate machine init calls is used in board code to make proper
loading sequence.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoGPIO: clps711x: Add DT support
Alexander Shiyan [Fri, 26 Apr 2013 15:47:30 +0000 (19:47 +0400)]
GPIO: clps711x: Add DT support

Add DT support to the CLPS711X GPIO driver.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoGPIO: clps711x: Rewrite driver for using generic GPIO code
Alexander Shiyan [Fri, 26 Apr 2013 15:47:28 +0000 (19:47 +0400)]
GPIO: clps711x: Rewrite driver for using generic GPIO code

This patch provides rewritten driver for CLPS711X GPIO which uses
generic GPIO code.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: shmobile: r8a7778: add support MMC driver
Kuninori Morimoto [Tue, 4 Jun 2013 05:12:22 +0000 (22:12 -0700)]
ARM: shmobile: r8a7778: add support MMC driver

Add a platform device for the r8a7778 MMC.

Signed-off-by: Yusuke Goda <yusuke.goda.sx@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agoARM: shmobile: r8a7778: add support HSPI driver
Kuninori Morimoto [Tue, 4 Jun 2013 05:12:08 +0000 (22:12 -0700)]
ARM: shmobile: r8a7778: add support HSPI driver

Add a platform device for the r8a7778 HSPI.

Signed-off-by: Yusuke Goda <yusuke.goda.sx@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agoARM: shmobile: r8a7778: add support I2C driver
Kuninori Morimoto [Tue, 4 Jun 2013 05:11:58 +0000 (22:11 -0700)]
ARM: shmobile: r8a7778: add support I2C driver

Add a platform device for the r8a7778 I2C.

Signed-off-by: Yusuke Goda <yusuke.goda.sx@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agoARM: shmobile: r8a7778: add support MMC clock
Kuninori Morimoto [Tue, 4 Jun 2013 05:11:39 +0000 (22:11 -0700)]
ARM: shmobile: r8a7778: add support MMC clock

This patch adds r8a7778 MMC clock support.

Signed-off-by: Yusuke Goda <yusuke.goda.sx@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agoARM: shmobile: r8a7778: add support HSPI clock
Kuninori Morimoto [Tue, 4 Jun 2013 05:11:24 +0000 (22:11 -0700)]
ARM: shmobile: r8a7778: add support HSPI clock

This patch adds r8a7778 HSPI clock support.
It also adds shyway_clk which is requiested
from sh-hspi driver

Signed-off-by: Yusuke Goda <yusuke.goda.sx@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agoARM: shmobile: r8a7778: add support I2C clock
Kuninori Morimoto [Tue, 4 Jun 2013 05:10:24 +0000 (22:10 -0700)]
ARM: shmobile: r8a7778: add support I2C clock

This patch adds r8a7778 I2C clock support.
It also adds peripheral_clk which is requiested
from i2c-rcar driver

Signed-off-by: Yusuke Goda <yusuke.goda.sx@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agoMerge tag 'renesas-soc-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Tue, 11 Jun 2013 07:31:14 +0000 (00:31 -0700)]
Merge tag 'renesas-soc-for-v3.11' of git://git./linux/kernel/git/horms/renesas into next/soc

From Simon Horman:
Renesas ARM-based SoC updates for v3.11

* Increased clock coverage for r8a7740, r8a73a4, r8a7778 and r8a7790
* Use fixed clock ratio for r8a7778
* Always use shmobile_setup_delay for sh73a0
* Add add CPUFreq support for sh73a0
* Check kick bit before changing rate on sh73a0
* Do not overwrite all div4 clock operations on sh73a0

* Cleanup SH_FIXED_RATIO_CLK and SH_FIXED_RATIO_CLK macros
* sh73a0: Use DEFINE_RES_MEM*() everywhere
* r8a7740: Make private clock arrays static
* r8a7778: Correct model number

The last four changes listed above are cleanups. I have included them
in this series as all bar the last one are dependencies of non-cleanup
patches.

* tag 'renesas-soc-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (27 commits)
  ARM: shmobile: sh73a0: div4 clocks must check the kick bit before changing rate
  ARM: shmobile: sh73a0: do not overwrite all div4 clock operations
  ARM: shmobile: sh73a0: Always use shmobile_setup_delay()
  ARM: shmobile: sh73a0: add CPUFreq support
  ARM: shmobile: sh73a0: add support for adjusting CPU frequency
  ARM: shmobile: r8a7790: add TPU PWM support
  ARM: shmobile: r8a7790: Make private clock arrays static
  ARM: shmobile: r8a7790: add div6 clocks
  ARM: shmobile: r8a7790: add div4 clocks
  ARM: shmobile: r8a7790: add main clock
  ARM: shmobile: r8a7778: Register SDHI device
  ARM: shmobile: r8a7778: add SDHI clock support
  ARM: shmobile: r8a7778: use fixed ratio clock
  ARM: shmobile: r8a7779: Add PCIe clocks
  ARM: shmobile: r8a73a4: add div6 clocks
  ARM: shmobile: r8a73a4: add div4 clocks
  ARM: shmobile: r8a73a4: add pll clocks
  ARM: shmobile: r8a73a4: add main clock
  ARM: shmobile: r8a7740: add TPU PWM support
  ARM: shmobile: r8a7740: Add I2C DT clock names
  ...

Conflicts:
arch/arm/mach-shmobile/Kconfig
arch/arm/mach-shmobile/include/mach/r8a7778.h
arch/arm/mach-shmobile/setup-r8a7778.c

11 years agoMerge tag 'renesas-pinmux-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Tue, 11 Jun 2013 07:21:46 +0000 (00:21 -0700)]
Merge tag 'renesas-pinmux-for-v3.11' of git://git./linux/kernel/git/horms/renesas into next/soc

From Simon Horman:
Renesas ARM based SoC pinmux and GPIO update for v3.11

SH-PFC:
* Entries for INTC external IRQs
* Remove dependency on GPIOLIB
* PFC support for r8a7790 SoC
* Pinmux support for r8a7778 SoC
* Increase pin group and function coverage for sh7372, r8a7740,
  r8a7778, r8a7779 and r8a7790 SoCs
* Use pinctrl mapping on mackerel, ap4evb, armadillo800eva,
  bonito, bockw, lager boards
* Use RCAR_GP_PIN macro in marzen board
* Remove unused GPIOs for sh7372, sh73a0, r8a7740 and r8a7790 SoCs
* Add bias (pull-up/down) pinconf support for r8a7740 SoC
* Add VCCQ support for sh73a0

GPIO car:
* Add RCAR_GP_PIN macro
* Add support for IRQ_TYPE_EDGE_BOTH
* Make the platform data gpio_base field signed

The GPIO changes have been included as the RCAR_GP_PIN and
IRQ_TYPE_EDGE_BOTH changes are depended on by SH-PFC changes.

* tag 'renesas-pinmux-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (132 commits)
  ARM: shmobile: marzen: Use RCAR_GP_PIN macro
  ARM: shmobile: lager: Initialize pinmux
  ARM: shmobile: bockw: add pinctrl support
  ARM: shmobile: kzm9g: tidyup FSI pinctrl
  ARM: shmobile: r8a7740 pinmux platform device cleanup
  ARM: shmobile: r8a7790: Configure R-Car GPIO for IRQ_TYPE_EDGE_BOTH
  pinctrl: sh-pfc: r8a7779: Fix missing MOD_SEL2 entry
  Revert "ARM: shmobile: Disallow PINCTRL without GPIOLIB"
  pinctrl: r8a7790: add pinmux data for MMCIF and SDHI interfaces
  sh-pfc: r8a7778: add MMCIF pin groups
  sh-pfc: r8a7778: add HSPI pin groups
  sh-pfc: r8a7778: add I2C pin groups
  pinctrl: sh-pfc: fix a typo in pfc-r8a7790
  pinctrl: sh-pfc: fix r8a7790 Function Select register tables
  sh-pfc: r8a7778: fixup IRQ1A settings
  sh-pfc: r8a7779: add Ether pin groups
  sh-pfc: r8a7778: add Ether pin groups
  sh-pfc: r8a7778: add VIN pin groups
  sh-pfc: sh73a0: Remove function GPIOs
  sh-pfc: r8a7790: Add TPU pin groups and functions
  ...

11 years agoARM: shmobile: BOCK-W: add USB support
Sergei Shtylyov [Sat, 8 Jun 2013 20:38:41 +0000 (00:38 +0400)]
ARM: shmobile: BOCK-W: add USB support

Register the USB PHY device from bockw_init(), passing the platform  data to it.
Set machine's init_late() method to r8a7778_init_late() in order for [EO]HCI to
get registered too...

Don't forget to add USB PENC0/1 pins to bockw_pinctrl_map[].

The patch has been tested on the BOCK-W board.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agoARM: shmobile: r8a7778: add USB support
Sergei Shtylyov [Sat, 8 Jun 2013 20:36:05 +0000 (00:36 +0400)]
ARM: shmobile: r8a7778: add USB support

Add USB clock and EHCI, OHCI, and USB PHY platform devices for R8A7778 SoC;  add
a function to register PHY device with board-specific platform data and register
EHCI and OHCI platfrom devices from the init_late() board method.

Also,  don't forget to enable CONFIG_ARCH_HAS_[EO]HCI options for R8A7778 SoC in
Kconfig...

The patch has been tested on the BOCK-W board.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agophy-rcar-usb: add R8A7778 support
Sergei Shtylyov [Sat, 8 Jun 2013 20:34:36 +0000 (00:34 +0400)]
phy-rcar-usb: add R8A7778 support

The driver currently only supports R8A7779 SoC. Compared to it, R8A7778 USB-PHY
has extra register range containing two high-speed signal quality characteristic
control registers which should be set up  during USB-PHY  startup depending on
whether a ferrite bead is in use or not.  So, we now handle an optional second
memory range in the driver's probe method, add the 'ferrite_bead' field to the
driver's platform data, and add an extra (optional) step to the USB-PHY startup
routine which sets up the extended registers.

Also mark in the driver's Kconfig section  that R8A7778 is now supported and
generally clarify that section, uppercasing the word "phy" and also changing
the module name that got lost in the big driver rename, while at it...

The patch has been tested on the Marzen and BOCK-W boards.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Acked-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
11 years agophy-rcar-usb: handle platform data
Sergei Shtylyov [Sat, 1 Jun 2013 21:57:18 +0000 (01:57 +0400)]
phy-rcar-usb: handle platform data

Set the USBPCTRL0 register from the passed platform data in rcar_usb_phy_init();
don't reset it to 0 in  rcar_usb_phy_shutdown()  anymore as that does not make
sense.  Also, don't allow the driver's probe to succeed when the platform data
are not supplied with a device.

The patch has been tested on the Marzen and BOCK-W boards.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Simon Horman <horms+renesas@verge.net.au>
Acked-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>