summaryrefslogtreecommitdiffstats
path: root/meta/packages/xorg-xserver
diff options
context:
space:
mode:
authorRoss Burton <ross@openedhand.com>2008-09-26 09:02:47 +0000
committerRoss Burton <ross@openedhand.com>2008-09-26 09:02:47 +0000
commit005f63f560c5e0bb8a13087bc1c2107c4a6aa786 (patch)
tree376d68472e276c890b53d822a919fa5d4be2bd6a /meta/packages/xorg-xserver
parentcd8b52418c475cf8708f136babb2bfa2f3b1744f (diff)
downloadpoky-005f63f560c5e0bb8a13087bc1c2107c4a6aa786.tar.gz
Merged revisions 5203,5235-5236,5278-5279 via svnmerge from
https://svn.o-hand.com/repos/poky/trunk ........ r5203 | richard | 2008-09-19 18:32:35 +0100 (Fri, 19 Sep 2008) | 1 line tune-xscale.inc: Compile cairo for armv4 to avoid alighment trap issues with double instruction ........ r5235 | ross | 2008-09-23 10:54:16 +0100 (Tue, 23 Sep 2008) | 1 line poky-fixed-revisions.inc: bump matchbox-desktop srvrev to fix icon loading bug ........ r5236 | ross | 2008-09-23 11:14:38 +0100 (Tue, 23 Sep 2008) | 1 line poky-fixed-revisions.inc: fix typo ........ r5278 | ross | 2008-09-25 21:52:29 +0100 (Thu, 25 Sep 2008) | 1 line dialer: specify revision instead of using autorev ........ r5279 | richard | 2008-09-25 22:03:38 +0100 (Thu, 25 Sep 2008) | 1 line xserver-kdrive: Feed xrandr calls to the framebuffer driver in case it can do better than software rotation ........ git-svn-id: https://svn.o-hand.com/repos/poky/branches/elroy@5285 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/xorg-xserver')
-rw-r--r--meta/packages/xorg-xserver/xserver-kdrive/fbdev_xrandr_ioctl.patch61
-rw-r--r--meta/packages/xorg-xserver/xserver-kdrive_1.3.0.0.bb3
2 files changed, 63 insertions, 1 deletions
diff --git a/meta/packages/xorg-xserver/xserver-kdrive/fbdev_xrandr_ioctl.patch b/meta/packages/xorg-xserver/xserver-kdrive/fbdev_xrandr_ioctl.patch
new file mode 100644
index 0000000000..a5c22a5efc
--- /dev/null
+++ b/meta/packages/xorg-xserver/xserver-kdrive/fbdev_xrandr_ioctl.patch
@@ -0,0 +1,61 @@
1Index: xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c
2===================================================================
3--- xorg-server-1.3.0.0.orig/hw/kdrive/fbdev/fbdev.c 2008-09-25 21:55:12.000000000 +0100
4+++ xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c 2008-09-25 21:55:46.000000000 +0100
5@@ -498,6 +498,7 @@
6 KdScreenInfo *screen = pScreenPriv->screen;
7 FbdevScrPriv *scrpriv = screen->driver;
8 Bool wasEnabled = pScreenPriv->enabled;
9+ FbdevPriv *priv = screen->card->driver;
10 FbdevScrPriv oldscr;
11 int oldwidth;
12 int oldheight;
13@@ -525,11 +526,46 @@
14 oldheight = screen->height;
15 oldmmwidth = pScreen->mmWidth;
16 oldmmheight = pScreen->mmHeight;
17-
18+
19 /*
20 * Set new configuration
21 */
22-
23+
24+ if (newwidth != oldwidth || newheight != oldheight)
25+ {
26+ struct fb_var_screeninfo var;
27+ int k;
28+
29+ k = ioctl (priv->fd, FBIOGET_VSCREENINFO, &var);
30+
31+ if (k < 0)
32+ {
33+ ErrorF("Error with framebuffer ioctl FBIOGET_VSCREENINFO: %s", strerror (errno));
34+ return FALSE;
35+ }
36+
37+ var.xres = newwidth;
38+ var.yres = newheight;
39+ var.activate = FB_ACTIVATE_NOW;
40+
41+ k = ioctl (priv->fd, FBIOPUT_VSCREENINFO, &var);
42+
43+ if (k >= 0)
44+ {
45+ if ((k=ioctl(priv->fd, FBIOGET_FSCREENINFO, &priv->fix)) < 0)
46+ {
47+ perror("Error with framebuffer ioctl FIOGET_FSCREENINFO");
48+ close (priv->fd);
49+ return FALSE;
50+ }
51+ if ((k=ioctl(priv->fd, FBIOGET_VSCREENINFO, &priv->var)) < 0) {
52+ perror("Error framebuffer ioctl FIOGET_VSCREENINFO");
53+ close (priv->fd);
54+ return FALSE;
55+ }
56+ }
57+ }
58+
59 scrpriv->randr = KdAddRotation (screen->randr, randr);
60
61 KdOffscreenSwapOut (screen->pScreen);
diff --git a/meta/packages/xorg-xserver/xserver-kdrive_1.3.0.0.bb b/meta/packages/xorg-xserver/xserver-kdrive_1.3.0.0.bb
index 6b494d3e45..b1d654b391 100644
--- a/meta/packages/xorg-xserver/xserver-kdrive_1.3.0.0.bb
+++ b/meta/packages/xorg-xserver/xserver-kdrive_1.3.0.0.bb
@@ -3,7 +3,7 @@ require xserver-kdrive.inc
3DEPENDS += "libxkbfile libxcalibrate" 3DEPENDS += "libxkbfile libxcalibrate"
4 4
5PE = "1" 5PE = "1"
6PR = "r18" 6PR = "r21"
7 7
8SRC_URI = "${XORG_MIRROR}/individual/xserver/xorg-server-${PV}.tar.bz2 \ 8SRC_URI = "${XORG_MIRROR}/individual/xserver/xorg-server-${PV}.tar.bz2 \
9 file://extra-kmodes.patch;patch=1 \ 9 file://extra-kmodes.patch;patch=1 \
@@ -20,6 +20,7 @@ SRC_URI = "${XORG_MIRROR}/individual/xserver/xorg-server-${PV}.tar.bz2 \
20 file://enable-xcalibrate.patch;patch=1 \ 20 file://enable-xcalibrate.patch;patch=1 \
21 file://hide-cursor-and-ppm-root.patch;patch=1 \ 21 file://hide-cursor-and-ppm-root.patch;patch=1 \
22 file://xcalibrate_coords.patch;patch=1 \ 22 file://xcalibrate_coords.patch;patch=1 \
23 file://fbdev_xrandr_ioctl.patch;patch=1 \
23 file://scheduler.patch;patch=1" 24 file://scheduler.patch;patch=1"
24 25
25S = "${WORKDIR}/xorg-server-${PV}" 26S = "${WORKDIR}/xorg-server-${PV}"