diff --git a/patch.sh b/patch.sh
index 76903bd836895924eeb86c4a199eeb9ab76bd760..28720c6c70351282097778b93bce0c425cec2c13 100644
--- a/patch.sh
+++ b/patch.sh
@@ -22,6 +22,14 @@ patch -s -p1 < "${DIR}/patches/trivial/0001-staging-add-airlink-awll7025-id-for-
 patch -s -p1 < "${DIR}/patches/trivial/0001-arm-fix-oops-in-sched_clock_poll.patch"
 
 patch -s -p1 < "${DIR}/patches/trivial/0001-carl9170-add-AirLive-X.USB-vid-pid.patch"
+
+#Bisected from 2.6.35 -> 2.6.36 to find this..
+#This commit breaks some lcd monitors..
+#rcn-ee Feb 26, 2011...
+#Still needs more work for 2.6.38, causes:
+#[   14.962829] omapdss DISPC error: GFX_FIFO_UNDERFLOW, disabling GFX
+#patch -s -p1 < "${DIR}/patches/trivial/0001-Revert-OMAP-DSS2-OMAPFB-swap-front-and-back-porches-.patch"
+
 }
 
 function sakoman {
diff --git a/patches/trivial/0001-Revert-OMAP-DSS2-OMAPFB-swap-front-and-back-porches-.patch b/patches/trivial/0001-Revert-OMAP-DSS2-OMAPFB-swap-front-and-back-porches-.patch
new file mode 100644
index 0000000000000000000000000000000000000000..4f224c2291aa2a0eedfd6826df2d385441f46084
--- /dev/null
+++ b/patches/trivial/0001-Revert-OMAP-DSS2-OMAPFB-swap-front-and-back-porches-.patch
@@ -0,0 +1,47 @@
+From 70d12d048dee7a42a1bdad6fd36a7c5d1e6b5068 Mon Sep 17 00:00:00 2001
+From: Robert Nelson <robertcnelson@gmail.com>
+Date: Sat, 26 Feb 2011 14:28:26 -0600
+Subject: [PATCH] Revert "OMAP: DSS2: OMAPFB: swap front and back porches for both hsync and vsync"
+
+This reverts commit 87ba8288670c53f66ce41d8ce292c64674de821e.
+---
+ drivers/video/omap2/omapfb/omapfb-main.c |   16 ++++++++--------
+ 1 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/drivers/video/omap2/omapfb/omapfb-main.c b/drivers/video/omap2/omapfb/omapfb-main.c
+index 62117bd..f9b1176 100644
+--- a/drivers/video/omap2/omapfb/omapfb-main.c
++++ b/drivers/video/omap2/omapfb/omapfb-main.c
+@@ -714,10 +714,10 @@ int check_fb_var(struct fb_info *fbi, struct fb_var_screeninfo *var)
+ 		var->pixclock = timings.pixel_clock != 0 ?
+ 			KHZ2PICOS(timings.pixel_clock) :
+ 			0;
+-		var->left_margin = timings.hbp;
+-		var->right_margin = timings.hfp;
+-		var->upper_margin = timings.vbp;
+-		var->lower_margin = timings.vfp;
++		var->left_margin = timings.hfp;
++		var->right_margin = timings.hbp;
++		var->upper_margin = timings.vfp;
++		var->lower_margin = timings.vbp;
+ 		var->hsync_len = timings.hsw;
+ 		var->vsync_len = timings.vsw;
+ 	} else {
+@@ -2067,10 +2067,10 @@ static int omapfb_mode_to_timings(const char *mode_str,
+ 
+ 	if (r != 0) {
+ 		timings->pixel_clock = PICOS2KHZ(var.pixclock);
+-		timings->hbp = var.left_margin;
+-		timings->hfp = var.right_margin;
+-		timings->vbp = var.upper_margin;
+-		timings->vfp = var.lower_margin;
++		timings->hfp = var.left_margin;
++		timings->hbp = var.right_margin;
++		timings->vfp = var.upper_margin;
++		timings->vbp = var.lower_margin;
+ 		timings->hsw = var.hsync_len;
+ 		timings->vsw = var.vsync_len;
+ 		timings->x_res = var.xres;
+-- 
+1.7.1
+