diff options
author | Terry Wang <terwang@nvidia.com> | 2013-12-03 18:11:07 +0800 |
---|---|---|
committer | Bitan Biswas <bbiswas@nvidia.com> | 2013-12-06 05:57:26 -0800 |
commit | c1cfeb37f79059f2515f1f5270c43faf217dd682 (patch) | |
tree | 9d76f311659a645a5a19f978edf55c6e420f7744 /arch/arm/mach-tegra/board-ardbeg-panel.c | |
parent | cae0daab174f34379585d70990b75e69a852395c (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.c | 15 |
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) |