--- /dev/null
+From a32839696a8eef813a1aff604fbad9a32dff6c95 Mon Sep 17 00:00:00 2001
+From: Daniel Drake <dsd@laptop.org>
+Date: Mon, 21 Nov 2011 15:05:56 +0000
+Subject: viafb: correct sync polarity for OLPC DCON
+
+From: Daniel Drake <dsd@laptop.org>
+
+commit a32839696a8eef813a1aff604fbad9a32dff6c95 upstream.
+
+While the OLPC display appears to be able to handle either positive
+or negative sync, the Display Controller only recognises positive sync.
+
+This brings viafb (for XO-1.5) in line with lxfb (for XO-1) and
+fixes a recent regression where the XO-1.5 DCON could no longer be
+frozen. Thanks to Florian Tobias Schandinat for helping identify
+the fix.
+
+Test case: from a vt,
+ echo 1 > /sys/devices/platform/dcon/freeze
+should cause the current screen contents to freeze, rather than garbage being
+displayed.
+
+Signed-off-by: Daniel Drake <dsd@laptop.org>
+Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/video/via/share.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/video/via/share.h
++++ b/drivers/video/via/share.h
+@@ -557,8 +557,8 @@
+ #define M1200X720_R60_VSP POSITIVE
+
+ /* 1200x900@60 Sync Polarity (DCON) */
+-#define M1200X900_R60_HSP NEGATIVE
+-#define M1200X900_R60_VSP NEGATIVE
++#define M1200X900_R60_HSP POSITIVE
++#define M1200X900_R60_VSP POSITIVE
+
+ /* 1280x600@60 Sync Polarity (GTF Mode) */
+ #define M1280x600_R60_HSP NEGATIVE