From: Simon Horman Date: Tue, 18 Jun 2013 07:47:43 +0000 (+0900) Subject: Merge branches 'heads/defconfig', 'heads/boards', 'heads/dt', 'heads/intc-external... X-Git-Tag: next-20130619~10^2~1 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=c8c53bcb63adfed61883b4cebafb32a6c8eb5fc2;p=karo-tx-linux.git Merge branches 'heads/defconfig', 'heads/boards', 'heads/dt', 'heads/intc-external-irq', 'heads/pinmux', 'heads/boards-marzen-fixes', 'heads/sh-sci', 'heads/gpio-rcar', 'heads/cleanup-boot' and 'heads/cleanup' into next Conflicts: arch/arm/mach-shmobile/setup-r8a7790.c --- c8c53bcb63adfed61883b4cebafb32a6c8eb5fc2 diff --cc arch/arm/mach-shmobile/Kconfig index 1a517e2fe449,5414402938a5,c6fb9ec8d15b,1a517e2fe449,06da4d36bc7c,1a517e2fe449,f871f2a65e73,06da4d36bc7c,69a31bc07302,5414402938a5..a3953c5b5920 --- a/arch/arm/mach-shmobile/Kconfig +++ b/arch/arm/mach-shmobile/Kconfig @@@@@@@@@@@ -36,7 -36,8 -36,7 -36,7 -36,8 -36,7 -36,7 -36,8 -36,8 -36,8 +36,8 @@@@@@@@@@@ config ARCH_R8A774 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 @@@@@@@@@@@ -115,20 -116,20 -115,34 -115,20 -116,20 -115,20 -115,20 -116,20 -95,14 -116,20 +95,28 @@@@@@@@@@@ config MACH_KOTA 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 diff --cc arch/arm/mach-shmobile/setup-r8a7790.c index 49de2d56f86d,b461d93431ed,49de2d56f86d,49de2d56f86d,b461d93431ed,49de2d56f86d,6531f3d3a696,b461d93431ed,b461d93431ed,196bd7325df0..28f94752b8ff --- a/arch/arm/mach-shmobile/setup-r8a7790.c +++ b/arch/arm/mach-shmobile/setup-r8a7790.c @@@@@@@@@@@ -29,11 -30,38 -29,11 -29,11 -30,38 -29,11 -29,11 -30,38 -30,38 -30,38 +30,38 @@@@@@@@@@@ #include #include --------- static const struct resource pfc_resources[] = { +++++++++ static struct resource pfc_resources[] __initdata = { DEFINE_RES_MEM(0xe6060000, 0x250), - -- -- DEFINE_RES_MEM(0xe6050000, 0x5050), }; + ++ ++ #define R8A7790_GPIO(idx) \ - - -- static struct resource r8a7790_gpio##idx##_resources[] = { \ +++++++++ 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 = { \ +++++++++ 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, @@@@@@@@@@@ -64,12 -98,12 -64,12 -64,12 -98,12 -64,12 -64,20 -98,12 -98,12 -98,12 +98,20 @@@@@@@@@@@ [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 */