diff -Naur kernel.21.3.orig/drivers/video/tegra/dc/hdmi.c kernel.21.3.new/drivers/video/tegra/dc/hdmi.c
--- kernel.21.3.orig/drivers/video/tegra/dc/hdmi.c	2015-02-03 01:44:31.000000000 +0000
+++ kernel.21.3.new/drivers/video/tegra/dc/hdmi.c	2015-04-27 15:28:08.856400120 +0000
@@ -34,6 +34,7 @@
 #include <linux/device.h>
 #include <linux/export.h>
 #include <linux/clk/tegra.h>
+#include <linux/moduleparam.h>
 
 #include <mach/dc.h>
 #include <mach/fb.h>
@@ -82,6 +83,9 @@
 #define TEGRA_DC_HDMI_MIN_ASPECT_RATIO_PERCENT	80
 #define TEGRA_DC_HDMI_MAX_ASPECT_RATIO_PERCENT	320
 
+static int use_constrait_workaround = 1;
+module_param_named(use_constrait_workaround, use_constrait_workaround, int, S_IRUGO | S_IWUSR);
+
 struct tegra_dc_hdmi_data *dc_hdmi;
 
 #if defined(CONFIG_ARCH_TEGRA_3x_SOC)
@@ -842,9 +846,11 @@
 
 	/* Work around for modes that fail the constrait:
 	 * V_FRONT_PORCH >= V_REF_TO_SYNC + 1 */
-	if (mode->lower_margin == 1) {
+	if (use_constrait_workaround) {
+	    if (mode->lower_margin == 1) {
 		mode->lower_margin++;
 		mode->upper_margin--;
+	    }
 	}
 
 	/* even after fix-ups the mode still isn't supported */
