ARM: Undelete KZM9D mach-type

Undelete the KZM9D mach-type to allow build of board
for EMEV2 SoC support.

Signed-off-by: Magnus Damm <damm@opensource.se>

N.B: Not present upstream

Signed-off-by: Simon Horman <horms@verge.net.au>
gpio: Emma Mobile GPIO driver

This patch adds a GPIO driver for the Emma Mobile line
of SoCs. The driver is designed to be reusable between
multiple SoCs that share the same basic building block,
but so far it has only been used on Emma Mobile EV2.

Each driver instance handles 32 GPIOs with individually
maskable IRQs. The driver operates on two I/O memory
ranges and the 32 GPIOs are hooked up to two interrupts.

In the case of Emma Mobile EV2 this GPIO building block
is used as main external interrupt controller hooking up
159 GPIOS as 159 interrupts via 5 driver instances and
10 interrupts to the GIC and the Cortex-A9 Dual.

This version of the driver gets all configuration via
struct resource and platform data, but DT bindings are
currently in development and such support will be sent
as a individual feature patch in the near future.

Signed-off-by: Magnus Damm <damm@opensource.se>

N.B: This driver has been merged upsteram
as commit a07e103ef08c6907d695a06467d7ee950796fccf.
However, this code is an earlier version of
the driver that doesn't make use of infrastructure
that isn't present in Linux 3.0.

Signed-off-by: Simon Horman <horms@verge.net.au>
mach-shmobile: Emma Mobile EV2 SoC base support V3

This is V3 of the Emma Mobile EV2 SoC support.
Included here is support for serial and timer
devices which is just about enough to boot a kernel.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
(cherry picked from commit 7f627f0380cb5ba3e05bcaac31ecf40c1f508ec1)

Conflicts:
	arch/arm/mach-shmobile/Kconfig
	arch/arm/mach-shmobile/Makefile

Signed-off-by: Simon Horman <horms@verge.net.au>
mach-shmobile: KZM9D board support V3

V3 of basic KZM9D board support. At this point a quite
thin layer that makes use of the Emma Mobile EV2 SoC code.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
(cherry picked from commit c050fb10c425cf189da5ca9b84e948ec2fc99049)

Conflicts:
	arch/arm/mach-shmobile/Makefile
	arch/arm/mach-shmobile/clock-emev2.c

Signed-off-by: Simon Horman <horms@verge.net.au>
mach-shmobile: Emma Mobile EV2 SMP support V3

This is V3 of Emma Mobile EV2 SMP support.

At this point only the most basic form of SMP operation
is supported. TWD and CPU Hotplug support is excluded.

Tied to both the Emma Mobile EV2 and the KZM9D board
due to the need to switch on board in platsmp.c and
the newly introduced need for static mappings.

The static mappings are needed to allow hardware
acces early during boot when SMP is initialized.
This early requirement forces us to also map in
the SMU registers.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
(cherry picked from commit bd5a875d90c878be4d23f54ea565253734ae2377)

Conflicts:
	arch/arm/mach-shmobile/Makefile
	arch/arm/mach-shmobile/platsmp.c

Signed-off-by: Simon Horman <horms@verge.net.au>
mach-shmobile: Emma Mobile EV2 GPIO support V3

Tie in the Emma Mobile GPIO driver "em-gio" to
support the GPIOs on Emma Mobile EV2.

A static IRQ range is used to allow boards to
hook up their platform devices to the GPIOs.

DT support is still on the TODO for the GPIO driver,
so only platform device support is included here.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
(cherry picked from commit 088efd9273b5076a0aead479aa31f1066d182b3e)

Signed-off-by: Simon Horman <horms@verge.net.au>
mach-shmobile: KZM9D board Ethernet support V3

Tie in the on-board Ethernet controller on KZM9D
and make use of the GPIO controller for external
IRQ pin support.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
(cherry picked from commit 0c73f7bc124e1657a583d9dfb0d168a69005e2d3)

Signed-off-by: Simon Horman <horms@verge.net.au>