Strobe magic 0xB03F register to flush PCI-e GART table.
The original XGI kernel driver strobed 0xB03F each time a page was allocated to back a GART page. When the driver was converted to use the DRM SG interface, this code was lost. Returning it fixes a long standing issue where the X-server would work fine the first time, but acceleration commands would be ignored on the second X-server invocation.main
parent
20a0e5e429
commit
15f841bd52
|
@ -103,7 +103,11 @@ static int xgi_pcie_lut_init(struct xgi_info * info)
|
|||
DRM_WRITE8(info->mmio_map, 0xB00C, temp & ~0x02);
|
||||
|
||||
/* Set GART base address to HW */
|
||||
dwWriteReg(info->mmio_map, 0xB034, info->lut_handle->busaddr);
|
||||
DRM_WRITE32(info->mmio_map, 0xB034, info->lut_handle->busaddr);
|
||||
|
||||
/* Flush GART table. */
|
||||
DRM_WRITE8(info->mmio_map, 0xB03F, 0x40);
|
||||
DRM_WRITE8(info->mmio_map, 0xB03F, 0x00);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue