]> git.pld-linux.org Git - packages/XFree86.git/blob - XFree86-i740-driver-update-cvs-20020617.patch
- 4.8.0 (probably the last XFree86 version ever, for comparison and archival reasons)
[packages/XFree86.git] / XFree86-i740-driver-update-cvs-20020617.patch
1 --- XFree86-4.2.1/xc42/programs/Xserver/hw/xfree86/drivers/i740/i740.h  Fri May  4 15:05:39 2001
2 +++ XFree86-4.2.1/xc/programs/Xserver/hw/xfree86/drivers/i740/i740.h    Fri Jan 25 16:56:02 2002
3 @@ -56,12 +56,13 @@
4  
5  typedef struct _I740Rec *I740Ptr;
6  
7 -typedef void (*I740WriteIndexedByteFunc)(I740Ptr pI740, int addr, 
8 +typedef void (*I740WriteIndexedByteFunc)(I740Ptr pI740, IOADDRESS addr, 
9                                          unsigned char index, char value);
10 -typedef char (*I740ReadIndexedByteFunc)(I740Ptr pI740, int addr, 
11 +typedef char (*I740ReadIndexedByteFunc)(I740Ptr pI740, IOADDRESS addr, 
12                                         unsigned char index);
13 -typedef void (*I740WriteByteFunc)(I740Ptr pI740, int addr, unsigned char value);
14 -typedef char (*I740ReadByteFunc)(I740Ptr pI740, int addr);
15 +typedef void (*I740WriteByteFunc)(I740Ptr pI740, IOADDRESS addr,
16 +                                 unsigned char value);
17 +typedef char (*I740ReadByteFunc)(I740Ptr pI740, IOADDRESS addr);
18  
19  typedef struct {
20    unsigned char DisplayControl;
21 @@ -114,6 +115,7 @@
22    I740WriteByteFunc writeStandard;
23    I740ReadByteFunc readStandard;
24    OptionInfoPtr Options;
25 +  IOADDRESS ioBase;
26  } I740Rec;
27  
28  #define I740PTR(p) ((I740Ptr)((p)->driverPrivate))
29 --- XFree86-4.2.1/xc42/programs/Xserver/hw/xfree86/drivers/i740/i740_accel.c    Sat Mar  3 17:26:12 2001
30 +++ XFree86-4.2.1/xc/programs/Xserver/hw/xfree86/drivers/i740/i740_accel.c      Fri Jan 25 16:56:02 2002
31 @@ -192,6 +192,7 @@
32  
33  static void
34  I740SyncPIO(ScrnInfoPtr pScrn) {
35 +  I740Ptr pI740 = I740PTR(pScrn);
36    WAIT_ENGINE_IDLE_PIO();
37  }
38  
39 --- XFree86-4.2.1/xc42/programs/Xserver/hw/xfree86/drivers/i740/i740_driver.c   Fri Jan  4 16:22:31 2002
40 +++ XFree86-4.2.1/xc/programs/Xserver/hw/xfree86/drivers/i740/i740_driver.c     Fri Jan 25 16:56:02 2002
41 @@ -501,6 +501,8 @@
42  
43    /* Allocate a vgaHWRec */
44    if (!vgaHWGetHWRec(pScrn)) return FALSE;
45 +  hwp = VGAHWPTR(pScrn);
46 +  pI740->ioBase = hwp->PIOOffset;
47  
48    pI740->PciInfo = xf86GetPciInfoForEntity(pI740->pEnt->index);
49    pI740->PciTag = pciTag(pI740->PciInfo->bus, pI740->PciInfo->device,
50 @@ -571,7 +573,6 @@
51    /* We use a programmable clock */
52    pScrn->progClock = TRUE;
53  
54 -  hwp = VGAHWPTR(pScrn);
55    pI740->cpp = pScrn->bitsPerPixel/8;
56  
57    /* We have to use PIO to probe, because we haven't mappend yet */
58 @@ -1736,11 +1737,6 @@
59  static Bool
60  I740SaveScreen(ScreenPtr pScreen, int mode)
61  {
62 -#if 0
63 -  Bool unblack = xf86IsUnblank(mode);
64 -  if (unblack) outw(SRX, 0x0300);
65 -  else outw(SRX, 0x0100);
66 -#endif
67    return vgaHWSaveScreen(pScreen, mode);
68  }
69  
70 --- XFree86-4.2.1/xc42/programs/Xserver/hw/xfree86/drivers/i740/i740_io.c       Tue Feb 22 23:47:14 2000
71 +++ XFree86-4.2.1/xc/programs/Xserver/hw/xfree86/drivers/i740/i740_io.c Fri Jan 25 16:56:03 2002
72 @@ -39,53 +39,76 @@
73  
74  #include "i740.h"
75  
76 -static void I740WriteControlPIO(I740Ptr pI740, int addr, unsigned char index, char val) {
77 +static void
78 +I740WriteControlPIO(I740Ptr pI740, IOADDRESS addr,
79 +                   unsigned char index, char val)
80 +{
81 +  addr += pI740->ioBase;
82    outb(addr, index);
83    outb(addr+1, val);
84  }
85  
86 -static char I740ReadControlPIO(I740Ptr pI740, int addr, unsigned char index) {
87 +static char
88 +I740ReadControlPIO(I740Ptr pI740, IOADDRESS addr, unsigned char index)
89 +{
90 +  addr += pI740->ioBase;
91    outb(addr, index);
92    return inb(addr+1);
93  }
94  
95 -static void I740WriteStandardPIO(I740Ptr pI740, int addr, unsigned char val) {
96 -  outb(addr, val);
97 +static void
98 +I740WriteStandardPIO(I740Ptr pI740, IOADDRESS addr, unsigned char val)
99 +{
100 +  outb(pI740->ioBase + addr, val);
101  }
102  
103 -static char I740ReadStandardPIO(I740Ptr pI740, int addr) {
104 -  return inb(addr);
105 +static char
106 +I740ReadStandardPIO(I740Ptr pI740, IOADDRESS addr)
107 +{
108 +  return inb(pI740->ioBase + addr);
109  }
110  
111 -void I740SetPIOAccess(I740Ptr pI740) {
112 +void
113 +I740SetPIOAccess(I740Ptr pI740)
114 +{
115    pI740->writeControl=I740WriteControlPIO;
116    pI740->readControl=I740ReadControlPIO;
117    pI740->writeStandard=I740WriteStandardPIO;
118    pI740->readStandard=I740ReadStandardPIO;
119  }
120  
121 -static void I740WriteControlMMIO(I740Ptr pI740, int addr, unsigned char index, char val) {
122 +static void
123 +I740WriteControlMMIO(I740Ptr pI740, IOADDRESS addr,
124 +                    unsigned char index, char val)
125 +{
126    moutb(addr, index);
127    moutb(addr+1, val);
128  }
129  
130 -static char I740ReadControlMMIO(I740Ptr pI740, int addr, unsigned char index) {
131 +static char
132 +I740ReadControlMMIO(I740Ptr pI740, IOADDRESS addr, unsigned char index)
133 +{
134    moutb(addr, index);
135    return minb(addr+1);
136  }
137  
138 -static void I740WriteStandardMMIO(I740Ptr pI740, int addr, unsigned char val) {
139 +static void
140 +I740WriteStandardMMIO(I740Ptr pI740, IOADDRESS addr, unsigned char val)
141 +{
142    moutb(addr, val);
143  }
144  
145 -static char I740ReadStandardMMIO(I740Ptr pI740, int addr) {
146 +static char
147 +I740ReadStandardMMIO(I740Ptr pI740, IOADDRESS addr)
148 +{
149    return minb(addr);
150  }
151  
152 -void I740SetMMIOAccess(I740Ptr pI740) {
153 +void
154 +I740SetMMIOAccess(I740Ptr pI740)
155 +{
156    pI740->writeControl=I740WriteControlMMIO;
157    pI740->readControl=I740ReadControlMMIO;
158    pI740->writeStandard=I740WriteStandardMMIO;
159    pI740->readStandard=I740ReadStandardMMIO;
160  }
161 -
162 --- XFree86-4.2.1/xc42/programs/Xserver/hw/xfree86/drivers/i740/i740_macros.h   Tue Feb 22 23:47:14 2000
163 +++ XFree86-4.2.1/xc/programs/Xserver/hw/xfree86/drivers/i740/i740_macros.h     Fri Jan 25 16:56:03 2002
164 @@ -34,9 +34,9 @@
165   */
166  
167  #define        WAIT_ENGINE_IDLE_PIO() {                                        \
168 -           outb(XRX, BITBLT_CNTL);                                     \
169 -           while (inb(XRX+1) & BITBLT_STATUS)                          \
170 -               outb(XRX, BITBLT_CNTL);                                 \
171 +           outb(pI740->ioBase + XRX, BITBLT_CNTL);                     \
172 +           while (inb(pI740->ioBase + XRX + 1) & BITBLT_STATUS)        \
173 +               outb(pI740->ioBase + XRX, BITBLT_CNTL);                 \
174         }
175  
176  #define        WAIT_ENGINE_IDLE_MMIO() {                                       \
This page took 0.047348 seconds and 3 git commands to generate.