clk: exynos5410: register clocks using common clock framework

The EXYNOS5410 clocks are statically listed and registered
using the Samsung specific common clock helper functions.
ARM: EXYNOS: add Exynos Dual Cluster Support

Add EDCS(Exynos Dual Cluster Support) for Samsung Exynos5410 SoC.
This enables all 8 cores, 4 x A7 and 4 x A15 run at the same time.
ARM: dts: Add initial device tree support for EXYNOS5410

Add initial device tree nodes for EXYNOS5410 SoC and ODROID-XU
board.
ARM: EXYNOS: add secondary CPU boot base location for EXYNOS5410

The location at which the boot address is specified for secondary
CPUs of EXYNOS5410 is SYSRAM base +4. Update the cpu_boot_reg function
accordingly.
ARM: EXYNOS: Configure ARM_NR_BANKS for EXYNOS SoC

This patch increases the number of bank for EXYNOS4 and EXYNOS5
to support bigger than 2GB memory on it.
irqchip: exynos-combiner: set irq base as 256 for exynos5410

Exynos5410 uses 256 GIC interrupts unlike the previous Exynos SoCs which
had upto 160 GIC interrupts. Since the exynos-combiner driver uses irq
domain simple to support some of the Exynos4 non-dt platforms, the irq_base is set
temporarily to 256 for Exynos5410 combiner interrupts.

Conflicts:
	drivers/irqchip/exynos-combiner.c
ARM: odroidxu_defconfig: Hardkernel Odroid-xu board based on exynos5410
pinctrl: exynos: add exynos5410 SoC specific data

Add Samsung EXYNOS5410 SoC specific data to enable pinctrl
support for all platforms based on EXYNOS5410.
ARM: exynos5410: add support for smp boot

This patch add support for booting all 4 cpus (A15 or A7).
ARM: dts: add pinctrl support to Exynos5410

Add the required pin configuration support to Exynos5410 using pinctrl
interface.
ARM: dts: Odroid-xu: Add hearbeat and eMMC, MMC LEDs support

Add the support for LED1 on ODROID-XU board.
    -Red LED will be used for heartbeat
    -Green LED will be used for eMMC
    -Blue LED will be used for microSD
ARM: dts: exynos5410: add i2c and hsi2c device nodes

This adds device-tree nodes for the i2c and high-speed i2c busses
on Exynos 5410 platforms.
ARM: dts: odroid-xu: add i2c busses and devices

This adds device-tree bindings for the i2c and high-speed i2c busses and
their attached device on odroid-xu
mfd: Add MAX77xxx series MFD driver

Support the MAX77686 and MAX77802, in an attempt to avoid code duplication.
It seems easier to have one driver that can be tweaked for new PMICs than
a core driver with different clients.

Base MFD support is provided along with interrupts. The RTC and regulator
will use this base driver.

Original-Change-Id: Ifd5c5efb8fcb3d931ac89dac30144473b37580a5
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://gerrit-int.chromium.org/35487
Reviewed-by: Doug Anderson <dianders@google.com>
Commit-Queue: Doug Anderson <dianders@google.com>
Tested-by: Doug Anderson <dianders@google.com>
(cherry picked from peach-alpha commit
	419a7a89084e5cc626696e7cf344c8c9fd9b9f29)

BUG=chrome-os-partner:19007
TEST=Build and boot on peach-pit and snow; MFD driver probes once config
option is added.

Change-Id: I36b86a326adb55aefa0ed5142c39a3e93f8795c0
[abrestic: squashed opmode enum fix]
Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/56567

Conflicts:
	drivers/mfd/Kconfig
rtc: Add MAX77xxx series real-time-clock driver

This driver supports MAX77686 and MAX77802.

Original-Change-Id: I09b17c4186c7f6d9a391802c39ddd34953649cd2
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://gerrit-int.chromium.org/35488
Reviewed-by: Doug Anderson <dianders@google.com>
Commit-Queue: Doug Anderson <dianders@google.com>
Tested-by: Doug Anderson <dianders@google.com>
(cherry picked from peach-alpha commit
	2e699fe95678077268e9e28be1b117c3b1b094d1)

Conflicts:
	drivers/rtc/Kconfig

BUG=chrome-os-partner:19007
TEST=Build and boot on peach-pit and snow; RTC probes once config option is
added.

Change-Id: Iaab229a53458726a6bd8b39efd2b799d9ed2c785
[abrestic: fixed trivial Kconfig conflict; squashed range-checking fix]
Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/56568

Conflicts:
	drivers/rtc/Kconfig
clk: samsung: exynos5410: Add support for USB IP's clocks

Adding required GATE definitions for USB 2.0 clock,
as well as clocks for both USB 3.0 channels.
Theses clocks are derived from ACLK_200 clock.
ARM: dts: exynos5410: Enable ehci-5p/ohci-exynos support

Add device node entry for ehci-s5p and ohci-exynos on
    exynos5410, to add support for usb 2.0
ARM: dts: exynos5410: Enabling samsung-usb2phy driver on exynos5410

Adding device tree node for Samsung-usb2phy to exynos5410
along with necessary device data to be parsed.
ARM: dts: exynos5410: Enabling samsung-usb3phy driver on exynos5410

Adding device tree node for Samsung-usb3phy on exynos5410
along with necessary device data to be parsed.
ARM: dts: exynos5410: Enable exynos-dwc3 support on exynos5410

Add device node entry for exynos-dwc3 on exynos5410,
to add support for usb 3.0.