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.

Reply via email to