summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-ardbeg.c
diff options
context:
space:
mode:
authorJong Kim <jongk@nvidia.com>2014-06-13 16:15:18 -0700
committerMandar Padmawar <mpadmawar@nvidia.com>2014-06-18 04:41:25 -0700
commit7ce453570a8006f3e34a99b521bfa88b3b2806e3 (patch)
tree98622d333b9afad3784713772020d6929a2a8f61 /arch/arm/mach-tegra/board-ardbeg.c
parent6083cb10ae4890341f07d360c00ce86b3049509e (diff)
ARM: tegra: ardbeg: support 4K HDMI monitor
Change tegra_fb2_size for 4K HDMI monitor support. bug 200001130 Change-Id: I9e89dac7f602f74d1cdd761f05d1af2439c47add Signed-off-by: Jong Kim <jongk@nvidia.com> Reviewed-on: http://git-master/r/423425 Reviewed-by: Mandar Padmawar <mpadmawar@nvidia.com> Tested-by: Mandar Padmawar <mpadmawar@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/board-ardbeg.c')
-rw-r--r--arch/arm/mach-tegra/board-ardbeg.c26
1 files changed, 23 insertions, 3 deletions
diff --git a/arch/arm/mach-tegra/board-ardbeg.c b/arch/arm/mach-tegra/board-ardbeg.c
index 5fd3d2266532..9fc9e121570f 100644
--- a/arch/arm/mach-tegra/board-ardbeg.c
+++ b/arch/arm/mach-tegra/board-ardbeg.c
@@ -1484,13 +1484,33 @@ static void __init tegra_ardbeg_dt_init(void)
static void __init tegra_ardbeg_reserve(void)
{
+#ifdef CONFIG_TEGRA_HDMI_PRIMARY
+ ulong tmp;
+#endif /* CONFIG_TEGRA_HDMI_PRIMARY */
+
#if defined(CONFIG_NVMAP_CONVERT_CARVEOUT_TO_IOVMM) || \
defined(CONFIG_TEGRA_NO_CARVEOUT)
- /* 1920*1200*4*2 = 18432000 bytes */
- tegra_reserve4(0, SZ_16M + SZ_2M, SZ_16M, 186 * SZ_1M);
+ ulong carveout_size = 0;
+ ulong fb2_size = SZ_16M;
#else
- tegra_reserve4(SZ_1G, SZ_16M + SZ_2M, SZ_4M, 186 * SZ_1M);
+ ulong carveout_size = SZ_1G;
+ ulong fb2_size = SZ_4M;
#endif
+ ulong fb1_size = SZ_16M + SZ_2M;
+ ulong vpr_size = 186 * SZ_1M;
+
+#ifdef CONFIG_FRAMEBUFFER_CONSOLE
+ /* support FBcon on 4K monitors */
+ fb2_size = SZ_64M + SZ_8M; /* 4096*2160*4*2 = 70778880 bytes */
+#endif /* CONFIG_FRAMEBUFFER_CONSOLE */
+
+#ifdef CONFIG_TEGRA_HDMI_PRIMARY
+ tmp = fb1_size;
+ fb1_size = fb2_size;
+ fb2_size = tmp;
+#endif /* CONFIG_TEGRA_HDMI_PRIMARY */
+
+ tegra_reserve4(carveout_size, fb1_size, fb2_size, vpr_size);
}
static const char * const ardbeg_dt_board_compat[] = {