diff options
| author | Joshua Lock <josh@linux.intel.com> | 2010-06-29 14:31:43 +0100 |
|---|---|---|
| committer | Joshua Lock <josh@linux.intel.com> | 2010-06-29 15:20:33 +0100 |
| commit | 6ca31b0522873da6ae8bcdc49cbcca1b04c4016c (patch) | |
| tree | 5cf314dcc613d47098c690a463fa4ebf3a72c148 /meta-extras | |
| parent | b6fcd71cb5b85e23036b31df1545a92f4ed402dc (diff) | |
| download | openembedded-core-6ca31b0522873da6ae8bcdc49cbcca1b04c4016c.tar.gz openembedded-core-6ca31b0522873da6ae8bcdc49cbcca1b04c4016c.tar.bz2 openembedded-core-6ca31b0522873da6ae8bcdc49cbcca1b04c4016c.zip | |
xorg-xserver: move older xserver's to meta-extras
Move xservers which are only used by retired machines to meta-extras
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Diffstat (limited to 'meta-extras')
30 files changed, 8789 insertions, 0 deletions
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fbdev-not-fix.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fbdev-not-fix.patch new file mode 100644 index 0000000000..f87e7cc2cd --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fbdev-not-fix.patch @@ -0,0 +1,14 @@ +--- xserver/hw/kdrive/fbdev/fbdev.c~ 2004-09-15 00:08:10.000000000 +0100 ++++ xserver/hw/kdrive/fbdev/fbdev.c 2004-11-13 17:47:02.000000000 +0000 +@@ -198,6 +198,11 @@ + return FALSE; + } + ++ /* Re-get the "fixed" parameters since they might have changed */ ++ k = ioctl (priv->fd, FBIOGET_FSCREENINFO, &priv->fix); ++ if (k < 0) ++ perror ("FBIOGET_FSCREENINFO"); ++ + /* Now get the new screeninfo */ + ioctl (priv->fd, FBIOGET_VSCREENINFO, &priv->var); + depth = priv->var.bits_per_pixel; diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix-picturestr-include-order.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix-picturestr-include-order.patch new file mode 100644 index 0000000000..3da235e1e1 --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix-picturestr-include-order.patch @@ -0,0 +1,15 @@ +# Reverse include order in render/picturestr.h to be able to compile against renderproto >= 0.9.3 +Index: xorg-server-1.2.0/render/picturestr.h +=================================================================== +--- xorg-server-1.2.0.orig/render/picturestr.h 2008-02-09 22:54:46.000000000 +0100 ++++ xorg-server-1.2.0/render/picturestr.h 2008-02-09 22:54:50.000000000 +0100 +@@ -26,8 +26,8 @@ + #ifndef _PICTURESTR_H_ + #define _PICTURESTR_H_ + +-#include "glyphstr.h" + #include "scrnintstr.h" ++#include "glyphstr.h" + #include "resource.h" + + typedef struct _DirectFormat { diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix_default_mode.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix_default_mode.patch new file mode 100644 index 0000000000..edc5146302 --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix_default_mode.patch @@ -0,0 +1,26 @@ +--- + hw/kdrive/src/kmode.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +Index: xorg-server-1.3.0.0/hw/kdrive/src/kmode.c +=================================================================== +--- xorg-server-1.3.0.0.orig/hw/kdrive/src/kmode.c 2007-05-16 10:30:29.000000000 +0100 ++++ xorg-server-1.3.0.0/hw/kdrive/src/kmode.c 2007-05-16 10:31:08.000000000 +0100 +@@ -106,6 +106,8 @@ const KdMonitorTiming kdMonitorTimings[ + 16, 120, 176, KdSyncNegative, /* 37.861 */ + 1, 20, 24, KdSyncNegative, /* 72.809 */ + }, ++ /* DEFAULT */ ++#define MONITOR_TIMING_DEFAULT 13 + { 640, 480, 60, 25175, /* VESA */ + 16, 48, 160, KdSyncNegative, /* 31.469 */ + 10, 33, 45, KdSyncNegative, /* 59.940 */ +@@ -127,8 +129,6 @@ const KdMonitorTiming kdMonitorTimings[ + 16, 160, 256, KdSyncPositive, /* 46.875 */ + 1, 21, 25, KdSyncPositive, /* 75.000 */ + }, +- /* DEFAULT */ +-#define MONITOR_TIMING_DEFAULT 9 + { 800, 600, 72, 50000, /* VESA */ + 56, 64, 240, KdSyncPositive, /* 48.077 */ + 37, 23, 66, KdSyncPositive, /* 72.188 */ diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/gumstix-kmode.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/gumstix-kmode.patch new file mode 100644 index 0000000000..56817a7001 --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/gumstix-kmode.patch @@ -0,0 +1,23 @@ +--- /tmp/kmode.c 2007-10-07 11:49:52.000000000 +0200 ++++ xorg-server-1.3.0.0/hw/kdrive/src/kmode.c 2007-10-07 11:51:57.962045000 +0200 +@@ -119,7 +119,19 @@ + 0, 0, 0, KdSyncNegative, /* 59.940 */ + }, + +- ++ ++/* gumstix console-vx */ ++ { 480, 272, 60, 0, /* VESA */ ++ 0, 0, 0, KdSyncNegative, /* 31.469 */ ++ 0, 0, 0, KdSyncNegative, /* 59.940 */ ++ }, ++ ++ { 272, 480, 60, 0, /* VESA */ ++ 0, 0, 0, KdSyncNegative, /* 31.469 */ ++ 0, 0, 0, KdSyncNegative, /* 59.940 */ ++ }, ++ ++ + /* 800x600 modes */ + { 800, 600, 85, 56250, /* VESA */ + 32, 152, 248, KdSyncPositive, /* 53.674 */ diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kdrive-1.3-18bpp.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kdrive-1.3-18bpp.patch new file mode 100644 index 0000000000..714536934c --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kdrive-1.3-18bpp.patch @@ -0,0 +1,419 @@ +diff -Nurd xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c xorg-server-1.3.0.0.patched/hw/kdrive/fbdev/fbdev.c +--- xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c 2006-11-16 19:01:23.000000000 +0100 ++++ xorg-server-1.3.0.0.patched/hw/kdrive/fbdev/fbdev.c 2007-09-15 16:53:20.152045000 +0200 +@@ -213,6 +213,24 @@ + + /* Now get the new screeninfo */ + ioctl (priv->fd, FBIOGET_VSCREENINFO, &priv->var); ++ /* Special treatment of 18bpp */ ++ if ((priv->var.red.length == 6) && (priv->var.green.length == 6) && ++ (priv->var.blue.length == 6)) ++ { ++ priv->var.red.length = 8; ++ if (priv->var.red.offset != 0) ++ priv->var.red.offset = 16; ++ priv->var.green.length = 8; ++ priv->var.green.offset = 8; ++ priv->var.blue.length = 8; ++ if (priv->var.blue.offset != 0) ++ priv->var.blue.offset = 16; ++ priv->var.bits_per_pixel = 32; ++ priv->Have18Bpp = TRUE; ++ } ++ else ++ priv->Have18Bpp = FALSE; ++ + depth = priv->var.bits_per_pixel; + gray = priv->var.grayscale; + +@@ -334,7 +352,7 @@ + KdMouseMatrix m; + FbdevPriv *priv = screen->card->driver; + +- if (scrpriv->randr != RR_Rotate_0) ++ if (scrpriv->randr != RR_Rotate_0 || priv->Have18Bpp) + scrpriv->shadow = TRUE; + else + scrpriv->shadow = FALSE; +@@ -398,6 +416,354 @@ + return TRUE; + } + ++void ++shadowUpdatePacked18 (ScreenPtr pScreen, ++ shadowBufPtr pBuf) ++{ ++ RegionPtr damage = shadowDamage (pBuf); ++ PixmapPtr pShadow = pBuf->pPixmap; ++ int nbox = REGION_NUM_RECTS (damage); ++ BoxPtr pbox = REGION_RECTS (damage); ++ FbBits *shaBase, *shaLine, *sha; ++ FbStride shaStride; ++ int scrBase, scrLine, scr; ++ int shaBpp; ++ int shaXoff, shaYoff; /* XXX assumed to be zero */ ++ int x, y, w, h, width; ++ int i; ++ char *winBase = NULL, *win; ++ CARD32 winSize; ++ ++ fbGetDrawable (&pShadow->drawable, shaBase, shaStride, shaBpp, shaXoff, shaYoff); ++ while (nbox--) ++ { ++ x = pbox->x1 * shaBpp; ++ y = pbox->y1; ++ w = (pbox->x2 - pbox->x1) * shaBpp; ++ h = pbox->y2 - pbox->y1; ++ ++ scrLine = (x >> FB_SHIFT); ++ shaLine = shaBase + y * shaStride + (x >> FB_SHIFT); ++ ++ x &= FB_MASK; ++ w = (w + x + FB_MASK) >> FB_SHIFT; ++ ++ while (h--) ++ { ++ winSize = 0; ++ scrBase = 0; ++ width = w; ++ scr = scrLine; ++ sha = shaLine; ++ while (width) { ++ /* how much remains in this window */ ++ i = scrBase + winSize - scr; ++ if (i <= 0 || scr < scrBase) ++ { ++ winBase = (char *) (*pBuf->window) (pScreen, ++ y, ++ scr * 3, ++ SHADOW_WINDOW_WRITE, ++ &winSize, ++ pBuf->closure); ++ if(!winBase) ++ return; ++ scrBase = scr; ++ winSize /= 3; ++ i = winSize; ++ } ++ win = winBase + (scr - scrBase); ++ if (i > width) ++ i = width; ++ width -= i; ++ scr += i; ++#define PickBit(a,i) (((a) >> (i)) & 1) ++ while (i--) ++ { ++ FbBits bits = *sha++; ++ *win++ = ((bits & 0xFC) >> 2) | ++ ((bits & 0xC00) >> 4); ++ *win++ = ((bits & 0xF000) >> 12) | ++ ((bits & 0x3C0000) >> 14); ++ *win++ = (bits & 0xC00000) >> 22; ++ } ++ } ++ shaLine += shaStride; ++ y++; ++ } ++ pbox++; ++ } ++} ++ ++#define LEFT_TO_RIGHT 1 ++#define RIGHT_TO_LEFT -1 ++#define TOP_TO_BOTTOM 2 ++#define BOTTOM_TO_TOP -2 ++ ++void ++shadowUpdateRotatePacked18 (ScreenPtr pScreen, ++ shadowBufPtr pBuf) ++{ ++ RegionPtr damage = shadowDamage (pBuf); ++ PixmapPtr pShadow = pBuf->pPixmap; ++ int nbox = REGION_NUM_RECTS (damage); ++ BoxPtr pbox = REGION_RECTS (damage); ++ FbBits *shaBits; ++ FbStride shaStride; ++ int shaBpp; ++ int shaXoff, shaYoff; ++ int box_x1, box_x2, box_y1, box_y2; ++ int sha_x1 = 0, sha_y1 = 0; ++ int scr_x1 = 0, scr_x2 = 0, scr_y1 = 0, scr_y2 = 0, scr_w, scr_h; ++ int scr_x, scr_y; ++ int w; ++ int pixelsPerBits; ++ int pixelsMask; ++ FbStride shaStepOverY = 0, shaStepDownY = 0; ++ FbStride shaStepOverX = 0, shaStepDownX = 0; ++ FbBits *shaLine, *sha; ++ int shaHeight = pShadow->drawable.height; ++ int shaWidth = pShadow->drawable.width; ++ FbBits shaMask; ++ int shaFirstShift, shaShift; ++ int o_x_dir; ++ int o_y_dir; ++ int x_dir; ++ int y_dir; ++ ++ fbGetDrawable (&pShadow->drawable, shaBits, shaStride, shaBpp, shaXoff, shaYoff); ++ pixelsPerBits = (sizeof (FbBits) * 8) / shaBpp; ++ pixelsMask = ~(pixelsPerBits - 1); ++ shaMask = FbBitsMask (FB_UNIT-shaBpp, shaBpp); ++ /* ++ * Compute rotation related constants to walk the shadow ++ */ ++ o_x_dir = LEFT_TO_RIGHT; ++ o_y_dir = TOP_TO_BOTTOM; ++ if (pBuf->randr & SHADOW_REFLECT_X) ++ o_x_dir = -o_x_dir; ++ if (pBuf->randr & SHADOW_REFLECT_Y) ++ o_y_dir = -o_y_dir; ++ switch (pBuf->randr & (SHADOW_ROTATE_ALL)) { ++ case SHADOW_ROTATE_0: /* upper left shadow -> upper left screen */ ++ default: ++ x_dir = o_x_dir; ++ y_dir = o_y_dir; ++ break; ++ case SHADOW_ROTATE_90: /* upper right shadow -> upper left screen */ ++ x_dir = o_y_dir; ++ y_dir = -o_x_dir; ++ break; ++ case SHADOW_ROTATE_180: /* lower right shadow -> upper left screen */ ++ x_dir = -o_x_dir; ++ y_dir = -o_y_dir; ++ break; ++ case SHADOW_ROTATE_270: /* lower left shadow -> upper left screen */ ++ x_dir = -o_y_dir; ++ y_dir = o_x_dir; ++ break; ++ } ++ switch (x_dir) { ++ case LEFT_TO_RIGHT: ++ shaStepOverX = shaBpp; ++ shaStepOverY = 0; ++ break; ++ case TOP_TO_BOTTOM: ++ shaStepOverX = 0; ++ shaStepOverY = shaStride; ++ break; ++ case RIGHT_TO_LEFT: ++ shaStepOverX = -shaBpp; ++ shaStepOverY = 0; ++ break; ++ case BOTTOM_TO_TOP: ++ shaStepOverX = 0; ++ shaStepOverY = -shaStride; ++ break; ++ } ++ switch (y_dir) { ++ case TOP_TO_BOTTOM: ++ shaStepDownX = 0; ++ shaStepDownY = shaStride; ++ break; ++ case RIGHT_TO_LEFT: ++ shaStepDownX = -shaBpp; ++ shaStepDownY = 0; ++ break; ++ case BOTTOM_TO_TOP: ++ shaStepDownX = 0; ++ shaStepDownY = -shaStride; ++ break; ++ case LEFT_TO_RIGHT: ++ shaStepDownX = shaBpp; ++ shaStepDownY = 0; ++ break; ++ } ++ ++ while (nbox--) ++ { ++ box_x1 = pbox->x1; ++ box_y1 = pbox->y1; ++ box_x2 = pbox->x2; ++ box_y2 = pbox->y2; ++ pbox++; ++ ++ /* ++ * Compute screen and shadow locations for this box ++ */ ++ switch (x_dir) { ++ case LEFT_TO_RIGHT: ++ scr_x1 = box_x1 & pixelsMask; ++ scr_x2 = (box_x2 + pixelsPerBits - 1) & pixelsMask; ++ ++ sha_x1 = scr_x1; ++ break; ++ case TOP_TO_BOTTOM: ++ scr_x1 = box_y1 & pixelsMask; ++ scr_x2 = (box_y2 + pixelsPerBits - 1) & pixelsMask; ++ ++ sha_y1 = scr_x1; ++ break; ++ case RIGHT_TO_LEFT: ++ scr_x1 = (shaWidth - box_x2) & pixelsMask; ++ scr_x2 = (shaWidth - box_x1 + pixelsPerBits - 1) & pixelsMask; ++ ++ sha_x1 = (shaWidth - scr_x1 - 1); ++ break; ++ case BOTTOM_TO_TOP: ++ scr_x1 = (shaHeight - box_y2) & pixelsMask; ++ scr_x2 = (shaHeight - box_y1 + pixelsPerBits - 1) & pixelsMask; ++ ++ sha_y1 = (shaHeight - scr_x1 - 1); ++ break; ++ } ++ switch (y_dir) { ++ case TOP_TO_BOTTOM: ++ scr_y1 = box_y1; ++ scr_y2 = box_y2; ++ ++ sha_y1 = scr_y1; ++ break; ++ case RIGHT_TO_LEFT: ++ scr_y1 = (shaWidth - box_x2); ++ scr_y2 = (shaWidth - box_x1); ++ ++ sha_x1 = box_x2 - 1; ++ break; ++ case BOTTOM_TO_TOP: ++ scr_y1 = shaHeight - box_y2; ++ scr_y2 = shaHeight - box_y1; ++ ++ sha_y1 = box_y2 - 1; ++ break; ++ case LEFT_TO_RIGHT: ++ scr_y1 = box_x1; ++ scr_y2 = box_x2; ++ ++ sha_x1 = box_x1; ++ break; ++ } ++ scr_w = ((scr_x2 - scr_x1) * shaBpp) >> FB_SHIFT; ++ scr_h = scr_y2 - scr_y1; ++ scr_y = scr_y1; ++ ++ /* shift amount for first pixel on screen */ ++ shaFirstShift = FB_UNIT - ((sha_x1 * shaBpp) & FB_MASK) - shaBpp; ++ ++ /* pointer to shadow data first placed on screen */ ++ shaLine = (shaBits + ++ sha_y1 * shaStride + ++ ((sha_x1 * shaBpp) >> FB_SHIFT)); ++ ++ /* ++ * Copy the bits, always write across the physical frame buffer ++ * to take advantage of write combining. ++ */ ++ while (scr_h--) ++ { ++ int p; ++ FbBits bits; ++ char *win; ++ int i; ++ CARD32 winSize; ++ ++ sha = shaLine; ++ shaShift = shaFirstShift; ++ w = scr_w; ++ scr_x = scr_x1 * shaBpp >> FB_SHIFT; ++ ++ while (w) ++ { ++ /* ++ * Map some of this line ++ */ ++ win = (char *) (*pBuf->window) (pScreen, ++ scr_y, ++ scr_x * 3, ++ SHADOW_WINDOW_WRITE, ++ &winSize, ++ pBuf->closure); ++ i = winSize / 3; ++ if (i > w) ++ i = w; ++ w -= i; ++ scr_x += i; ++ /* ++ * Copy the portion of the line mapped ++ */ ++ while (i--) ++ { ++ bits = 0; ++ p = pixelsPerBits; ++ /* ++ * Build one word of output from multiple inputs ++ * ++ * Note that for 90/270 rotations, this will walk ++ * down the shadow hitting each scanline once. ++ * This is probably not very efficient. ++ */ ++ while (p--) ++ { ++ bits = FbScrLeft(bits, shaBpp); ++ bits |= FbScrRight (*sha, shaShift) & shaMask; ++ ++ shaShift -= shaStepOverX; ++ if (shaShift >= FB_UNIT) ++ { ++ shaShift -= FB_UNIT; ++ sha--; ++ } ++ else if (shaShift < 0) ++ { ++ shaShift += FB_UNIT; ++ sha++; ++ } ++ sha += shaStepOverY; ++ } ++ *win++ = ((bits & 0xFC) >> 2) | ++ ((bits & 0xC00) >> 4); ++ *win++ = ((bits & 0xF000) >> 12) | ++ ((bits & 0x3C0000) >> 14); ++ *win++ = (bits & 0xC00000) >> 22; ++ } ++ } ++ scr_y++; ++ shaFirstShift -= shaStepDownX; ++ if (shaFirstShift >= FB_UNIT) ++ { ++ shaFirstShift -= FB_UNIT; ++ shaLine--; ++ } ++ else if (shaFirstShift < 0) ++ { ++ shaFirstShift += FB_UNIT; ++ shaLine++; ++ } ++ shaLine += shaStepDownY; ++ } ++ } ++} ++ + Bool + fbdevSetShadow (ScreenPtr pScreen) + { +@@ -418,7 +784,14 @@ + + window = fbdevWindowLinear; + update = 0; +- if (scrpriv->randr) ++ if (priv->Have18Bpp) ++ { ++ if (scrpriv->randr != RR_Rotate_0) ++ update = shadowUpdateRotatePacked18; ++ else ++ update = shadowUpdatePacked18; ++ } ++ else if (scrpriv->randr) + if (priv->var.bits_per_pixel == 16) { + switch (scrpriv->randr) { + case RR_Rotate_90: +diff -Nurd xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.h xorg-server-1.3.0.0.patched/hw/kdrive/fbdev/fbdev.h +--- xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.h 2006-09-18 08:04:17.000000000 +0200 ++++ xorg-server-1.3.0.0.patched/hw/kdrive/fbdev/fbdev.h 2007-09-15 16:45:07.362045000 +0200 +@@ -44,6 +44,7 @@ + int fd; + char *fb; + char *fb_base; ++ Bool Have18Bpp; + } FbdevPriv; + + typedef struct _fbdevScrPriv { diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode-palm.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode-palm.patch new file mode 100644 index 0000000000..255e707b55 --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode-palm.patch @@ -0,0 +1,34 @@ +--- kmode.c 2006-05-03 19:48:42.000000000 +0200 ++++ xserver/hw/kdrive/src/kmode.c 2006-05-03 19:50:43.000000000 +0200 +@@ -32,6 +32,31 @@ + /* H V Hz KHz */ + /* FP BP BLANK POLARITY */ + ++ /* Treo 650 */ ++ ++ { 320, 320, 64, 16256, ++ 17, 12, 32, KdSyncNegative, ++ 1, 11, 14, KdSyncNegative, ++ }, ++ ++ { 320, 320, 64, 0, ++ 0, 0, 0, KdSyncNegative, ++ 0, 0, 0, KdSyncNegative, ++ }, ++ ++ /* LifeDrive/T3/TX modes */ ++ ++ { 320, 480, 64, 16256, ++ 17, 12, 32, KdSyncNegative, ++ 1, 11, 14, KdSyncNegative, ++ }, ++ ++ { 480, 320, 64, 0, ++ 0, 0, 0, KdSyncNegative, ++ 0, 0, 0, KdSyncNegative, ++ }, ++ ++ + /* IPAQ modeline: + * + * Modeline "320x240" 5.7222 320 337 340 352 240 241 244 254" diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode.patch new file mode 100644 index 0000000000..5ad3e4e277 --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode.patch @@ -0,0 +1,28 @@ +--- /tmp/kmode.c 2005-06-27 14:46:19.716843288 +0200 ++++ xserver/hw/kdrive/src/kmode.c 2005-06-27 14:46:30.070269328 +0200 +@@ -41,6 +41,11 @@ + 1, 11, 14, KdSyncNegative, + }, + ++ { 240, 320, 64, 0, ++ 0, 0, 0, KdSyncNegative, ++ 0, 0, 0, KdSyncNegative, ++ }, ++ + /* Other VESA modes */ + { 640, 350, 85, 31500, /* VESA */ + 32, 96, 192, KdSyncPositive, /* 26.413 */ +@@ -80,6 +85,13 @@ + 16, 48, 160, KdSyncNegative, /* 31.469 */ + 10, 33, 45, KdSyncNegative, /* 59.940 */ + }, ++ ++ ++ { 480, 640, 60, 0, /* VESA */ ++ 0, 0, 0, KdSyncNegative, /* 31.469 */ ++ 0, 0, 0, KdSyncNegative, /* 59.940 */ ++ }, ++ + + /* 800x600 modes */ + { 800, 600, 85, 56250, /* VESA */ diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-autofoo.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-autofoo.patch new file mode 100644 index 0000000000..b53e327dae --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-autofoo.patch @@ -0,0 +1,54 @@ +Index: git/hw/kdrive/Makefile.am +=================================================================== +--- git.orig/hw/kdrive/Makefile.am 2006-09-02 12:12:13.000000000 +0200 ++++ git/hw/kdrive/Makefile.am 2006-09-02 12:12:14.000000000 +0200 +@@ -7,6 +7,10 @@ + FBDEV_SUBDIRS = fbdev epson + endif + ++if KDRIVEW100 ++W100_SUBDIRS = w100 ++endif ++ + if XSDLSERVER + XSDL_SUBDIRS = sdl + endif +@@ -20,6 +24,7 @@ + linux \ + $(XSDL_SUBDIRS) \ + $(FBDEV_SUBDIRS) \ ++ $(W100_SUBDIRS) \ + $(VESA_SUBDIRS) \ + $(XEPHYR_SUBDIRS) \ + fake +Index: git/configure.ac +=================================================================== +--- git.orig/configure.ac 2006-09-02 12:12:14.000000000 +0200 ++++ git/configure.ac 2006-09-02 12:12:14.000000000 +0200 +@@ -442,6 +442,7 @@ + AC_ARG_ENABLE(kdrive, AS_HELP_STRING([--enable-kdrive], [Build kdrive servers (default: no)]), [KDRIVE=$enableval], [KDRIVE=no]) + AC_ARG_ENABLE(xephyr, AS_HELP_STRING([--enable-xephyr], [Build the kdrive Xephyr server (default: auto)]), [XEPHYR=$enableval], [XEPHYR=auto]) + AC_ARG_ENABLE(xsdl, AS_HELP_STRING([--enable-xsdl], [Build the kdrive Xsdl server (default: auto)]), [XSDL=$enableval], [XSDL=auto]) ++AC_ARG_ENABLE(w100, AS_HELP_STRING([--enable-w100], [Build the kdrive Xw100 server (default: no)]), [KDRIVEW100=$enableval], [KDRIVEW100=no]) + dnl xprint + AC_ARG_ENABLE(freetype, AS_HELP_STRING([ --enable-freetype], [Build Xprint FreeType backend (default: yes)]), [XP_USE_FREETYPE=$enableval],[XP_USE_FREETYPE=no]) + AC_ARG_WITH(freetype-config, AS_HELP_STRING([ --with-freetype-config=PROG], [Use FreeType configuration program PROG (default: auto)]), freetype_config=$withval, freetype_config=auto) +@@ -1519,6 +1520,10 @@ + AC_SUBST([XSDL_LIBS]) + AC_SUBST([XSDL_INCS]) + ++AM_CONDITIONAL(KDRIVEW100, [test "x$KDRIVEW100" = xyes]) ++if test "x$KDRIVEW100" = xyes; then ++ AC_DEFINE(KDRIVEW100, 1, [Build Xw100 server]) ++fi + + dnl these only go in xkb-config.h (which is shared by the Xorg and Xnest servers) + AC_DEFINE(__XKBDEFRULES__, "xorg", [Default XKB rules]) +@@ -1753,6 +1758,7 @@ + hw/kdrive/epson/Makefile + hw/kdrive/fake/Makefile + hw/kdrive/fbdev/Makefile ++hw/kdrive/w100/Makefile + hw/kdrive/i810/Makefile + hw/kdrive/linux/Makefile + hw/kdrive/mach64/Makefile diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-fix-offscreen-bmp.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-fix-offscreen-bmp.patch new file mode 100644 index 0000000000..39bc22c6b3 --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-fix-offscreen-bmp.patch @@ -0,0 +1,15 @@ +Patch suggested by Manuel Teira to actually enable offscreen pixmap +acceleration in Xw100. Value 16 is empirical, works well on hx4700, +but in case of issues, consider double it (other accelerated drivers +use bigger values than 16). + +--- xorg-server-1.2.0/hw/kdrive/w100/ati_draw.c.org 2007-04-04 10:28:57.000000000 +0000 ++++ xorg-server-1.2.0/hw/kdrive/w100/ati_draw.c 2007-04-06 14:43:40.000000000 +0000 +@@ -433,6 +433,7 @@ + * or kaaPixmapUseScreen. But this is probably caused by some bug in this + * driver... */ + atis->kaa.flags |= KAA_OFFSCREEN_PIXMAPS; ++ atis->kaa.pitchAlign = 16; + if (!kaaDrawInit(pScreen, &atis->kaa)) + return FALSE; + diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-new-input-world-order.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-new-input-world-order.patch new file mode 100644 index 0000000000..239ae0bb67 --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-new-input-world-order.patch @@ -0,0 +1,28 @@ +Index: xorg-server-1.4/hw/kdrive/w100/ati_stub.c +=================================================================== +--- xorg-server-1.4.orig/hw/kdrive/w100/ati_stub.c 2007-09-08 21:40:26.000000000 +0200 ++++ xorg-server-1.4/hw/kdrive/w100/ati_stub.c 2007-09-08 22:04:27.000000000 +0200 +@@ -74,10 +74,20 @@ + void + InitInput(int argc, char **argv) + { +- KdInitInput(&LinuxMouseFuncs, &LinuxKeyboardFuncs); +-#ifdef TOUCHSCREEN +- KdAddMouseDriver(&TsFuncs); ++ KdKeyboardInfo *ki; ++ ++ KdAddKeyboardDriver (&LinuxKeyboardDriver); ++ KdAddPointerDriver (&LinuxMouseDriver); ++ KdAddKeyboardDriver (&LinuxEvdevKeyboardDriver); ++ KdAddPointerDriver (&LinuxEvdevMouseDriver); ++#ifdef TSLIB ++ KdAddPointerDriver (&TsDriver); + #endif ++ ++ ki = KdParseKeyboard ("keyboard"); ++ KdAddKeyboard(ki); ++ ++ KdInitInput (); + } + + void diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100.patch new file mode 100644 index 0000000000..1bb6f357c6 --- /dev/null +++ b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100.patch @@ -0,0 +1,6335 @@ +Index: git/hw/kdrive/w100/ati.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ git/hw/kdrive/w100/ati.c 2006-09-02 12:12:14.000000000 +0200 +@@ -0,0 +1,434 @@ ++/* ++ * Copyright © 2006 Alberto Mardegan <mardy@users.sourceforge.net> ++ * ++ * Permissio |
