select RENESAS_INTC_IRQPIN
config ARCH_R8A7778
- ---- -- bool "R-Car M1 (R8A77780)"
+ ++++ ++ bool "R-Car M1A (R8A77781)"
+ ++ ++ select ARCH_WANT_OPTIONAL_GPIOLIB
select CPU_V7
select SH_CLK_CPG
select ARM_GIC
select ARCH_REQUIRE_GPIOLIB
select REGULATOR_FIXED_VOLTAGE if REGULATOR
-------- -config MACH_BONITO
-------- - bool "bonito board"
- depends on ARCH_R8A7740
- select ARCH_REQUIRE_GPIOLIB
- select REGULATOR_FIXED_VOLTAGE if REGULATOR
-
++ +++++ +config MACH_ARMADILLO800EVA
++ +++++ + bool "Armadillo-800 EVA board"
depends on ARCH_R8A7740
select ARCH_REQUIRE_GPIOLIB
select REGULATOR_FIXED_VOLTAGE if REGULATOR
++ +++++ + select SND_SOC_WM8978 if SND_SIMPLE_CARD
++ +++++ + select USE_OF
-- ----- -config MACH_ARMADILLO800EVA
-- ----- - bool "Armadillo-800 EVA board"
++ +++++++config MACH_ARMADILLO800EVA_REFERENCE
++ +++++++ bool "Armadillo-800 EVA board - Reference Device Tree Implementation"
+ depends on ARCH_R8A7740
+ select ARCH_REQUIRE_GPIOLIB
+ select REGULATOR_FIXED_VOLTAGE if REGULATOR
+ select SND_SOC_WM8978 if SND_SIMPLE_CARD
+ select USE_OF
++ +++++++ ---help---
++ +++++++ Use reference implementation of Aramdillo800 EVA board support
++ +++++++ which makes a greater use of device tree at the expense
++ +++++++ of not supporting a number of devices.
++ +++++++
++ +++++++ This is intended to aid developers
+
config MACH_BOCKW
bool "BOCK-W platform"
depends on ARCH_R8A7778
#include <mach/r8a7790.h>
#include <asm/mach/arch.h>
--------- static const struct resource pfc_resources[] = {
+++++++++ static struct resource pfc_resources[] __initdata = {
DEFINE_RES_MEM(0xe6060000, 0x250),
- -- -- DEFINE_RES_MEM(0xe6050000, 0x5050),
};
- - -- static struct resource r8a7790_gpio##idx##_resources[] = { \
+ ++ ++ #define R8A7790_GPIO(idx) \
- - -- static struct gpio_rcar_config r8a7790_gpio##idx##_platform_data = { \
+++++++++ static struct resource r8a7790_gpio##idx##_resources[] __initdata = { \
+ ++ ++ DEFINE_RES_MEM(0xe6050000 + 0x1000 * (idx), 0x50), \
+ ++ ++ DEFINE_RES_IRQ(gic_spi(4 + (idx))), \
+ ++ ++ }; \
+ ++ ++ \
+++++++++ static struct gpio_rcar_config r8a7790_gpio##idx##_platform_data __initdata = { \
+ ++ ++ .gpio_base = 32 * (idx), \
+ ++ ++ .irq_base = 0, \
+ ++ ++ .number_of_pins = 32, \
+ ++ ++ .pctl_name = "pfc-r8a7790", \
+ ++ ++ .has_both_edge_trigger = 1, \
+ ++ ++ }; \
+ ++ ++
+ ++ ++ R8A7790_GPIO(0);
+ ++ ++ R8A7790_GPIO(1);
+ ++ ++ R8A7790_GPIO(2);
+ ++ ++ R8A7790_GPIO(3);
+ ++ ++ R8A7790_GPIO(4);
+ ++ ++ R8A7790_GPIO(5);
+ ++ ++
+ ++ ++ #define r8a7790_register_gpio(idx) \
+ ++ ++ platform_device_register_resndata(&platform_bus, "gpio_rcar", idx, \
+ ++ ++ r8a7790_gpio##idx##_resources, \
+ ++ ++ ARRAY_SIZE(r8a7790_gpio##idx##_resources), \
+ ++ ++ &r8a7790_gpio##idx##_platform_data, \
+ ++ ++ sizeof(r8a7790_gpio##idx##_platform_data))
+ ++ ++
void __init r8a7790_pinmux_init(void)
{
platform_device_register_simple("pfc-r8a7790", -1, pfc_resources,
[index] = { \
SCIF_COMMON(PORT_SCIF, baseaddr, irq), \
.scbrr_algo_id = SCBRR_ALGO_2, \
------ --- .scscr = SCSCR_RE | SCSCR_TE | SCSCR_CKE1, \
++++++ +++ .scscr = SCSCR_RE | SCSCR_TE, \
+ ++ + }
+ ++ +
- - ---enum { SCIFA0, SCIFA1, SCIFB0, SCIFB1, SCIFB2, SCIFA2, SCIF0, SCIF1 };
++++++ +++#define HSCIF_DATA(index, baseaddr, irq) \
++++++ +++[index] = { \
++++++ +++ SCIF_COMMON(PORT_HSCIF, baseaddr, irq), \
++++++ +++ .scbrr_algo_id = SCBRR_ALGO_6, \
++++++ +++ .scscr = SCSCR_RE | SCSCR_TE, \
+ + +++}
+ + +++
- -- - enum { SCIFA0, SCIFA1, SCIFB0, SCIFB1, SCIFB2, SCIFA2, SCIF0, SCIF1 };
++++++ +++enum { SCIFA0, SCIFA1, SCIFB0, SCIFB1, SCIFB2, SCIFA2, SCIF0, SCIF1,
++++++ +++ HSCIF0, HSCIF1 };
--------- static const struct plat_sci_port scif[] = {
+++++++++ static struct plat_sci_port scif[] __initdata = {
SCIFA_DATA(SCIFA0, 0xe6c40000, gic_spi(144)), /* SCIFA0 */
SCIFA_DATA(SCIFA1, 0xe6c50000, gic_spi(145)), /* SCIFA1 */
SCIFB_DATA(SCIFB0, 0xe6c20000, gic_spi(148)), /* SCIFB0 */