summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorChristopher Freeman <cfreeman@nvidia.com>2012-08-24 14:04:29 -0700
committerSimone Willett <swillett@nvidia.com>2012-08-28 18:52:35 -0700
commit2b7077e02ee6cd9d8326cb0ef2cb6a721bfc01a6 (patch)
tree2acc9f5a0cc9649d74f99d25781d957cfd0fc406 /arch
parent6bc9afa39a1d2a0b2c909fb019ca49d848d96d63 (diff)
video: tegra: cardhu: Default bpp from hardware
This patch adds: 1. A kernel config option that hints to DC driver to use the current value of the color depth register as the default for initializing the FB driver. 2. Checks to see if DC is enabled before reading off the color depth register in tegra_dc_probe. Change-Id: I852cc1328fcf42f33052f46b86d753e691744329 Signed-off-by: Christopher Freeman <cfreeman@nvidia.com> Reviewed-on: http://git-master/r/127297 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-tegra/Kconfig9
-rw-r--r--arch/arm/mach-tegra/board-cardhu-panel.c8
2 files changed, 17 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig
index e90ff587cc44..b9627372564f 100644
--- a/arch/arm/mach-tegra/Kconfig
+++ b/arch/arm/mach-tegra/Kconfig
@@ -578,3 +578,12 @@ config TEGRA_SKIN_THROTTLE
Enable throttling to control the temperature of the skin/case
of the device.
endif
+
+config TEGRA_DC_USE_HW_BPP
+ bool "Default Bits Per Pixel value from tegra DC hardware"
+ depends on TEGRA_DC
+ default n
+ help
+ Programs platform data to inform DC driver to use current
+ hardware value for bits per pixel setting. Useful for
+ preserving and displaying framebuffer content from bootloader.
diff --git a/arch/arm/mach-tegra/board-cardhu-panel.c b/arch/arm/mach-tegra/board-cardhu-panel.c
index 530fcfc4ba09..d7101af55712 100644
--- a/arch/arm/mach-tegra/board-cardhu-panel.c
+++ b/arch/arm/mach-tegra/board-cardhu-panel.c
@@ -678,7 +678,11 @@ static struct tegra_fb_data cardhu_fb_data = {
.win = 0,
.xres = 1366,
.yres = 768,
+#ifdef CONFIG_TEGRA_DC_USE_HW_BPP
+ .bits_per_pixel = -1,
+#else
.bits_per_pixel = 32,
+#endif
.flags = TEGRA_FB_FLIP_ON_PROBE,
};
@@ -686,7 +690,11 @@ static struct tegra_fb_data cardhu_hdmi_fb_data = {
.win = 0,
.xres = 640,
.yres = 480,
+#ifdef CONFIG_TEGRA_DC_USE_HW_BPP
+ .bits_per_pixel = -1,
+#else
.bits_per_pixel = 32,
+#endif
.flags = TEGRA_FB_FLIP_ON_PROBE,
};