msm: 9615: Add display support to board file
Add gpio, regulator configurations
Add frame buffer initialization
Change-Id: Ia1c0c0243258b81767c200a109fa0f7c88394fb2
Signed-off-by: Zhang Chang Ken <kenz@codeaurora.org>
diff --git a/arch/arm/mach-msm/board-9615-gpiomux.c b/arch/arm/mach-msm/board-9615-gpiomux.c
index e61f001..0e18918 100644
--- a/arch/arm/mach-msm/board-9615-gpiomux.c
+++ b/arch/arm/mach-msm/board-9615-gpiomux.c
@@ -85,6 +85,26 @@
.pull = GPIOMUX_PULL_NONE,
};
+#ifdef CONFIG_FB_MSM_EBI2
+static struct gpiomux_setting ebi2_lcdc_a_d = {
+ .func = GPIOMUX_FUNC_2,
+ .drv = GPIOMUX_DRV_12MA,
+ .pull = GPIOMUX_PULL_DOWN,
+};
+
+static struct gpiomux_setting ebi2_lcdc_cs = {
+ .func = GPIOMUX_FUNC_2,
+ .drv = GPIOMUX_DRV_12MA,
+ .pull = GPIOMUX_PULL_UP,
+};
+
+static struct gpiomux_setting ebi2_lcdc_rs = {
+ .func = GPIOMUX_FUNC_3,
+ .drv = GPIOMUX_DRV_12MA,
+ .pull = GPIOMUX_PULL_DOWN,
+};
+#endif
+
static struct msm_gpiomux_config msm9615_audio_codec_configs[] __initdata = {
{
.gpio = 24,
@@ -263,6 +283,29 @@
},
};
+#ifdef CONFIG_FB_MSM_EBI2
+static struct msm_gpiomux_config msm9615_ebi2_lcdc_configs[] __initdata = {
+ {
+ .gpio = 21, /* a_d */
+ .settings = {
+ [GPIOMUX_SUSPENDED] = &ebi2_lcdc_a_d,
+ },
+ },
+ {
+ .gpio = 22, /* cs */
+ .settings = {
+ [GPIOMUX_SUSPENDED] = &ebi2_lcdc_cs,
+ },
+ },
+ {
+ .gpio = 24, /* rs */
+ .settings = {
+ [GPIOMUX_SUSPENDED] = &ebi2_lcdc_rs,
+ },
+ },
+};
+#endif
+
int __init msm9615_init_gpiomux(void)
{
int rc;
@@ -289,5 +332,10 @@
msm_gpiomux_install(msm9615_audio_codec_configs,
ARRAY_SIZE(msm9615_audio_codec_configs));
+#ifdef CONFIG_FB_MSM_EBI2
+ msm_gpiomux_install(msm9615_ebi2_lcdc_configs,
+ ARRAY_SIZE(msm9615_ebi2_lcdc_configs));
+#endif
+
return 0;
}