|
Lines 174-187
NVIsConnected (ScrnInfoPtr pScrn, int ou
Link Here
|
| 174 |
{ |
174 |
{ |
| 175 |
NVPtr pNv = NVPTR(pScrn); |
175 |
NVPtr pNv = NVPTR(pScrn); |
| 176 |
volatile U032 *PRAMDAC = pNv->PRAMDAC0; |
176 |
volatile U032 *PRAMDAC = pNv->PRAMDAC0; |
| 177 |
CARD32 reg52C, reg608; |
177 |
CARD32 reg52C, reg608, dac0_reg608; |
| 178 |
Bool present; |
178 |
Bool present; |
| 179 |
|
179 |
|
| 180 |
xf86DrvMsg(pScrn->scrnIndex, X_INFO, |
180 |
xf86DrvMsg(pScrn->scrnIndex, X_INFO, |
| 181 |
"Probing for analog device on output %s...\n", |
181 |
"Probing for analog device on output %s...\n", |
| 182 |
output ? "B" : "A"); |
182 |
output ? "B" : "A"); |
| 183 |
|
183 |
|
| 184 |
if(output) PRAMDAC += 0x800; |
184 |
if(output) { |
|
|
185 |
dac0_reg608 = PRAMDAC[0x0608/4]; |
| 186 |
PRAMDAC += 0x800; |
| 187 |
} |
| 185 |
|
188 |
|
| 186 |
reg52C = PRAMDAC[0x052C/4]; |
189 |
reg52C = PRAMDAC[0x052C/4]; |
| 187 |
reg608 = PRAMDAC[0x0608/4]; |
190 |
reg608 = PRAMDAC[0x0608/4]; |
|
Lines 204-210
NVIsConnected (ScrnInfoPtr pScrn, int ou
Link Here
|
| 204 |
else |
207 |
else |
| 205 |
xf86DrvMsg(pScrn->scrnIndex, X_PROBED, " ...can't find one\n"); |
208 |
xf86DrvMsg(pScrn->scrnIndex, X_PROBED, " ...can't find one\n"); |
| 206 |
|
209 |
|
| 207 |
pNv->PRAMDAC0[0x0608/4] &= 0x0000EFFF; |
210 |
if(output) |
|
|
211 |
pNv->PRAMDAC0[0x0608/4] = dac0_reg608; |
| 208 |
|
212 |
|
| 209 |
PRAMDAC[0x052C/4] = reg52C; |
213 |
PRAMDAC[0x052C/4] = reg52C; |
| 210 |
PRAMDAC[0x0608/4] = reg608; |
214 |
PRAMDAC[0x0608/4] = reg608; |