aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile/board-marzen.c
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>2013-03-06 08:22:11 -0500
committerLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>2013-03-15 08:34:12 -0400
commit4a655ecd30caae31aba3363f83e0f8d236da9570 (patch)
treec22fb600eab16ae9e38b566182b6b7dd38035e75 /arch/arm/mach-shmobile/board-marzen.c
parent26e19bd48137fde1a4be575faa9bb3157b0db8a3 (diff)
ARM: shmobile: marzen: Register pinctrl mappings for SDHI and MMCIF
Replace the GPIO-based SDHI and MMCIF pinmux configuration by pinctrl mappings Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Diffstat (limited to 'arch/arm/mach-shmobile/board-marzen.c')
-rw-r--r--arch/arm/mach-shmobile/board-marzen.c25
1 files changed, 15 insertions, 10 deletions
diff --git a/arch/arm/mach-shmobile/board-marzen.c b/arch/arm/mach-shmobile/board-marzen.c
index fec49ebc359a..f00677fcc78a 100644
--- a/arch/arm/mach-shmobile/board-marzen.c
+++ b/arch/arm/mach-shmobile/board-marzen.c
@@ -27,6 +27,7 @@
27#include <linux/io.h> 27#include <linux/io.h>
28#include <linux/gpio.h> 28#include <linux/gpio.h>
29#include <linux/dma-mapping.h> 29#include <linux/dma-mapping.h>
30#include <linux/pinctrl/machine.h>
30#include <linux/regulator/fixed.h> 31#include <linux/regulator/fixed.h>
31#include <linux/regulator/machine.h> 32#include <linux/regulator/machine.h>
32#include <linux/smsc911x.h> 33#include <linux/smsc911x.h>
@@ -327,6 +328,18 @@ void __init marzen_init_late(void)
327 ARRAY_SIZE(marzen_late_devices)); 328 ARRAY_SIZE(marzen_late_devices));
328} 329}
329 330
331static const struct pinctrl_map marzen_pinctrl_map[] = {
332 /* SDHI0 */
333 PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779",
334 "sdhi0_data4", "sdhi0"),
335 PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779",
336 "sdhi0_ctrl", "sdhi0"),
337 PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779",
338 "sdhi0_cd", "sdhi0"),
339 PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779",
340 "sdhi0_wp", "sdhi0"),
341};
342
330static void __init marzen_init(void) 343static void __init marzen_init(void)
331{ 344{
332 regulator_register_always_on(0, "fixed-3.3V", fixed3v3_power_consumers, 345 regulator_register_always_on(0, "fixed-3.3V", fixed3v3_power_consumers,
@@ -334,6 +347,8 @@ static void __init marzen_init(void)
334 regulator_register_fixed(1, dummy_supplies, 347 regulator_register_fixed(1, dummy_supplies,
335 ARRAY_SIZE(dummy_supplies)); 348 ARRAY_SIZE(dummy_supplies));
336 349
350 pinctrl_register_mappings(marzen_pinctrl_map,
351 ARRAY_SIZE(marzen_pinctrl_map));
337 r8a7779_pinmux_init(); 352 r8a7779_pinmux_init();
338 353
339 /* SCIF2 (CN18: DEBUG0) */ 354 /* SCIF2 (CN18: DEBUG0) */
@@ -348,16 +363,6 @@ static void __init marzen_init(void)
348 gpio_request(GPIO_FN_EX_CS0, NULL); /* nCS */ 363 gpio_request(GPIO_FN_EX_CS0, NULL); /* nCS */
349 gpio_request(GPIO_FN_IRQ1_B, NULL); /* IRQ + PME */ 364 gpio_request(GPIO_FN_IRQ1_B, NULL); /* IRQ + PME */
350 365
351 /* SD0 (CN20) */
352 gpio_request(GPIO_FN_SD0_CLK, NULL);
353 gpio_request(GPIO_FN_SD0_CMD, NULL);
354 gpio_request(GPIO_FN_SD0_DAT0, NULL);
355 gpio_request(GPIO_FN_SD0_DAT1, NULL);
356 gpio_request(GPIO_FN_SD0_DAT2, NULL);
357 gpio_request(GPIO_FN_SD0_DAT3, NULL);
358 gpio_request(GPIO_FN_SD0_CD, NULL);
359 gpio_request(GPIO_FN_SD0_WP, NULL);
360
361 /* HSPI 0 */ 366 /* HSPI 0 */
362 gpio_request(GPIO_FN_HSPI_CLK0, NULL); 367 gpio_request(GPIO_FN_HSPI_CLK0, NULL);
363 gpio_request(GPIO_FN_HSPI_CS0, NULL); 368 gpio_request(GPIO_FN_HSPI_CS0, NULL);