Commit 6ca61373 authored by Dave Airlie's avatar Dave Airlie

remove DRM_IOREMAP* and DRM_FIND_MAP macros replace them with inline fns

Signed-off-by: default avatarDave Airlie <airlied@linux.ie>
parent a4cd96cd
...@@ -259,54 +259,6 @@ static inline struct page * vmalloc_to_page(void * vmalloc_addr) ...@@ -259,54 +259,6 @@ static inline struct page * vmalloc_to_page(void * vmalloc_addr)
/*@}*/ /*@}*/
/***********************************************************************/
/** \name Mapping helper macros */
/*@{*/
#define DRM_IOREMAP(map, dev) \
(map)->handle = DRM(ioremap)( (map)->offset, (map)->size, (dev) )
#define DRM_IOREMAP_NOCACHE(map, dev) \
(map)->handle = DRM(ioremap_nocache)((map)->offset, (map)->size, (dev))
#define DRM_IOREMAPFREE(map, dev) \
do { \
if ( (map)->handle && (map)->size ) \
DRM(ioremapfree)( (map)->handle, (map)->size, (dev) ); \
} while (0)
/**
* Find mapping.
*
* \param _map matching mapping if found, untouched otherwise.
* \param _o offset.
*
* Expects the existence of a local variable named \p dev pointing to the
* drm_device structure.
*/
#define DRM_FIND_MAP(_map, _o) \
do { \
struct list_head *_list; \
list_for_each( _list, &dev->maplist->head ) { \
drm_map_list_t *_entry = list_entry( _list, drm_map_list_t, head ); \
if ( _entry->map && \
_entry->map->offset == (_o) ) { \
(_map) = _entry->map; \
break; \
} \
} \
} while(0)
/**
* Drop mapping.
*
* \sa #DRM_FIND_MAP.
*/
#define DRM_DROP_MAP(_map)
/*@}*/
/***********************************************************************/ /***********************************************************************/
/** \name Internal types and structures */ /** \name Internal types and structures */
/*@{*/ /*@{*/
...@@ -1007,6 +959,40 @@ extern int DRM(ati_pcigart_cleanup)(drm_device_t *dev, ...@@ -1007,6 +959,40 @@ extern int DRM(ati_pcigart_cleanup)(drm_device_t *dev,
unsigned long addr, unsigned long addr,
dma_addr_t bus_addr); dma_addr_t bus_addr);
/* Inline replacements for DRM_IOREMAP macros */
static __inline__ void drm_core_ioremap(struct drm_map *map, struct drm_device *dev)
{
map->handle = DRM(ioremap)( map->offset, map->size, dev );
}
static __inline__ void drm_core_ioremap_nocache(struct drm_map *map, struct drm_device *dev)
{
map->handle = DRM(ioremap_nocache)(map->offset, map->size, dev);
}
static __inline__ void drm_core_ioremapfree(struct drm_map *map, struct drm_device *dev)
{
if ( map->handle && map->size )
DRM(ioremapfree)( map->handle, map->size, dev );
}
static __inline__ struct drm_map *drm_core_findmap(struct drm_device *dev, unsigned long offset)
{
struct list_head *_list;
list_for_each( _list, &dev->maplist->head ) {
drm_map_list_t *_entry = list_entry( _list, drm_map_list_t, head );
if ( _entry->map &&
_entry->map->offset == offset ) {
return _entry->map;
}
}
return NULL;
}
static __inline__ void drm_core_dropmap(struct drm_map *map)
{
}
/*@}*/ /*@}*/
#endif /* __KERNEL__ */ #endif /* __KERNEL__ */
......
...@@ -187,6 +187,7 @@ static inline void drm_ioremapfree(void *pt, unsigned long size, drm_device_t *d ...@@ -187,6 +187,7 @@ static inline void drm_ioremapfree(void *pt, unsigned long size, drm_device_t *d
iounmap(pt); iounmap(pt);
} }
#if DEBUG_MEMORY #if DEBUG_MEMORY
#include "drm_memory_debug.h" #include "drm_memory_debug.h"
#else #else
......
...@@ -639,12 +639,12 @@ static int gamma_do_init_dma( drm_device_t *dev, drm_gamma_init_t *init ) ...@@ -639,12 +639,12 @@ static int gamma_do_init_dma( drm_device_t *dev, drm_gamma_init_t *init )
break; break;
} }
} }
DRM_FIND_MAP( dev_priv->mmio0, init->mmio0 ); dev_priv->mmio0 = drm_core_findmap(dev, init->mmio0);
DRM_FIND_MAP( dev_priv->mmio1, init->mmio1 ); dev_priv->mmio1 = drm_core_findmap(dev, init->mmio1);
DRM_FIND_MAP( dev_priv->mmio2, init->mmio2 ); dev_priv->mmio2 = drm_core_findmap(dev, init->mmio2);
DRM_FIND_MAP( dev_priv->mmio3, init->mmio3 ); dev_priv->mmio3 = drm_core_findmap(dev, init->mmio3);
dev_priv->sarea_priv = (drm_gamma_sarea_t *) dev_priv->sarea_priv = (drm_gamma_sarea_t *)
((u8 *)dev_priv->sarea->handle + ((u8 *)dev_priv->sarea->handle +
init->sarea_priv_offset); init->sarea_priv_offset);
...@@ -661,9 +661,8 @@ static int gamma_do_init_dma( drm_device_t *dev, drm_gamma_init_t *init ) ...@@ -661,9 +661,8 @@ static int gamma_do_init_dma( drm_device_t *dev, drm_gamma_init_t *init )
buf = dma->buflist[GLINT_DRI_BUF_COUNT]; buf = dma->buflist[GLINT_DRI_BUF_COUNT];
} else { } else {
DRM_FIND_MAP( dev->agp_buffer_map, init->buffers_offset ); dev->agp_buffer_map = drm_core_findmap(dev, init->buffers_offset);
drm_core_ioremap( dev->agp_buffer_map, dev);
DRM_IOREMAP( dev->agp_buffer_map, dev );
buf = dma->buflist[GLINT_DRI_BUF_COUNT]; buf = dma->buflist[GLINT_DRI_BUF_COUNT];
pgt = buf->address; pgt = buf->address;
...@@ -701,7 +700,7 @@ int gamma_do_cleanup_dma( drm_device_t *dev ) ...@@ -701,7 +700,7 @@ int gamma_do_cleanup_dma( drm_device_t *dev )
if ( dev->dev_private ) { if ( dev->dev_private ) {
if ( dev->agp_buffer_map != NULL ) if ( dev->agp_buffer_map != NULL )
DRM_IOREMAPFREE( dev->agp_buffer_map, dev ); drm_core_ioremapfree( dev->agp_buffer_map, dev );
DRM(free)( dev->dev_private, sizeof(drm_gamma_private_t), DRM(free)( dev->dev_private, sizeof(drm_gamma_private_t),
DRM_MEM_DRIVER ); DRM_MEM_DRIVER );
......
...@@ -364,14 +364,14 @@ static int i810_dma_initialize(drm_device_t *dev, ...@@ -364,14 +364,14 @@ static int i810_dma_initialize(drm_device_t *dev,
DRM_ERROR("can not find sarea!\n"); DRM_ERROR("can not find sarea!\n");
return -EINVAL; return -EINVAL;
} }
DRM_FIND_MAP( dev_priv->mmio_map, init->mmio_offset ); dev_priv->mmio_map = drm_core_findmap(dev, init->mmio_offset);
if (!dev_priv->mmio_map) { if (!dev_priv->mmio_map) {
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
i810_dma_cleanup(dev); i810_dma_cleanup(dev);
DRM_ERROR("can not find mmio map!\n"); DRM_ERROR("can not find mmio map!\n");
return -EINVAL; return -EINVAL;
} }
DRM_FIND_MAP( dev->agp_buffer_map, init->buffers_offset ); dev->agp_buffer_map = drm_core_findmap(dev, init->buffers_offset);
if (!dev->agp_buffer_map) { if (!dev->agp_buffer_map) {
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
i810_dma_cleanup(dev); i810_dma_cleanup(dev);
......
...@@ -371,14 +371,14 @@ static int i830_dma_initialize(drm_device_t *dev, ...@@ -371,14 +371,14 @@ static int i830_dma_initialize(drm_device_t *dev,
DRM_ERROR("can not find sarea!\n"); DRM_ERROR("can not find sarea!\n");
return -EINVAL; return -EINVAL;
} }
DRM_FIND_MAP( dev_priv->mmio_map, init->mmio_offset ); dev_priv->mmio_map = drm_core_findmap(dev, init->mmio_offset);
if(!dev_priv->mmio_map) { if(!dev_priv->mmio_map) {
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
i830_dma_cleanup(dev); i830_dma_cleanup(dev);
DRM_ERROR("can not find mmio map!\n"); DRM_ERROR("can not find mmio map!\n");
return -EINVAL; return -EINVAL;
} }
DRM_FIND_MAP( dev->agp_buffer_map, init->buffers_offset ); dev->agp_buffer_map = drm_core_findmap(dev, init->buffers_offset);
if(!dev->agp_buffer_map) { if(!dev->agp_buffer_map) {
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
i830_dma_cleanup(dev); i830_dma_cleanup(dev);
......
...@@ -91,7 +91,7 @@ int i915_dma_cleanup(drm_device_t * dev) ...@@ -91,7 +91,7 @@ int i915_dma_cleanup(drm_device_t * dev)
(drm_i915_private_t *) dev->dev_private; (drm_i915_private_t *) dev->dev_private;
if (dev_priv->ring.virtual_start) { if (dev_priv->ring.virtual_start) {
DRM_IOREMAPFREE(&dev_priv->ring.map, dev); drm_core_ioremapfree( &dev_priv->ring.map, dev);
} }
if (dev_priv->hw_status_page) { if (dev_priv->hw_status_page) {
...@@ -125,7 +125,7 @@ static int i915_initialize(drm_device_t * dev, ...@@ -125,7 +125,7 @@ static int i915_initialize(drm_device_t * dev,
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP(dev_priv->mmio_map, init->mmio_offset); dev_priv->mmio_map = drm_core_findmap(dev, init->mmio_offset);
if (!dev_priv->mmio_map) { if (!dev_priv->mmio_map) {
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
i915_dma_cleanup(dev); i915_dma_cleanup(dev);
...@@ -147,7 +147,7 @@ static int i915_initialize(drm_device_t * dev, ...@@ -147,7 +147,7 @@ static int i915_initialize(drm_device_t * dev,
dev_priv->ring.map.flags = 0; dev_priv->ring.map.flags = 0;
dev_priv->ring.map.mtrr = 0; dev_priv->ring.map.mtrr = 0;
DRM_IOREMAP(&dev_priv->ring.map, dev); drm_core_ioremap( &dev_priv->ring.map, dev );
if (dev_priv->ring.map.handle == NULL) { if (dev_priv->ring.map.handle == NULL) {
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
......
...@@ -500,7 +500,7 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init ) ...@@ -500,7 +500,7 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init )
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev_priv->mmio, init->mmio_offset ); dev_priv->mmio = drm_core_findmap(dev, init->mmio_offset);
if(!dev_priv->mmio) { if(!dev_priv->mmio) {
DRM_ERROR( "failed to find mmio region!\n" ); DRM_ERROR( "failed to find mmio region!\n" );
/* Assign dev_private so we can do cleanup. */ /* Assign dev_private so we can do cleanup. */
...@@ -508,7 +508,7 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init ) ...@@ -508,7 +508,7 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init )
mga_do_cleanup_dma( dev ); mga_do_cleanup_dma( dev );
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev_priv->status, init->status_offset ); dev_priv->status = drm_core_findmap(dev, init->status_offset);
if(!dev_priv->status) { if(!dev_priv->status) {
DRM_ERROR( "failed to find status page!\n" ); DRM_ERROR( "failed to find status page!\n" );
/* Assign dev_private so we can do cleanup. */ /* Assign dev_private so we can do cleanup. */
...@@ -516,8 +516,7 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init ) ...@@ -516,8 +516,7 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init )
mga_do_cleanup_dma( dev ); mga_do_cleanup_dma( dev );
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
dev_priv->warp = drm_core_findmap(dev, init->warp_offset);
DRM_FIND_MAP( dev_priv->warp, init->warp_offset );
if(!dev_priv->warp) { if(!dev_priv->warp) {
DRM_ERROR( "failed to find warp microcode region!\n" ); DRM_ERROR( "failed to find warp microcode region!\n" );
/* Assign dev_private so we can do cleanup. */ /* Assign dev_private so we can do cleanup. */
...@@ -525,7 +524,7 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init ) ...@@ -525,7 +524,7 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init )
mga_do_cleanup_dma( dev ); mga_do_cleanup_dma( dev );
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev_priv->primary, init->primary_offset ); dev_priv->primary = drm_core_findmap(dev, init->primary_offset);
if(!dev_priv->primary) { if(!dev_priv->primary) {
DRM_ERROR( "failed to find primary dma region!\n" ); DRM_ERROR( "failed to find primary dma region!\n" );
/* Assign dev_private so we can do cleanup. */ /* Assign dev_private so we can do cleanup. */
...@@ -533,7 +532,7 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init ) ...@@ -533,7 +532,7 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init )
mga_do_cleanup_dma( dev ); mga_do_cleanup_dma( dev );
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev->agp_buffer_map, init->buffers_offset ); dev->agp_buffer_map = drm_core_findmap(dev, init->buffers_offset);
if(!dev->agp_buffer_map) { if(!dev->agp_buffer_map) {
DRM_ERROR( "failed to find dma buffer region!\n" ); DRM_ERROR( "failed to find dma buffer region!\n" );
/* Assign dev_private so we can do cleanup. */ /* Assign dev_private so we can do cleanup. */
...@@ -546,9 +545,9 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init ) ...@@ -546,9 +545,9 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init )
(drm_mga_sarea_t *)((u8 *)dev_priv->sarea->handle + (drm_mga_sarea_t *)((u8 *)dev_priv->sarea->handle +
init->sarea_priv_offset); init->sarea_priv_offset);
DRM_IOREMAP( dev_priv->warp, dev ); drm_core_ioremap( dev_priv->warp, dev );
DRM_IOREMAP( dev_priv->primary, dev ); drm_core_ioremap( dev_priv->primary, dev );
DRM_IOREMAP( dev->agp_buffer_map, dev ); drm_core_ioremap( dev->agp_buffer_map, dev );
if(!dev_priv->warp->handle || if(!dev_priv->warp->handle ||
!dev_priv->primary->handle || !dev_priv->primary->handle ||
...@@ -643,11 +642,11 @@ int mga_do_cleanup_dma( drm_device_t *dev ) ...@@ -643,11 +642,11 @@ int mga_do_cleanup_dma( drm_device_t *dev )
drm_mga_private_t *dev_priv = dev->dev_private; drm_mga_private_t *dev_priv = dev->dev_private;
if ( dev_priv->warp != NULL ) if ( dev_priv->warp != NULL )
DRM_IOREMAPFREE( dev_priv->warp, dev ); drm_core_ioremapfree( dev_priv->warp, dev );
if ( dev_priv->primary != NULL ) if ( dev_priv->primary != NULL )
DRM_IOREMAPFREE( dev_priv->primary, dev ); drm_core_ioremapfree( dev_priv->primary, dev );
if ( dev->agp_buffer_map != NULL ) if ( dev->agp_buffer_map != NULL )
DRM_IOREMAPFREE( dev->agp_buffer_map, dev ); drm_core_ioremapfree( dev->agp_buffer_map, dev );
if ( dev_priv->head != NULL ) { if ( dev_priv->head != NULL ) {
mga_freelist_cleanup( dev ); mga_freelist_cleanup( dev );
......
...@@ -467,28 +467,28 @@ static int r128_do_init_cce( drm_device_t *dev, drm_r128_init_t *init ) ...@@ -467,28 +467,28 @@ static int r128_do_init_cce( drm_device_t *dev, drm_r128_init_t *init )
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev_priv->mmio, init->mmio_offset ); dev_priv->mmio = drm_core_findmap(dev, init->mmio_offset);
if(!dev_priv->mmio) { if(!dev_priv->mmio) {
DRM_ERROR("could not find mmio region!\n"); DRM_ERROR("could not find mmio region!\n");
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
r128_do_cleanup_cce( dev ); r128_do_cleanup_cce( dev );
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev_priv->cce_ring, init->ring_offset ); dev_priv->cce_ring = drm_core_findmap(dev, init->ring_offset);
if(!dev_priv->cce_ring) { if(!dev_priv->cce_ring) {
DRM_ERROR("could not find cce ring region!\n"); DRM_ERROR("could not find cce ring region!\n");
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
r128_do_cleanup_cce( dev ); r128_do_cleanup_cce( dev );
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev_priv->ring_rptr, init->ring_rptr_offset ); dev_priv->ring_rptr = drm_core_findmap(dev, init->ring_rptr_offset);
if(!dev_priv->ring_rptr) { if(!dev_priv->ring_rptr) {
DRM_ERROR("could not find ring read pointer!\n"); DRM_ERROR("could not find ring read pointer!\n");
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
r128_do_cleanup_cce( dev ); r128_do_cleanup_cce( dev );
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev->agp_buffer_map, init->buffers_offset ); dev->agp_buffer_map = drm_core_findmap(dev, init->buffers_offset);
if(!dev->agp_buffer_map) { if(!dev->agp_buffer_map) {
DRM_ERROR("could not find dma buffer region!\n"); DRM_ERROR("could not find dma buffer region!\n");
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
...@@ -497,8 +497,7 @@ static int r128_do_init_cce( drm_device_t *dev, drm_r128_init_t *init ) ...@@ -497,8 +497,7 @@ static int r128_do_init_cce( drm_device_t *dev, drm_r128_init_t *init )
} }
if ( !dev_priv->is_pci ) { if ( !dev_priv->is_pci ) {
DRM_FIND_MAP( dev_priv->agp_textures, dev_priv->agp_textures = drm_core_findmap(dev, init->agp_textures_offset);
init->agp_textures_offset );
if(!dev_priv->agp_textures) { if(!dev_priv->agp_textures) {
DRM_ERROR("could not find agp texture region!\n"); DRM_ERROR("could not find agp texture region!\n");
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
...@@ -513,9 +512,9 @@ static int r128_do_init_cce( drm_device_t *dev, drm_r128_init_t *init ) ...@@ -513,9 +512,9 @@ static int r128_do_init_cce( drm_device_t *dev, drm_r128_init_t *init )
#if __REALLY_HAVE_AGP #if __REALLY_HAVE_AGP
if ( !dev_priv->is_pci ) { if ( !dev_priv->is_pci ) {
DRM_IOREMAP( dev_priv->cce_ring, dev ); drm_core_ioremap( dev_priv->cce_ring, dev );
DRM_IOREMAP( dev_priv->ring_rptr, dev ); drm_core_ioremap( dev_priv->ring_rptr, dev );
DRM_IOREMAP( dev->agp_buffer_map, dev ); drm_core_ioremap( dev->agp_buffer_map, dev );
if(!dev_priv->cce_ring->handle || if(!dev_priv->cce_ring->handle ||
!dev_priv->ring_rptr->handle || !dev_priv->ring_rptr->handle ||
!dev->agp_buffer_map->handle) { !dev->agp_buffer_map->handle) {
...@@ -601,11 +600,11 @@ int r128_do_cleanup_cce( drm_device_t *dev ) ...@@ -601,11 +600,11 @@ int r128_do_cleanup_cce( drm_device_t *dev )
#if __REALLY_HAVE_AGP #if __REALLY_HAVE_AGP
if ( !dev_priv->is_pci ) { if ( !dev_priv->is_pci ) {
if ( dev_priv->cce_ring != NULL ) if ( dev_priv->cce_ring != NULL )
DRM_IOREMAPFREE( dev_priv->cce_ring, dev ); drm_core_ioremapfree( dev_priv->cce_ring, dev );
if ( dev_priv->ring_rptr != NULL ) if ( dev_priv->ring_rptr != NULL )
DRM_IOREMAPFREE( dev_priv->ring_rptr, dev ); drm_core_ioremapfree( dev_priv->ring_rptr, dev );
if ( dev->agp_buffer_map != NULL ) if ( dev->agp_buffer_map != NULL )
DRM_IOREMAPFREE( dev->agp_buffer_map, dev ); drm_core_ioremapfree( dev->agp_buffer_map, dev );
} else } else
#endif #endif
{ {
......
...@@ -1118,28 +1118,28 @@ static int radeon_do_init_cp( drm_device_t *dev, drm_radeon_init_t *init ) ...@@ -1118,28 +1118,28 @@ static int radeon_do_init_cp( drm_device_t *dev, drm_radeon_init_t *init )
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev_priv->mmio, init->mmio_offset ); dev_priv->mmio = drm_core_findmap(dev, init->mmio_offset);
if(!dev_priv->mmio) { if(!dev_priv->mmio) {
DRM_ERROR("could not find mmio region!\n"); DRM_ERROR("could not find mmio region!\n");
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
radeon_do_cleanup_cp(dev); radeon_do_cleanup_cp(dev);
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev_priv->cp_ring, init->ring_offset ); dev_priv->cp_ring = drm_core_findmap(dev, init->ring_offset);
if(!dev_priv->cp_ring) { if(!dev_priv->cp_ring) {
DRM_ERROR("could not find cp ring region!\n"); DRM_ERROR("could not find cp ring region!\n");
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
radeon_do_cleanup_cp(dev); radeon_do_cleanup_cp(dev);
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev_priv->ring_rptr, init->ring_rptr_offset ); dev_priv->ring_rptr = drm_core_findmap(dev, init->ring_rptr_offset);
if(!dev_priv->ring_rptr) { if(!dev_priv->ring_rptr) {
DRM_ERROR("could not find ring read pointer!\n"); DRM_ERROR("could not find ring read pointer!\n");
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
radeon_do_cleanup_cp(dev); radeon_do_cleanup_cp(dev);
return DRM_ERR(EINVAL); return DRM_ERR(EINVAL);
} }
DRM_FIND_MAP( dev->agp_buffer_map, init->buffers_offset ); dev->agp_buffer_map = drm_core_findmap(dev, init->buffers_offset);
if(!dev->agp_buffer_map) { if(!dev->agp_buffer_map) {
DRM_ERROR("could not find dma buffer region!\n"); DRM_ERROR("could not find dma buffer region!\n");
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
...@@ -1148,7 +1148,7 @@ static int radeon_do_init_cp( drm_device_t *dev, drm_radeon_init_t *init ) ...@@ -1148,7 +1148,7 @@ static int radeon_do_init_cp( drm_device_t *dev, drm_radeon_init_t *init )
} }
if ( init->gart_textures_offset ) { if ( init->gart_textures_offset ) {
DRM_FIND_MAP( dev_priv->gart_textures, init->gart_textures_offset ); dev_priv->gart_textures = drm_core_findmap(dev, init->gart_textures_offset);
if ( !dev_priv->gart_textures ) { if ( !dev_priv->gart_textures ) {
DRM_ERROR("could not find GART texture region!\n"); DRM_ERROR("could not find GART texture region!\n");
dev->dev_private = (void *)dev_priv; dev->dev_private = (void *)dev_priv;
...@@ -1163,9 +1163,9 @@ static int radeon_do_init_cp( drm_device_t *dev, drm_radeon_init_t *init ) ...@@ -1163,9 +1163,9 @@ static int radeon_do_init_cp( drm_device_t *dev, drm_radeon_init_t *init )
#if __REALLY_HAVE_AGP #if __REALLY_HAVE_AGP
if ( !dev_priv->is_pci ) { if ( !dev_priv->is_pci ) {
DRM_IOREMAP( dev_priv->cp_ring, dev ); drm_core_ioremap( dev_priv->cp_ring, dev );
DRM_IOREMAP( dev_priv->ring_rptr, dev ); drm_core_ioremap( dev_priv->ring_rptr, dev );
DRM_IOREMAP( dev->agp_buffer_map, dev ); drm_core_ioremap( dev->agp_buffer_map, dev );
if(!dev_priv->cp_ring->handle || if(!dev_priv->cp_ring->handle ||
!dev_priv->ring_rptr->handle || !dev_priv->ring_rptr->handle ||
!dev->agp_buffer_map->handle) { !dev->agp_buffer_map->handle) {
...@@ -1289,11 +1289,11 @@ int radeon_do_cleanup_cp( drm_device_t *dev ) ...@@ -1289,11 +1289,11 @@ int radeon_do_cleanup_cp( drm_device_t *dev )
#if __REALLY_HAVE_AGP #if __REALLY_HAVE_AGP
if ( !dev_priv->is_pci ) { if ( !dev_priv->is_pci ) {
if ( dev_priv->cp_ring != NULL ) if ( dev_priv->cp_ring != NULL )
DRM_IOREMAPFREE( dev_priv->cp_ring, dev ); drm_core_ioremapfree( dev_priv->cp_ring, dev );
if ( dev_priv->ring_rptr != NULL ) if ( dev_priv->ring_rptr != NULL )
DRM_IOREMAPFREE( dev_priv->ring_rptr, dev ); drm_core_ioremapfree( dev_priv->ring_rptr, dev );
if ( dev->agp_buffer_map != NULL ) if ( dev->agp_buffer_map != NULL )
DRM_IOREMAPFREE( dev->agp_buffer_map, dev ); drm_core_ioremapfree( dev->agp_buffer_map, dev );
} else } else
#endif #endif
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment