ARM: exynos: Add CPU DVFS support for exynos5410

Adds Dynamic voltage and frequency scaling support for Exynos5410.
power: asv: Add common ASV support for Samsung SoCs

This patch introduces a common ASV (Adaptive Supply Voltage) basic framework
for samsung SoCs. It provides common APIs (to be called by users to get ASV
values or init opp_table) and an interface for SoC specific drivers to
register ASV members (instances).

Signed-off-by: Yadwinder Singh Brar <yadi.brar@samsung.com>
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
power: asv: Add a common ASV driver for Exynos SoCs.

This patch adds a common platform driver to register ASV members for
Exynos SoCs.

Signed-off-by: Yadwinder Singh Brar <yadi.brar@samsung.com>
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
power: asv: Add support for Exynos5250

This patch adds basic support (only for ARM ASV) for exynos5250 chips
which have fused ASV group.

Signed-off-by: Yadwinder Singh Brar <yadi.brar@samsung.com>
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
ARM: SAMSUNG: Register static platform device for ASV for Exynos5

Since ASV is not a hardware controller, we can't add device tree node
for it. This patch registers a static platform device for Exynos ASV.
exynos: asv: Add ASV support for Exynos5410

Add basic ASV support for ARM, KFC on Exynos5410.
ARM: odroidxu_defconfig: enable exynos5410 cpufreq and asv drivers

This enables the exynos5410 cpufreq, asv drivers.
devfreq: Add Network-on-Chip bandwidth monitoring probe
Revert "drm/exynos: hdmi: Disable HPD support"

This reverts commit 30080b00b4faf8e5c3ed36d5fb4ef6fbc4f4e4cb.
drm/exynos: hdmi: Disable hdmi_power_off on hdmi runtime suspend

hdmi_power_off is not working properly hdmi runtime resume(MIXER)
on odroid-xu board. Till the issue is fixed, disable hdmi_power_off.
exynos: asv: Add ASV support for Exynos5410 bin2

Add basic ASV support for ARM, KFC on Exynos5410 bin2.
arm: Add Arm Erratum 773769 for Large data RAM latency.

The erratum-773769 occurs on Arm Coretex-A15 (rev r2p0),
when L2 Data Ram latency is set to 4 cycles or more; or
when ACP is in use, or with L2 Data RAM slice configured.
Therefore, the effective latency as calculated in Table 7-2 of
Cotex-A15 (rev r2p0) trm should be 3 cycles or less.

On Exynos5250 based systems the effective data ram latency
is 4 cycles, since we have DATA_RAM_SETUP bit enabled (L2CTRL[5]=1b'1)
and DATA_RAM_LATENCY bits set to 0x2 (L2CTLR[2:0]=3b'010) therefore,
the effective L2 data RAM latency becomes 4 cycles.
So erratum '773769' occurs causing a corrupted L2 Cache.

This patch gives a workaround to the mentioned erratum, using below
mentioned algo:
----------------------------------------------------------------
if data RAM setup = 1
  then check if effective latency i.e (latency + setup + 1) > 3
  if 'true'
    then clear data RAM setup
      goto branch 'a'
if data RAM setup = 0
  a: then check if data RAM latency > 0x10
    if true then force data RAM latency = 0x10
----------------------------------------------------------------
so that the effective data RAM latency reduces to 3 cycles or less
and hence prevent hitting the erratum.

NOTE: The Exynos5250 based products have already been shipped, which
      makes it impossible to add the change in bootloader, so we are
      adding the required change in kernel.

Signed-off-by: Vivek Gautam <gautam.vivek@samsung.com>
Cc: Doug Anderson <dianders@chromium.org>
Cc: Olof Johansson <olofj@chromium.org>
Cc: David Garbett <david.garbett@arm.com>
arm: exynos5410: add pmu support

This patch adds PMU support for exynos5410 Soc.
arm: exynos5410: soft power off