[RFC 3/3] ARM: omap4: Add pinmux map in SDP and PANDA board files
Rajendra Nayak
rnayak at ti.com
Mon Nov 14 12:40:09 UTC 2011
Register pinmux mappings for SDP and PANDA from board files.
Retain the existing mux configurations as they do pull up/down
configuration as well which are not handled currently.
Signed-off-by: Rajendra Nayak <rnayak at ti.com>
---
arch/arm/mach-omap2/board-4430sdp.c | 10 ++++++++++
arch/arm/mach-omap2/board-omap4panda.c | 11 +++++++++++
2 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c
index 5156468..136597e 100644
--- a/arch/arm/mach-omap2/board-4430sdp.c
+++ b/arch/arm/mach-omap2/board-4430sdp.c
@@ -25,6 +25,7 @@
#include <linux/regulator/fixed.h>
#include <linux/leds.h>
#include <linux/leds_pwm.h>
+#include <linux/pinctrl/machine.h>
#include <mach/hardware.h>
#include <mach/omap4-common.h>
@@ -942,6 +943,12 @@ static void omap4_sdp4430_wifi_init(void)
platform_device_register(&omap_vwlan_device);
}
+/* Pinmux settings */
+static struct pinmux_map omap_pinmux_map[] = {
+ PINMUX_MAP_PRIMARY_SYS_HOG("HDMI", "hdmi"),
+ PINMUX_MAP_PRIMARY_SYS_HOG("SDMMC5", "sdmmc5"),
+};
+
static void __init omap_4430sdp_init(void)
{
int status;
@@ -950,6 +957,9 @@ static void __init omap_4430sdp_init(void)
if (omap_rev() == OMAP4430_REV_ES1_0)
package = OMAP_PACKAGE_CBL;
omap4_mux_init(board_mux, NULL, package);
+ /* Initialize pinmuxing */
+ pinmux_register_mappings(omap_pinmux_map,
+ ARRAY_SIZE(omap_pinmux_map));
omap4_i2c_init();
omap_sfh7741prox_init();
diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c
index a8c2c42..05c7927 100644
--- a/arch/arm/mach-omap2/board-omap4panda.c
+++ b/arch/arm/mach-omap2/board-omap4panda.c
@@ -28,6 +28,7 @@
#include <linux/regulator/machine.h>
#include <linux/regulator/fixed.h>
#include <linux/wl12xx.h>
+#include <linux/pinctrl/machine.h>
#include <mach/hardware.h>
#include <mach/omap4-common.h>
@@ -548,6 +549,13 @@ void omap4_panda_display_init(void)
omap_display_init(&omap4_panda_dss_data);
}
+/* Pinmux settings */
+static struct pinmux_map omap_pinmux_map[] = {
+ PINMUX_MAP_PRIMARY_SYS_HOG("HDMI", "hdmi"),
+ PINMUX_MAP_PRIMARY_SYS_HOG("SDMMC5", "sdmmc5"),
+ PINMUX_MAP_PRIMARY_SYS_HOG("DISPC2", "dispc2"),
+};
+
static void __init omap4_panda_init(void)
{
int package = OMAP_PACKAGE_CBS;
@@ -555,6 +563,9 @@ static void __init omap4_panda_init(void)
if (omap_rev() == OMAP4430_REV_ES1_0)
package = OMAP_PACKAGE_CBL;
omap4_mux_init(board_mux, NULL, package);
+ /* Initialize pinmuxing */
+ pinmux_register_mappings(omap_pinmux_map,
+ ARRAY_SIZE(omap_pinmux_map));
if (wl12xx_set_platform_data(&omap_panda_wlan_data))
pr_err("error setting wl12xx data\n");
--
1.7.1
More information about the linaro-dev
mailing list