summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-ardbeg-panel.c
diff options
context:
space:
mode:
authorTerry Wang <terwang@nvidia.com>2013-12-03 18:11:07 +0800
committerBitan Biswas <bbiswas@nvidia.com>2013-12-06 05:57:26 -0800
commitc1cfeb37f79059f2515f1f5270c43faf217dd682 (patch)
tree9d76f311659a645a5a19f978edf55c6e420f7744 /arch/arm/mach-tegra/board-ardbeg-panel.c
parentcae0daab174f34379585d70990b75e69a852395c (diff)
ARM: tegra12: ardbeg: put DSIC/D into DPD mode
Put DSIC/D pads into DPD mode to save additional power for Ardbeg and TN8 when 19x12 Dumb panel is used. Bug 1416110 Change-Id: I6944435a83c4541a5334e46ac1a510d1bced84ee Signed-off-by: Terry Wang <terwang@nvidia.com> Reviewed-on: http://git-master/r/337249 Reviewed-by: Bitan Biswas <bbiswas@nvidia.com> Tested-by: Bitan Biswas <bbiswas@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/board-ardbeg-panel.c')
-rw-r--r--arch/arm/mach-tegra/board-ardbeg-panel.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-ardbeg-panel.c b/arch/arm/mach-tegra/board-ardbeg-panel.c
index 01559fc0673c..b58e4920d4ea 100644
--- a/arch/arm/mach-tegra/board-ardbeg-panel.c
+++ b/arch/arm/mach-tegra/board-ardbeg-panel.c
@@ -33,6 +33,7 @@
#include <mach/irqs.h>
#include <mach/dc.h>
+#include <mach/io_dpd.h>
#include "board.h"
#include "devices.h"
@@ -460,6 +461,16 @@ static struct platform_device ardbeg_nvmap_device = {
.platform_data = &ardbeg_nvmap_data,
},
};
+static struct tegra_io_dpd dsic_io = {
+ .name = "DSIC",
+ .io_dpd_reg_index = 1,
+ .io_dpd_bit = 8,
+};
+static struct tegra_io_dpd dsid_io = {
+ .name = "DSID",
+ .io_dpd_reg_index = 1,
+ .io_dpd_bit = 9,
+};
#ifndef CONFIG_TEGRA_HDMI_PRIMARY
/* can be called multiple times */
@@ -487,6 +498,8 @@ static struct tegra_panel *ardbeg_panel_configure(struct board_info *board_out,
case BOARD_E1627:
panel = &dsi_p_wuxga_10_1;
dsi_instance = DSI_INSTANCE_0;
+ tegra_io_dpd_enable(&dsic_io);
+ tegra_io_dpd_enable(&dsid_io);
break;
case BOARD_E1549:
panel = &dsi_lgd_wxga_7_0;
@@ -510,6 +523,8 @@ static struct tegra_panel *ardbeg_panel_configure(struct board_info *board_out,
default:
panel = &dsi_p_wuxga_10_1;
dsi_instance = DSI_INSTANCE_0;
+ tegra_io_dpd_enable(&dsic_io);
+ tegra_io_dpd_enable(&dsid_io);
break;
}
if (dsi_instance_out)