Commit Graph

387743 Commits

Author SHA1 Message Date
Kuninori Morimoto
044e212146 ARM: shmobile: r8a7778: cleanup registration of usb phy
usb phy driver which needs platform data at the time of
registration is used from BockW only.
Now, ARM/shmobile aims to support DT,
and the C code base board support will be removed
if DT support is completed.
Current driver registration method which needs platform data
and which is not shared complicates codes.
This means legacy C code cleanup after DT supporting
will be more complicated
This patch registers it on board code as cleanup C code

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:09 +09:00
Kuninori Morimoto
a66c974457 ARM: shmobile: r8a7778: cleanup registration of mmcif
sh_mmcif driver which needs platform data at the time of
registration is used from BockW only.
Now, ARM/shmobile aims to support DT,
and the C code base board support will be removed
if DT support is completed.
Current driver registration method which needs platform data
and which is not shared complicates codes.
This means legacy C code cleanup after DT supporting
will be more complicated
This patch registers it on board code as cleanup C code

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:07:09 +09:00
Simon Horman
4e0f3fcfe2 Merge branch 'dt2' into cleanup3-base
Conflicts:
	arch/arm/mach-shmobile/Makefile.boot
2013-08-06 18:06:53 +09:00
Laurent Pinchart
8b3e32c1fe ARM: shmobile: r8a7740: Add TPU node to the device tree
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:06:23 +09:00
Simon Horman
dcbbbaf2ca ARM: shmobile: lager: enable nfsroot in DTS
Now that Ether support has been added to the lager board
it is possible to use nfsroot. This configuration is
in line with that of other shmobile boards.

Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 18:06:20 +09:00
Kuninori Morimoto
693ac41df3 ARM: shmobile: marzen: Use DT for GIC
Current Marzen is using DT booting,
and r8a7779.dtsi already has GIC settings.

So, we can remove the C version of the GIC setup code,
instead rely on GIC information provided by DT.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 11:18:40 +09:00
Kuninori Morimoto
15645581a9 ARM: shmobile: armadillo800eva: Use DT for GIC
Current Armadillo800eva is using DT booting,
and r8a7740.dtsi already has GIC settings.

So, we can remove the C version of the GIC setup code,
instead rely on GIC information provided by DT.

This patch removes r8a7740_init_irq() which has
no user any more

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-06 11:18:29 +09:00
Laurent Pinchart
d2f463a66a ARM: shmobile: Mount root file systems in r/w mode for all DT platforms
The shmobile DT files available in the kernel are reference
implementations intended to be used as sample code, as well as for
development. As such, it makes sense to mount the root file system in
read/write mode by default.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-08-05 16:45:33 +09:00
Magnus Damm
c95ebbb298 ARM: shmobile: emev2: add PMU information to emev2.dtsi
Add PMU information to emev2.dtsi. With this
included KZM9D DT reference may use the PMU.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-31 15:31:16 +09:00
Magnus Damm
4c90483a9c ARM: shmobile: sh73a0: add PMU information to sh73a0.dtsi
Add PMU information to sh73a0.dtsi. With this
included KZM9G DT reference may use the PMU.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-31 15:31:10 +09:00
Magnus Damm
b21ed4eb94 ARM: shmobile: r8a7740: add PMU information to r8a7740.dtsi
Add PMU information to r8a7740.dtsi. With this
included Armadillo800eva DT reference may use the PMU.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-31 15:31:05 +09:00
Lee Jones
98724b7ec9 ARM: shmobile: r8a7779: Remove '0x's from R8A7779 DTS file
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-30 14:21:43 +09:00
Simon Horman
afad20105a ARM: shmobile: r8a7779: Rely on DT for SMP CPU info
Remove r8a7779 specific ->smp_init_cpus() callback and
instead of relying on shmobile_smp_init_cpus() simply
use DT for CPU core information.

Based on work for the sh73a0 by Magnus Damm.

Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-30 13:28:07 +09:00
Magnus Damm
7ebbb4ae6f ARM: shmobile: marzen: Switch to DT_MACHINE_START
Convert the marzen board to use DT_MACHINE_START. With this in
place all mach-shmobile boards use DT_MACHINE_START. Also, this
makes it possible for the r8a7779 SMP code to use DT for CPUs.

Signed-off-by: Magnus Damm <damm@opensource.se>
[horms+renesas@verge.net.au: Select USE_OF in Kconfig]
[horms+renesas@verge.net.au: Provide dt_compat in DT_MACHINE_START]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-30 13:28:01 +09:00
Simon Horman
d6b51d6b6a ARM: shmobile: marzen: Add r8a7779-marzen.dtb
This is in preparation for converting the marzen board to
use DT_MACHINE_START.

Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-30 13:27:56 +09:00
Kuninori Morimoto
fee529df76 ARM: shmobile: r8a7779: cleanup registration of usb phy
usb phy driver which needs platform data at the time of
registration is used from Marzen only.
Now, ARM/shmobile aims to support DT,
and the C code base board support will be removed
if DT support is completed.
Current driver registration method which needs platform data
and which is not shared complicates codes.
This means legacy C code cleanup after DT supporting
will be more complicated
This patch registers it on board code as cleanup C code

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-30 11:41:11 +09:00
Guennadi Liakhovetski
59b2bc34aa ARM: shmobile: ape6evm-reference: switch PFC to DT
PFC pinctrl configuration can now be performed via DT. Update
ape6evm-reference to use this.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-30 11:21:41 +09:00
Magnus Damm
5489cde560 ARM: shmobile: sh73a0: Rely on DT for SMP CPU info
Remove sh73a0 specific ->smp_init_cpus() callback and
instead of relying on shmobile_smp_init_cpus() simply
use DT for CPU core information.

This assumes that DT_MACHINE_START is used which is
the case when AG5EVM and Kota2 are removed.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-26 09:19:54 +09:00
Kuninori Morimoto
cfa66a8162 ARM: shmobile: bockw: add DT reference
This patch adds a sample DT-based Bock-W "reference" implementation.
The use of platform-specific C-code should be avoided
with this configuration as much as possible.

This patch adds new r8a7778_add_dt_devices() which was same stance
of r8a7790_add_dt_devices()

Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-26 09:17:32 +09:00
Magnus Damm
d2ef0b9a51 ARM: shmobile: No need to use INTC header on r8a7779
Now when the intc-irqpin driver is used for external
IRQ pins on r8a7779 it possible to get rid of unused
INTC headers mach/intc.h and linux/sh_intc.h.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-25 14:46:47 +09:00
Magnus Damm
d76c626d31 ARM: shmobile: No need to use INTC demux on r8a7740
Now when the r8a7740 code has been converted to make use of
GIC instead of INTC for root interrupt controller it is
possible to exclude the low level INTC demux function
shmobile_handle_irq_intc from linking.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-25 14:45:19 +09:00
Magnus Damm
0173a741e1 ARM: shmobile: Use pm-rmobile on sh7372 and r8a7740 only
The functions in pm-rmobile.c are only used on sh7372 and
r8a7740, so adjust the Makefile to only link in that file
in case those SoCs are selected.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-25 14:45:18 +09:00
Magnus Damm
67fde41ea4 ARM: shmobile: r8a73a4: Remove ->init_machine() special case
No need to special case r8a73a4 ->init_machine(),
so get rid of undesired cpufreq platform device
from the generic long term r8a73a4 DT support code.

For short term support on APE6EVM the DT reference
implementation already adds a "cpufreq-cpu0" platform
device so that can be used for development.

Regarding more long term cpufreq support, perhaps
it makes sense to adjust the cpufreq driver to check
for DT information directly instead of using a
platform device for software configuration and DT
for hardware parameters.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24 16:35:30 +09:00
Magnus Damm
5717bcf371 ARM: shmobile: Remove include <mach/hardware.h>
Now when no one is using this file, remove <mach/hardware.h>.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24 16:35:25 +09:00
Magnus Damm
85469abe49 ARM: shmobile: Remove Marzen use of <mach/hardware.h>
Remove unused <mach/hardware.h> on Marzen.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24 16:35:24 +09:00
Magnus Damm
603e45827b ARM: shmobile: Remove r8a7779 use of <mach/hardware.h>
Remove unused <mach/hardware.h> on r8a7779.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24 16:35:24 +09:00
Magnus Damm
7ffdc70e14 ARM: shmobile: Remove EMEV2 use of <mach/hardware.h>
Remove unused <mach/hardware.h> on EMEV2.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24 16:35:24 +09:00
Magnus Damm
3a8e257f24 ARM: shmobile: Remove sh7372 use of <mach/hardware.h>
Remove unused <mach/hardware.h> on sh7372.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24 16:35:24 +09:00
Magnus Damm
fb0724805e ARM: shmobile: Remove sh73a0 use of <mach/hardware.h>
Remove unused <mach/hardware.h> on sh73a0.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24 16:35:24 +09:00
Simon Horman
c0bb9b3027 ARCH: ARM: shmobile: Remove ag5evm board support
Remove support for the sh73a0 based ag5evm board.

The sh73a0 SoC is continued to be supported using
the kzm9g board.

Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24 16:35:23 +09:00
Simon Horman
5fa6d27612 ARCH: ARM: shmobile: Remove kota2 board support
Remove support for the sh73a0 based kota2 board.

The sh73a0 SoC is continued to be supported using
the kzm9g board.

Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-24 16:35:23 +09:00
Simon Horman
4431374926 Merge branches 'tpu-pwm', 'backlight' and 'soc' into cleanup2-base 2013-07-24 16:35:12 +09:00
Laurent Pinchart
466f302e07 ARM: shmobile: lager-reference: Add LED6-LED8 to the device tree
LED6 to LED8 are GPIO LEDs. Add corresponding DT nodes.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-23 10:05:34 +09:00
Laurent Pinchart
ae3e4c2776 leds: Remove leds-renesas-tpu driver
The driver is superseded by the generic pwm-renesas-tpu driver used with
leds-pwm.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Bryan Wu <cooloney@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-22 10:16:54 +09:00
Laurent Pinchart
e6909dcedb ARM: shmobile: sh73a0: Remove all GPIOs
Function GPIOs are not used anymore, and all code use the GPIO numbers
directly. Remove the GPIOs enumeration.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-19 11:22:47 +09:00
Laurent Pinchart
b885966f61 ARM: shmobile: kota2: Use leds-pwm + pwm-rmob
Instead of using the LED-specific TPU PWM driver, switch to the generic
TPU PWM driver with leds-pwm.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-19 11:22:47 +09:00
Laurent Pinchart
d58226a21a ARM: shmobile: armadillo800eva: Add backlight support
The flat panel backlight on the Armadillo 800 EVA board is driven by the
TPU PWM output.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Tested-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-19 11:22:46 +09:00
Magnus Damm
d144f3623a ARM: shmobile: Minor update for the Lager DT reference code
Update the Lager DT reference code to get rid of the redundant
irqchip header and also make lager_add_standard_devices() static.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:30:03 +09:00
Simon Horman
6dace67f9b ARM: shmobile: lager: Add DT reference
This is sufficient to allow boot of the Lager board with
a console without boards-lager.c compiled into the kernel.
This is an example of a minimal but still useful initialisation
of the board using DT as much as possible.

As such it is the same as the boot of Lager that can be achieved
without a board file. The intention of adding this file
is to facilitate further work to allow board specific devices to be
initialised via DT.

Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:30:03 +09:00
Guennadi Liakhovetski
b88cf6f732 ARM: shmobile: ape6evm-reference: add CPUFreq support
Add CPUFreq support to ape6evm-reference, using a max8973 regulator, that
is supplying V_DVFS for the 4 CA15 cores on r8a73a4.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:28:31 +09:00
Guennadi Liakhovetski
69f366615e ARM: shmobile: ape6evm: add DT reference
This patch adds a sample DT-based APE6EVM "reference" implementation. The
use of platform-specific C-code should be avoided with this configuration
as much as possible.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:28:31 +09:00
Magnus Damm
81b9d5351f ARM: shmobile: Setup r8a7790 arch timer based on MD pins
Update the r8a7790 arch timer setup code to configure the
frequency dynamically at boot time. This means that the arch
timer driver will be able to detect a timer frequency that
has been calculated based on the MD pins instead of a fixed
and potentially incorrect 13 MHz.

With this patch applied the Linux kernel will correctly
support the r8a7790 Lager board that uses a 20 Mhz EXTAL.
The arch timer will operate on 10 MHz and the Linux arch
timer driver will be correctly configured to use 10 MHz.

Without this patch the 20 MHz EXTAL will be used to drive
the arch timer at 10 MHz, but the Linux arch timer driver
will believe it is counting at 13 Mhz.

Reported-by: Ulrich Hecht <ulrich.hecht@gmail.com>
Signed-off-by: Magnus Damm <damm@opensource.se>
Tested-by: Ulrich Hecht <ulrich.hecht@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:26:56 +09:00
Magnus Damm
512e53bc7f ARM: shmobile: Introduce r8a7790_read_mode_pins()
Break out the r8a7790 boot mode code into a separate
function so it can be shared by multiple users.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:26:56 +09:00
Guennadi Liakhovetski
9a1456242c ARM: shmobile: r8a7740: add MMCIF DMA definitions
Add DMA channel slave IDs and configuration entries for the r8a7740
MMCIF controller.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:26:55 +09:00
Magnus Damm
8d7217e5d7 ARM: shmobile: Disconnect EMEV2 SMP code from clocks
Update the EMEV2 SMP code to access the SMU directly
instead of relying on help from the legacy clock code.

This change moves us one step closer to common clocks.

Signed-off-by: Magnus Damm <damm@opensource.se>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:26:55 +09:00
Magnus Damm
b9a30ef1d3 ARM: shmobile: Make r8a73a4 Arch timer optional
Update the r8a73a4 code to allow using other
timers than Arch timer for clock event

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:26:54 +09:00
Magnus Damm
a7b99f27a2 ARM: shmobile: Add r8a73a4 CMT10 clock event
Add clock event support for CMT1 timer channel 0
to the r8a73a4 SoC code. The CMT is used together
with a 32KHz clock in this case.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:26:53 +09:00
Magnus Damm
8333d8c995 ARM: shmobile: Make r8a7790 Arch timer optional
Update the r8a7790 code to allow using other
timers than Arch timer for clock events.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:26:53 +09:00
Magnus Damm
99ade1a0f0 ARM: shmobile: Add r8a7790 CMT00 clock event
Add clock event support for CMT0 timer channel 0
to the r8a7790 SoC code. On most ARM mach-shmobile
the CMT is hooked up to a 32KHz clock but on r8a7790
a 31.7KHz clock is instead used.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:26:49 +09:00
Magnus Damm
29eb2ba89c ARM: shmobile: Sort r8a7790 MSTP entries
The r8a7790 MSTP bits should be kept sorted in the same way
as on other mach-shmobile SoCs. Move the HSCIF and thermal
bits to clean up the current state.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17 14:25:38 +09:00