summaryrefslogtreecommitdiff
path: root/meta/recipes-graphics
diff options
context:
space:
mode:
authorYu Ke <ke.yu@intel.com>2011-01-25 15:15:09 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-01-28 16:49:13 +0000
commit0e879c25dc94bbd7c3fabcf1944de57350f5e68f (patch)
treeb7003e5f43d4ab2deece9c870d3a005251c5f18c /meta/recipes-graphics
parent4bda50f28919d62410feabae530e6f7186812938 (diff)
downloadopenembedded-core-0e879c25dc94bbd7c3fabcf1944de57350f5e68f.tar.gz
openembedded-core-0e879c25dc94bbd7c3fabcf1944de57350f5e68f.tar.bz2
openembedded-core-0e879c25dc94bbd7c3fabcf1944de57350f5e68f.tar.xz
openembedded-core-0e879c25dc94bbd7c3fabcf1944de57350f5e68f.zip
xf86-video-omapfb: upgrade to 044617665d6737f4909aab96
Also apply four patches from Koen to fix four issus: - The tv-out gets added last and the driver tries to reconfigure dvi to TV resolutions, which fails - The new DSS mode breaks XV, so force plain mode - Picture is garbled after switching resolutions - Virtual size too big CC: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Yu Ke <ke.yu@intel.com>
Diffstat (limited to 'meta/recipes-graphics')
-rw-r--r--meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-blacklist-tv-out.patch25
-rw-r--r--meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-force-plain-mode.patch23
-rw-r--r--meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-revert-set-CRTC-limit.patch32
-rw-r--r--meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-revert-set-virtual-size.patch23
-rw-r--r--meta/recipes-graphics/xorg-driver/xf86-video-omapfb_git.bb4
5 files changed, 107 insertions, 0 deletions
diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-blacklist-tv-out.patch b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-blacklist-tv-out.patch
new file mode 100644
index 000000000..506e174cb
--- /dev/null
+++ b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-blacklist-tv-out.patch
@@ -0,0 +1,25 @@
+commit 05efb061f1945425d214ff6b6050883e6d8633bf
+Author: Koen Kooi <koen@dominion.thruhere.net>
+Date: Wed Jan 26 13:21:12 2011 +0100
+
+ blacklist tv out
+
+ The tv-out gets added last and the driver tries to reconfigure dvi to TV resolutions, which fails. so blacklist it
+
+ Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
+
+diff --git a/src/omapfb-output-dss.c b/src/omapfb-output-dss.c
+index 6cc52de..83cb711 100644
+--- a/src/omapfb-output-dss.c
++++ b/src/omapfb-output-dss.c
+@@ -205,6 +205,10 @@ OMAPFBDSSOutputDetect (xf86OutputPtr output)
+ if(ofb->timings[idx][0] == '\0')
+ return XF86OutputStatusDisconnected;
+
++ // Hack to disable the tv out
++ if (strncmp(output->name, "tv", 2) == 0)
++ return XF86OutputStatusDisconnected;
++
+ return XF86OutputStatusConnected;
+ }
+
diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-force-plain-mode.patch b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-force-plain-mode.patch
new file mode 100644
index 000000000..201a8b958
--- /dev/null
+++ b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-force-plain-mode.patch
@@ -0,0 +1,23 @@
+commit d28a36bbadc360a9409bf9832f1d4171d7c33dad
+Author: Koen Kooi <koen@dominion.thruhere.net>
+Date: Wed Jan 26 13:20:20 2011 +0100
+
+ force 'plain' mode
+
+ The new DSS mode breaks XV, so force plain mode
+
+ Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
+
+diff --git a/src/omapfb-driver.c b/src/omapfb-driver.c
+index 018e040..48aa09c 100644
+--- a/src/omapfb-driver.c
++++ b/src/omapfb-driver.c
+@@ -326,7 +326,7 @@ OMAPFBPreInit(ScrnInfoPtr pScrn, int flags)
+ OMAPFBProbeController(ofb->ctrl_name);
+
+ /* Do we have the DSS kernel API? */
+- if (stat(SYSFS_DSS_DIR, &st) == 0) {
++ if (0) { //stat(SYSFS_DSS_DIR, &st) == 0) {
+ ofb->dss = TRUE;
+ } else {
+ ofb->dss = FALSE;
diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-revert-set-CRTC-limit.patch b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-revert-set-CRTC-limit.patch
new file mode 100644
index 000000000..6a9e9058b
--- /dev/null
+++ b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-revert-set-CRTC-limit.patch
@@ -0,0 +1,32 @@
+commit 031516123d25a12808ab4e56ea8deda74946cdcd
+Author: Koen Kooi <koen@dominion.thruhere.net>
+Date: Wed Jan 26 12:04:36 2011 +0100
+
+ Revert "Set a large CRTC upper limit to not prune larger resolutions"
+
+ Picture is garbled after switching resolutions, so revert it.
+
+ Virtual size too big, revert the commit 9c4d7592dcb7dc20a48a6f941d9d94bd73d34153.
+
+diff --git a/src/omapfb-crtc.c b/src/omapfb-crtc.c
+index 9aaa52f..cbeff35 100644
+--- a/src/omapfb-crtc.c
++++ b/src/omapfb-crtc.c
+@@ -190,13 +190,13 @@ OMAPFBCRTCInit(ScrnInfoPtr pScrn)
+ * In practise, this doesn't seem to be supported.
+ * (no way to setup the overlay offset/base address)
+ */
+- /* FIXME: figure out what makes sense here. A known max resolution?
+- * framebuffer size?
+- */
+ xf86CrtcSetSizeRange(pScrn,
+- 8, 8, 2048, 2048);
++ 8, 8,
++ ofb->state_info.xres_virtual,
++ ofb->state_info.yres_virtual);
+
+ ofb->crtc = xf86CrtcCreate(pScrn, &OMAPFBCrtcFuncs);
++
+ }
+
+
diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-revert-set-virtual-size.patch b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-revert-set-virtual-size.patch
new file mode 100644
index 000000000..a3fd0d5f9
--- /dev/null
+++ b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omap-revert-set-virtual-size.patch
@@ -0,0 +1,23 @@
+commit cbae688d7df59938ccb4af534ec2ff75cbbe9221
+Author: Koen Kooi <koen@dominion.thruhere.net>
+Date: Wed Jan 26 13:27:20 2011 +0100
+
+ Revert "Set virtual size when configuring framebuffer"
+
+ Virtual size too big, so revert it.
+
+ This reverts commit 2653ef07883fbd1a5e7025f9300cf89b79ba429a.
+
+diff --git a/src/omapfb-crtc.c b/src/omapfb-crtc.c
+index cbeff35..9655db2 100644
+--- a/src/omapfb-crtc.c
++++ b/src/omapfb-crtc.c
+@@ -98,8 +98,6 @@ OMAPFBCrtcCommitChangeMode (xf86CrtcPtr crtc)
+ v = ofb->state_info;
+ v.xres = mode->HDisplay;
+ v.yres = mode->VDisplay;
+- v.xres_virtual = crtc->scrn->virtualX;
+- v.yres_virtual = crtc->scrn->virtualY;
+ v.activate = FB_ACTIVATE_NOW;
+ v.pixclock = KHZ2PICOS(mode->Clock ? mode->Clock : 56000);
+ v.left_margin = mode->HTotal - mode->HSyncEnd;
diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-omapfb_git.bb b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb_git.bb
index 2d9875e7e..054b96ab4 100644
--- a/meta/recipes-graphics/xorg-driver/xf86-video-omapfb_git.bb
+++ b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb_git.bb
@@ -10,6 +10,10 @@ PR = "r1"
PV = "0.1.1+git${SRCPV}"
SRC_URI = "git://git.pingu.fi/xf86-video-omapfb.git;protocol=http \
+ file://omap-revert-set-CRTC-limit.patch \
+ file://omap-revert-set-virtual-size.patch \
+ file://omap-force-plain-mode.patch \
+ file://omap-blacklist-tv-out.patch \
"
S = "${WORKDIR}/git"