Fix additions of RandR support in kmode.c

This commit is contained in:
Keith Packard 2002-10-18 06:08:10 +00:00
parent 5bb4a7b699
commit 7d214e2e2a
3 changed files with 21 additions and 18 deletions

View File

@ -27,7 +27,7 @@
* *
* Tested running under a Compaq IPAQ Pocket PC running Linux * Tested running under a Compaq IPAQ Pocket PC running Linux
*/ */
/* $XFree86: xc/programs/Xserver/hw/kdrive/pcmcia/pcmcia.c,v 1.4 2001/06/21 00:58:51 keithp Exp $ */ /* $XFree86: xc/programs/Xserver/hw/kdrive/pcmcia/pcmcia.c,v 1.6 2002/10/14 18:01:41 keithp Exp $ */
#include "pcmcia.h" #include "pcmcia.h"
#define extern #define extern
@ -387,11 +387,12 @@ Bool
pcmciaRandRGetInfo (ScreenPtr pScreen, Rotation *rotations) pcmciaRandRGetInfo (ScreenPtr pScreen, Rotation *rotations)
{ {
KdScreenPriv(pScreen); KdScreenPriv(pScreen);
pcmciaScreenInfo *pcmcias = (pcmciaScreenInfo *) pScreenPriv->screen->driver;
*rotations = (RR_Rotate_0|RR_Rotate_90|RR_Rotate_180|RR_Rotate_270| *rotations = (RR_Rotate_0|RR_Rotate_90|RR_Rotate_180|RR_Rotate_270|
RR_Reflect_X|RR_Reflect_Y); RR_Reflect_X|RR_Reflect_Y);
return KdRandRGetInfo (pScreen, pcmciaRandRSupported); return KdRandRGetInfo (pScreen, pcmcias->randr, pcmciaRandRSupported);
} }
int int
@ -423,16 +424,16 @@ pcmciaRandRSetConfig (ScreenPtr pScreen,
RRScreenSizePtr pSize) RRScreenSizePtr pSize)
{ {
KdScreenPriv(pScreen); KdScreenPriv(pScreen);
KdScreenInfo *screen = pScreenPriv->screen; KdScreenInfo *screen = pScreenPriv->screen;
FbdevPriv *priv = pScreenPriv->card->driver; FbdevPriv *priv = pScreenPriv->card->driver;
pcmciaScreenInfo *pcmcias = (pcmciaScreenInfo *) pScreenPriv->screen->driver; pcmciaScreenInfo *pcmcias = (pcmciaScreenInfo *) pScreenPriv->screen->driver;
Bool wasEnabled = pScreenPriv->enabled; Bool wasEnabled = pScreenPriv->enabled;
int newwidth, newheight; int newwidth, newheight;
LayerPtr pNewLayer; LayerPtr pNewLayer;
int kind; int kind;
int oldrandr = pcmcias->randr; int oldrandr = pcmcias->randr;
PixmapPtr pPixmap; PixmapPtr pPixmap;
KdMonitorTiming *t; const KdMonitorTiming *t;
randr = KdAddRotation (screen->randr, randr); randr = KdAddRotation (screen->randr, randr);

View File

@ -21,7 +21,7 @@
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE. * PERFORMANCE OF THIS SOFTWARE.
*/ */
/* $XFree86: xc/programs/Xserver/hw/kdrive/kdrive.h,v 1.25 2002/10/08 21:28:05 keithp Exp $ */ /* $XFree86: xc/programs/Xserver/hw/kdrive/kdrive.h,v 1.26 2002/10/14 18:01:40 keithp Exp $ */
#include <stdio.h> #include <stdio.h>
#include "X.h" #include "X.h"
@ -709,10 +709,11 @@ KdTuneMode (KdScreenInfo *screen,
#ifdef RANDR #ifdef RANDR
Bool Bool
KdRandRGetInfo (ScreenPtr pScreen, KdRandRGetInfo (ScreenPtr pScreen,
int randr,
Bool (*supported) (ScreenPtr pScreen, Bool (*supported) (ScreenPtr pScreen,
const KdMonitorTiming *)); const KdMonitorTiming *));
KdMonitorTiming * const KdMonitorTiming *
KdRandRGetTiming (ScreenPtr pScreen, KdRandRGetTiming (ScreenPtr pScreen,
Bool (*supported) (ScreenPtr pScreen, Bool (*supported) (ScreenPtr pScreen,
const KdMonitorTiming *), const KdMonitorTiming *),

View File

@ -1,5 +1,5 @@
/* /*
* $XFree86: xc/programs/Xserver/hw/kdrive/kmode.c,v 1.5 2000/05/24 23:57:56 keithp Exp $ * $XFree86: xc/programs/Xserver/hw/kdrive/kmode.c,v 1.7 2002/10/14 18:01:40 keithp Exp $
* *
* Copyright 1999 SuSE, Inc. * Copyright 1999 SuSE, Inc.
* *
@ -324,7 +324,8 @@ KdTuneMode (KdScreenInfo *screen,
#ifdef RANDR #ifdef RANDR
Bool Bool
KdRandRGetInfo (ScreenPtr pScreen, KdRandRGetInfo (ScreenPtr pScreen,
int randr,
Bool (*supported) (ScreenPtr pScreen, Bool (*supported) (ScreenPtr pScreen,
const KdMonitorTiming *)) const KdMonitorTiming *))
{ {
@ -335,7 +336,7 @@ KdRandRGetInfo (ScreenPtr pScreen,
for (i = 0, t = kdMonitorTimings; i < NUM_MONITOR_TIMINGS; i++, t++) for (i = 0, t = kdMonitorTimings; i < NUM_MONITOR_TIMINGS; i++, t++)
{ {
if ((*supported) (screen, t)) if ((*supported) (pScreen, t))
{ {
RRScreenSizePtr pSize; RRScreenSizePtr pSize;
@ -358,7 +359,7 @@ KdRandRGetInfo (ScreenPtr pScreen,
return TRUE; return TRUE;
} }
KdMonitorTiming * const KdMonitorTiming *
KdRandRGetTiming (ScreenPtr pScreen, KdRandRGetTiming (ScreenPtr pScreen,
Bool (*supported) (ScreenPtr pScreen, Bool (*supported) (ScreenPtr pScreen,
const KdMonitorTiming *), const KdMonitorTiming *),