Commit graph

2,137 commits

Author SHA1 Message Date
Magnus Damm
06f2c5dcc2 ARM: shmobile: Allow r8a7790 to build non-SMP APMU code
Build the APMU for r8a7790 even though SMP is
disabled in the kernel config. Also initialize
Suspend-to-RAM from pm-r8a7790.c to in the future
cover both UP and SMP use cases of the APMU.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-26 16:01:26 +09:00
Magnus Damm
07ce9dfaf4 ARM: shmobile: Move r8a7790 reset code to pm-r8a7790.c
Move r8a7790 specific reset vector setup code from the
SMP glue code to PM code. This makes the code one step
closer to allow PM operations such as Suspend-to-RAM
in the case when SMP is disabled in the kernel config.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
[horms+renesas@verge.net.au: updated for recent #include changes]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-26 16:01:24 +09:00
Magnus Damm
0d77c9aa7a ARM: shmobile: Use __init for APMU suspend init function
The function shmobile_smp_apmu_suspend_init() should
be put into the init section to not trigger section
mismatch warnings.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-26 15:51:57 +09:00
Magnus Damm
784500be40 ARM: shmobile: Adjust APMU code to build for non-SMP
Adjust the APMU code to allow build when CONFIG_SMP=n.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-26 15:51:51 +09:00
Magnus Damm
8b438bcb90 ARM: shmobile: Allow use of boot code for non-SMP case
Allow build of platsmp.c and headsmp.S even though
SMP is disabled in the kernel configuration. With
this in place it is possible to share the reset
vector setup code with power management code that
needs to be built even though SMP is disabled.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-26 15:51:43 +09:00
Geert Uytterhoeven
5201b5a792 ARM: shmobile: Move r8a7791.h
Change location of r8a7791.h so it can be included as "r8a7791.h"
instead of the old style <mach/r8a7791.h>

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-25 16:53:34 +09:00
Geert Uytterhoeven
1b55353c92 ARM: shmobile: Move r8a7779.h
Change location of r8a7779.h so it can be included as "r8a7779.h"
instead of the old style <mach/r8a7779.h>

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-25 16:52:39 +09:00
Geert Uytterhoeven
113522ee30 ARM: shmobile: Move sh7372.h
Change location of sh7372.h so it can be included as "sh7372.h"
instead of the old style <mach/sh7372.h>

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-25 16:50:00 +09:00
Geert Uytterhoeven
ded59d6dfc ARM: shmobile: Move sh73a0.h
Change location of sh73a0.h so it can be included as "sh73a0.h"
instead of the old style <mach/sh73a0.h>

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-25 16:49:37 +09:00
Geert Uytterhoeven
fccae89318 ARM: shmobile: Move r8a7790.h
Change location of r8a7790.h so it can be included as "r8a7790.h"
instead of the old style <mach/r8a7790.h>

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-25 16:49:10 +09:00
Geert Uytterhoeven
02c94f38bf ARM: shmobile: Move r8a7778.h
Change location of r8a7778.h so it can be included as "r8a7778.h"
instead of the old style <mach/r8a7778.h>

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-25 16:48:02 +09:00
Geert Uytterhoeven
9e38b84b45 ARM: shmobile: Move r8a7740.h
Change location of r8a7740.h so it can be included as "r8a7740.h"
instead of the old style <mach/r8a7740.h>

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-25 16:47:57 +09:00
Geert Uytterhoeven
fac49568b0 ARM: shmobile: Move r8a73a4.h
Change location of r8a73a4.h so it can be included as "r8a73a4.h"
instead of the old style <mach/r8a73a4.h>

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-25 16:47:51 +09:00
Geert Uytterhoeven
96bd090066 ARM: shmobile: Move r7s72100.h
Change location of r7s72100.h so it can be included using "r7s72100.h"
instead of the old style <mach/r7s72100.h>.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-25 16:47:43 +09:00
Gaku Inami
3ed66ec5ce ARM: shmobile: Remove ARCH_HAS_CPUFREQ config for shmobile
The following commit has removed ARCH_HAS_CPUFREQ config:

 Commit: e49d9b375628e67c9a718f4befaa8e45e5fad21b
 Subject: ARM: Remove ARCH_HAS_CPUFREQ config option

This patch removes the code that is using ARCH_HAS_CPUFREQ
in mach-shmobile.

Signed-off-by: Gaku Inami <gaku.inami.xw@bp.renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-23 09:53:55 +09:00
Vincent Stehlé
14a5e92614 ARM: shmobile: rcar-gen2: update call to dma_contiguous_reserve_area
Commit 5ea3b1b2f8 'cma: add placement specifier for "cma=" kernel parameter'
adds a new 'fixed' parameter to dma_contiguous_reserve_area(). Update
rcar_gen2_reserve() accordingly.

This fixes the following compilation error:

  arch/arm/mach-shmobile/setup-rcar-gen2.c: In function ‘rcar_gen2_reserve’:
  arch/arm/mach-shmobile/setup-rcar-gen2.c:182:10: error: too few arguments to function ‘dma_contiguous_reserve_area’

Signed-off-by: Vincent Stehlé <vincent.stehle@laposte.net>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-23 09:15:58 +09:00
Linus Torvalds
58c72f94ef ARM: SoC fixes for 3.16
A first set of bug fixes that didn't make it for the merge window, and
 two Kconfig cleanups that still make sense at this point. Unfortunately,
 one of the two cleanups caused an unintended change in the original
 version, so we had to revert one part of it and do some more testing
 to ensure the rest is really fine. There was also a last-minute
 rebase of the patches to remove another bad commit.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQIVAwUAU6BdV2CrR//JCVInAQJHhRAAuBdFsBo1TuP/s45PHzcldEcmrlMa2aNx
 5t+qGxaYJW3DppW5Ql4L3O/74au77AcPpto8CwTRzshb2peXYwJ40RQXAyxPyE4z
 a2yjtz7VwX5P/BNjQZJ1OZLuMiMbVVz3ObIpNiPzooXm/y52ZZQ20AALmJcX7mor
 tAmdw3qmvy0L9SYikKd8qKuDTMLV6MWexa/fZn5AA5w11V3DWr/++/6+3g4+tQs8
 N8l5vk9Ok/5l+f67Ta0+R4Vh9OIcLnwYSzOKKhKebwMvxXcwPEz5HfmOSH/m3Zu1
 /dC4jWwB6Z95bevhJCoNaIf9b6s29EYy2lHw3nVRiQEFTmFACNgWjqFjiKa0aune
 2cKAPZAf3w8R15LveT9SuSwtuH8yVFVHqOyzUlxmbFszIqgzKxF933R7SSxQpLTn
 od5QVOqxMAMd4s6Jij7xgoF5GkvlKpfqEERKSz/Gt7I+ZINcxRhXXL55emy6IGmx
 jjhQa83mMgFS70Ys4ARB0Fcd1Em4v/fCPJE8UpSQHQOG3fq3QcdyxsKG0cHUJNK6
 ubS8W/XpQWvowJZ1YcnpYs3zAYchwueNPyCXVX9Hs3BTx7/3wnFfUNbdduD2GRVu
 iruBt+B/4KLHmiLQyt1TqZO1elel/CT/ARGvRjo8zMFoo2WXbopv1pjm7AQQ0SSb
 CtK7u+xxUa8=
 =/Ylr
 -----END PGP SIGNATURE-----

Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

Pull ARM SoC fixes from Arnd Bergmann:
 "A first set of bug fixes that didn't make it for the merge window, and
  two Kconfig cleanups that still make sense at this point.

  Unfortunately, one of the two cleanups caused an unintended change in
  the original version, so we had to revert one part of it and do some
  more testing to ensure the rest is really fine.  There was also a
  last-minute rebase of the patches to remove another bad commit"

* tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  ARM: use menuconfig for sub-arch menus
  ARM: multi_v7_defconfig: re-enable SDHCI drivers
  ARM: EXYNOS: Fix compilation warning
  ARM: exynos: move sysram info to exynos.c
  ARM: dts: Specify the NAND ECC scheme explicitly on Armada 385 DB board
  ARM: dts: Specify the NAND ECC scheme explicitly on Armada 375 DB board
  ARM: exynos: cleanup kconfig option display
  misc: vexpress: fix error handling vexpress_syscfg_regmap_init()
  ARM: Remove ARCH_HAS_CPUFREQ config option
  ARM: integrator: fix section mismatch problem
  ARM: mvebu: DT: fix OpenBlocks AX3-4 RAM size
  ARM: samsung: make SAMSUNG_DMADEV optional
  remoteproc: da8xx: don't select CMA on no-MMU
  bus/arm-cci: add dependency on OF && CPU_V7
  ARM: keystone requires ARM_PATCH_PHYS_VIRT
  ARM: omap2: fix am43xx dependency on l2x0 cache
2014-06-19 17:53:20 -10:00
Rob Herring
21278aeafb ARM: use menuconfig for sub-arch menus
The System Type menu is getting quite long with platforms and is
inconsistent in handling of sub-arch specific options. Tidy up the menu
by making platform options a menuconfig entry containing any platform
specific config items.

[arnd: change OMAP part according to suggestion from
 Tony Lindgren <tony@atomide.com>]

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-06-17 17:09:48 +02:00
Stephen Boyd
19682f72f5 ARM: Remove ARCH_HAS_CPUFREQ config option
This config exists entirely to hide the cpufreq menu from the
kernel configuration unless a platform has selected it. Nothing
is actually built if this config is 'Y' and it just leads to more
patches that add a select under a platform Kconfig so that some
other CPUfreq option can be chosen. Let's remove the option so
that we can always enable CPUfreq drivers on ARM platforms.

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2014-06-17 17:09:39 +02:00
Simon Horman
c1a0f9932b ARM: shmobile: marzen: Do not use workaround for scif devices
Now that SCIF devices are initialised using DT it should
not be necessary to use the work around to provide clocks any more.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:37 +09:00
Simon Horman
6d4abd79c8 ARM: shmobile: marzen: Initialise SCIF devices using DT
Initialise SCIF devices using DT when booting marzen
using multiplatform.

Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:36 +09:00
Simon Horman
daab540e3a ARM: shmobile: r8a7779: Remove unused r8a7779_init_delay()
Remove the now unused r8a7779_init_delay() function.

Based on work for the r8a7740 SoC by Magnus Damm.

Cc: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:33 +09:00
Simon Horman
17ed9efd8a ARM: shmobile: marzen-reference: Use DT CPU Frequency
Convert the Marzen DT reference board support to use shmobile_init_delay()
to be able to migrate away from per-SoC delay setup functions.

Based on work for the Armadillo800 EVA board by Magnus Damm.

Cc: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:33 +09:00
Simon Horman
0157b62674 ARM: shmobile: r8a7779: Use DT CPU Frequency in common case
Convert the common C-code-less r8a7779 DT board support
to use shmobile_init_delay() to be able to migrate away
from per-SoC delay setup functions.

Based on work by Magnus dam for the r8a7740 SoC.

Cc: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:32 +09:00
Simon Horman
f0b78f8b63 ARM: shmobile: marzen-reference: Remove legacy clock support
Marzen DT reference is now only built for multiplatform
which means that CCF comes with the package. Remove unused legacy
code ifdefs to clean up the code.

Based on similar work for the Koelsch board by Magnus Damm.

Cc: Magnus Damm <damm@opensource.se>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:31 +09:00
Simon Horman
04d3e8a0b1 ARM: shmobile: Let Marzen multiplatform boot with Marzen DTB
Let the multiplatform Marzen support boot with the legacy DTS for
Marzen as well as the Marzen reference DTS.

Based on work for the Koelsch board by Laurent Pinchart.

Cc: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:30 +09:00
Simon Horman
1ece7f7bb0 ARM: shmobile: Remove non-multiplatform Marzen reference support
Now that r8a7779 has CCF support remove the legacy Marzen reference
Kconfig bits CONFIG_MACH_MARZEN_REFERENCE for the non-multiplatform
case.

Starting from this commit Marzen board support is always enabled via
CONFIG_MACH_MARZEN, and CONFIG_ARCH_MULTIPLATFORM is used to select
between board-marzen.c and board-marzen-reference.c

The file board-marzen-reference.c can no longer be used together with
the legacy sh-clk clock framework, instead CCF is used.

Based on work for the Koelsch board by Laurent Pinchart.

Cc: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:29 +09:00
Simon Horman
2b2084e8d4 ARM: shmobile: marzen-reference: Instantiate clkdevs for SCIF and TMU
Now that the common clock framework is supported, the clock lookup
entries in clock-r8a7779.c are not registered anymore. Devices must
instead reference their clocks in the device tree. However, SCIF and CMT
devices are still instantiated through platform code, and thus need a
clock lookup entry.

Retrieve the SCIF and CMT clock entries by name and register clkdevs for
the corresponding devices. This will be removed when the SCIF and CMT
devices will be instantiated from the device tree.

Based on work for the Koelsch board by Laurent Pinchart.

Cc: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:29 +09:00
Simon Horman
a92fbd077b ARM: shmobile: marzen-reference: Initialize CPG device
On multiplatform kernels clocks are handled by the CCF CPG driver. It
must be explicitly initialized by a call to r8a7779_clocks_init() with
the value of the boot mode pins.

Based on similar work for the Koelsch board by Laurent Pinchart.

Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:28 +09:00
Simon Horman
5016c81bf9 ARM: shmobile: r8a7779: Initial multiplatform support
Add Marzen and r8a7779 to CONFIG_SHMOBILE_MULTI. At this
point CCF is not yet supported so you cannot run this code
yet. For CCF support to happen several different components
are needed, and this is one simple portion that moves us
forward. Other patches need to build on top of this one.

Marzen board support exists in 3 flavours:
1) SHMOBILE_MULTI, MACH_MARZEN - board-marzen-reference.c (CCF + DT)
2) SHMOBILE, MACH_MARZEN_REFERENCE - board-marzen-reference.c (DT)
3) SHMOBILE, MACH_MARZEN - board-marzen.c (legacy C code)

When CCF is done then 2) will be removed. When 1) includes same features
as 3) then 3) will be removed.

Based on work for the Koelsch and r8a7791 by Magnus Damm.

Cc: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:27 +09:00
Simon Horman
f8fba0ce66 ARM: shmobile: marzen-reference: Move clock and OF device initialisation into board code
Move the clock initialisation and OF device population from
SoC to board code. This is in keeping with the pattern used by Lager.
And the clock portion is part of decoupling clock initialisation
from SoC code in preparation for moving to the common clock framework.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:27 +09:00
Simon Horman
f48039a3da ARM: shmobile: r8a7779: Move r8a7779_earlytimer_init to clock-r8a7779.c
r8a7779_earlytimer_init() calls r8a7779_clock_init() and
r8a7779_clock_init() is defined in clock-r8a7779.c.

If both CONFIG_COMMON_CLK and CONFIG_ARCH_R8A7779 are enabled,
as will be the case when marzen-reference moves to use
the common clock framework, then setup-r8a7779.c is compiled
but clock-r8a7779.c is not.

As r8a7779_earlytimer_init() is not used by marzen-reference
simply move it to clock-r8a7779.c.

[horms+renesas@verge.net.au: rebase]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:26 +09:00
Simon Horman
3e05f24aa9 ARM: shmobile: r8a7779: Add helper to read mode pins
Add and use helper to read mode pins.
This will be re-used when moving marzen-reference to
the common clock framework.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:56:18 +09:00
Magnus Damm
d83fa4c9c2 ARM: shmobile: Remove unused r8a7790_init_early()
Remove the now unused r8a7790_init_early() function.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:50:35 +09:00
Magnus Damm
a5d626813f ARM: shmobile: Use r8a7790 DT CPU Frequency for Lager
Convert the Lager board support to use shmobile_init_delay()
to be able to migrate away from per-SoC delay setup functions.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:50:35 +09:00
Magnus Damm
ed06ecbcc6 ARM: shmobile: Use r8a7790 DT CPU Frequency in common case
Convert the common C-code-less r8a7790 DT board support
to use shmobile_init_delay() to be able to migrate away
from per-SoC delay setup functions.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:50:34 +09:00
Magnus Damm
b42a6f7e8f ARM: shmobile: Use shmobile_init_delay() on r7s72100
Adjust the r7s72100 SoC support code to use shmobile_init_delay()
together with CPU Frequency settings from the DTS. Get rid of the
C code version.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:50:34 +09:00
Magnus Damm
4387ac5282 ARM: shmobile: Use shmobile_init_delay() on Genmai boards
Adjust Genmai board support to use shmobile_init_delay() together
with r7s72100 CPU Frequency settings from the DTS.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:50:33 +09:00
Magnus Damm
af164ca33d ARM: shmobile: Get rid of redundant EMEV2 mach callbacks
Update the EMEV2 specific SoC callbacks to get rid
of the calls to of_clk_init() and of_platform_populate().
Those calls are by default executed by the functions in
the shared ARM code in case the SoC specific mach
callbacks are NULL.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:50:05 +09:00
Magnus Damm
5f65c5bd58 ARM: shmobile: Enable R-Car Gen2 CMA code in board files
Hook in the R-Car Gen2 CMA reservation code in the board
files for Lager and Koelsch. Both the DT-reference code
and the legacy code is modified.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:35:59 +09:00
Geert Uytterhoeven
8a0d1a2fcf ARM: shmobile: armadillo800eva reference: Spelling s/ED/LED/
And add missing spaces before opening parentheses

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:35:59 +09:00
Geert Uytterhoeven
111bcc1360 ARM: shmobile: armadillo800eva legacy: Add LED support
Cfr. r8a7740-armadillo800eva-reference.dts

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:35:58 +09:00
Geert Uytterhoeven
f47b9e1ec3 ARM: shmobile: lager-reference: Remove workarounds for core clock issues
Now the core clock issues have been fixed by commit
3c90c55dcd ("drivers: sh: compile
drivers/sh/pm_runtime.c if ARCH_SHMOBILE_MULTI"), revert the following
2 commits:
  - f98b55d730 ("ARM: shmobile: Add Lager
    clock workarounds for SDHI and MMCIF"),
  - aa5de826af ("ARM: shmobile:
    lager-reference: Work around core clock issues").

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:35:58 +09:00
Geert Uytterhoeven
d37e9b0b20 ARM: shmobile: koelsch-reference: Remove workarounds for core clock issues
Now the core clock issues have been fixed by commit
3c90c55dcd ("drivers: sh: compile
drivers/sh/pm_runtime.c if ARCH_SHMOBILE_MULTI"), revert the following
3 commits:
  - 4dcb4c80380dfa482874b931e308fd382597feab ("ARM: shmobile: Add Koelsch
    clock workarounds for SDHI"),
  - 8e4f394b20a0fe474dd88204d76978191566decf ("ARM: shmobile:
    koelsch-reference: Annotate clk_enables as __initconst"),
  - 3d75d9ea74fee6f5a4bdcbbdf2d577661d047eef ("ARM: shmobile:
    koelsch-reference: Work around core clock issues").

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:35:57 +09:00
Simon Horman
ecdaca4862 ARM: shmobile: rcar-gen2: correct return value of shmobile_smp_apmu_suspend_init
The dummy shmobile_smp_apmu_suspend_init() function provided when
CPU_IDLE is not set should not return a value as per the signature
of the function.

This problem appears to have been introduced by
867ba81f728f1daa ("ARM: shmobile: APMU: Add Core-Standby-state for Suspend
to RAM").

Cc: Keita Kobayashi <keita.kobayashi.ym@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:33:22 +09:00
Geert Uytterhoeven
ea2a0d581a ARM: shmobile: rcar-gen2: Remove useless copied section for LongTrail
Open Firmware in the CHRP LongTrail does not support plugging in ARM CPUs
in its PPC 603e/604e-compatible CPU socket ;-)

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:33:22 +09:00
Geert Uytterhoeven
b69f47c00f ARM: shmobile: rcar-gen2: Use "1ULL" instead of "(u64)1"
Casts are evil

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:33:22 +09:00
Geert Uytterhoeven
83850b04ae ARM: shmobile: rcar-gen2: Update for of_get_flat_dt_prop() update
Commit 9d0c4dfedd ("of/fdt: update
of_get_flat_dt_prop in prep for libfdt") changed the function prototypes
of of_get_flat_dt_prop():
  - The return type was made const,
  - The last parameter was changed from "unsigned long *" to "int *".
and dt_mem_next_cell():
  - The second parameter was made const.

This causes the following compiler warnings:

arch/arm/mach-shmobile/setup-rcar-gen2.c: In function 'rcar_gen2_scan_mem':
arch/arm/mach-shmobile/setup-rcar-gen2.c:125:15: warning: initialization discards 'const' qualifier from pointer target type [enabled by default]
arch/arm/mach-shmobile/setup-rcar-gen2.c:142:2: warning: passing argument 3 of 'of_get_flat_dt_prop' from incompatible pointer type [enabled by default]
include/linux/of_fdt.h:53:20: note: expected 'int *' but argument is of type 'long unsigned int *'
arch/arm/mach-shmobile/setup-rcar-gen2.c:142:6: warning: assignment discards 'const' qualifier from pointer target type [enabled by default]
arch/arm/mach-shmobile/setup-rcar-gen2.c:144:3: warning: passing argument 3 of 'of_get_flat_dt_prop' from incompatible pointer type [enabled by default]
include/linux/of_fdt.h:53:20: note: expected 'int *' but argument is of type 'long unsigned int *'
arch/arm/mach-shmobile/setup-rcar-gen2.c:144:7: warning: assignment discards 'const' qualifier from pointer target type [enabled by default]
arch/arm/mach-shmobile/setup-rcar-gen2.c:152:3: warning: passing argument 2 of 'dt_mem_next_cell' from incompatible pointer type [enabled by default]
include/linux/of_fdt.h:69:12: note: expected 'const __be32 **' but argument is of type '__be32 **'
arch/arm/mach-shmobile/setup-rcar-gen2.c:153:3: warning: passing argument 2 of 'dt_mem_next_cell' from incompatible pointer type [enabled by default]
include/linux/of_fdt.h:69:12: note: expected 'const __be32 **' but argument is of type '__be32 **'

Update the variable types in rcar_gen2_scan_mem() to fix this.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Magnus Damm <damm+renesas@opensource.se>
[horms+renesas@verge.net.au: rebased]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:33:22 +09:00
Magnus Damm
f8e819352d ARM: shmobile: Add shared R-Car Gen2 CMA reservation code
Add R-Car Gen2 CMA memory reservation code that can be
shared between multiple SoCs and boards. At this point
r8a7790 and r8a7791 are supported.

The top 256MiB of the legacy 32-bit physical memory space
is assigned to a separate CMA area that may be assigned
to various devices later on.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
[horms+renesas@verge.net.au: rebased]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:33:22 +09:00
Magnus Damm
3d65226bc9 ARM: shmobile: Use shmobile_init_late() on r8a7791 DT-only
Tie in shmobile_init_late for the DT-only r8a7791 SoC
Multiplatform support code. This will make sure that
Suspend-to-RAM, CPUIdle and CPUFreq get initialized.

Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-06-17 19:33:21 +09:00