CVSROOT: /cvs Module name: src Changes by: o...@cvs.openbsd.org 2009/05/10 18:06:39
Modified files: sys/dev/pci/drm: ati_pcigart.c drmP.h r128_cce.c radeon_cp.c radeon_drv.c radeon_drv.h Log message: Rework the pcigart stuff somewhat. firstly: move the pcigart initialisation in radeon_cp.c into its own function to avoid the horrible nesting and make it more readable. secondly: make the pcigart code more intelligent depending on whether the gart table is in pci memory, or system memory. In the former case we use the bus_space functions and thus don't need BUS_SPACE_LINEAR, while i'm here, stop using the drm wrapper functions for mapping (which require a drm_local_map structure, which will die eventually) and just use bus_space_map itself. tested on pcie (in framebuffer memory) here on my x800. tested on an i386 agp card forced to pci mode by sthen. Doesn't make IGP chips worse, doesn't make them better either (tested on a rs690). basic idea from a commit "upstream" a while ago. All the code from yours truly.