mirror of
https://gitlab.freedesktop.org/mesa/drm.git
synced 2025-12-20 19:50:12 +01:00
Don't ioremap the framebuffer area. The ioremapped area wasn't used by
anything, and took up valuable KVA. While I'm in the area, clean up BSD
MTRR stuff some more.
Suggested by: jonsmirl
This commit is contained in:
parent
5285b02987
commit
9fb6986e83
22 changed files with 74 additions and 134 deletions
|
|
@ -267,7 +267,7 @@ typedef struct drm_agp_head {
|
||||||
int enabled;
|
int enabled;
|
||||||
int acquired;
|
int acquired;
|
||||||
unsigned long base;
|
unsigned long base;
|
||||||
int agp_mtrr;
|
int mtrr;
|
||||||
int cant_use_aperture;
|
int cant_use_aperture;
|
||||||
unsigned long page_mask;
|
unsigned long page_mask;
|
||||||
} drm_agp_head_t;
|
} drm_agp_head_t;
|
||||||
|
|
@ -287,7 +287,7 @@ typedef struct drm_local_map {
|
||||||
drm_map_flags_t flags; /* Flags */
|
drm_map_flags_t flags; /* Flags */
|
||||||
void *handle; /* User-space: "Handle" to pass to mmap */
|
void *handle; /* User-space: "Handle" to pass to mmap */
|
||||||
/* Kernel-space: kernel-virtual address */
|
/* Kernel-space: kernel-virtual address */
|
||||||
int mtrr; /* MTRR slot used */
|
int mtrr; /* Boolean: MTRR used */
|
||||||
/* Private data */
|
/* Private data */
|
||||||
bus_space_tag_t iot;
|
bus_space_tag_t iot;
|
||||||
bus_space_handle_t ioh;
|
bus_space_handle_t ioh;
|
||||||
|
|
|
||||||
|
|
@ -87,7 +87,7 @@ int DRM(addmap)( DRM_IOCTL_ARGS )
|
||||||
map->size = request.size;
|
map->size = request.size;
|
||||||
map->type = request.type;
|
map->type = request.type;
|
||||||
map->flags = request.flags;
|
map->flags = request.flags;
|
||||||
map->mtrr = -1;
|
map->mtrr = 0;
|
||||||
map->handle = 0;
|
map->handle = 0;
|
||||||
|
|
||||||
/* Only allow shared memory to be removable since we only keep enough
|
/* Only allow shared memory to be removable since we only keep enough
|
||||||
|
|
@ -104,28 +104,23 @@ int DRM(addmap)( DRM_IOCTL_ARGS )
|
||||||
DRM(free)( map, sizeof(*map), DRM_MEM_MAPS );
|
DRM(free)( map, sizeof(*map), DRM_MEM_MAPS );
|
||||||
return DRM_ERR(EINVAL);
|
return DRM_ERR(EINVAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
switch ( map->type ) {
|
|
||||||
case _DRM_REGISTERS:
|
|
||||||
case _DRM_FRAME_BUFFER:
|
|
||||||
if (map->offset + map->size < map->offset) {
|
if (map->offset + map->size < map->offset) {
|
||||||
DRM(free)(map, sizeof(*map), DRM_MEM_MAPS);
|
DRM(free)(map, sizeof(*map), DRM_MEM_MAPS);
|
||||||
return DRM_ERR(EINVAL);
|
return DRM_ERR(EINVAL);
|
||||||
}
|
}
|
||||||
#if __REALLY_HAVE_MTRR
|
|
||||||
if ( map->type == _DRM_FRAME_BUFFER ||
|
|
||||||
(map->flags & _DRM_WRITE_COMBINING) ) {
|
|
||||||
int mtrr;
|
|
||||||
|
|
||||||
mtrr = DRM(mtrr_add)(map->offset, map->size,
|
switch ( map->type ) {
|
||||||
DRM_MTRR_WC);
|
case _DRM_REGISTERS:
|
||||||
if (mtrr == 0)
|
|
||||||
map->mtrr = 1;
|
|
||||||
}
|
|
||||||
#endif /* __REALLY_HAVE_MTRR */
|
|
||||||
DRM_IOREMAP(map, dev);
|
DRM_IOREMAP(map, dev);
|
||||||
|
if (!(map->flags & _DRM_WRITE_COMBINING))
|
||||||
|
break;
|
||||||
|
/* FALLTHROUGH */
|
||||||
|
case _DRM_FRAME_BUFFER:
|
||||||
|
#if __REALLY_HAVE_MTRR
|
||||||
|
if (DRM(mtrr_add)(map->offset, map->size, DRM_MTRR_WC) == 0)
|
||||||
|
map->mtrr = 1;
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case _DRM_SHM:
|
case _DRM_SHM:
|
||||||
map->handle = (void *)DRM(alloc)(map->size, DRM_MEM_SAREA);
|
map->handle = (void *)DRM(alloc)(map->size, DRM_MEM_SAREA);
|
||||||
DRM_DEBUG( "%lu %d %p\n",
|
DRM_DEBUG( "%lu %d %p\n",
|
||||||
|
|
@ -152,7 +147,7 @@ int DRM(addmap)( DRM_IOCTL_ARGS )
|
||||||
#if __REALLY_HAVE_AGP
|
#if __REALLY_HAVE_AGP
|
||||||
case _DRM_AGP:
|
case _DRM_AGP:
|
||||||
map->offset += dev->agp->base;
|
map->offset += dev->agp->base;
|
||||||
map->mtrr = dev->agp->agp_mtrr; /* for getmap */
|
map->mtrr = dev->agp->mtrr; /* for getmap */
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
case _DRM_SCATTER_GATHER:
|
case _DRM_SCATTER_GATHER:
|
||||||
|
|
@ -231,12 +226,12 @@ int DRM(rmmap)( DRM_IOCTL_ARGS )
|
||||||
case _DRM_REGISTERS:
|
case _DRM_REGISTERS:
|
||||||
case _DRM_FRAME_BUFFER:
|
case _DRM_FRAME_BUFFER:
|
||||||
#if __REALLY_HAVE_MTRR
|
#if __REALLY_HAVE_MTRR
|
||||||
if (map->mtrr >= 0) {
|
if (map->mtrr) {
|
||||||
int __unused mtrr;
|
int __unused retcode;
|
||||||
|
|
||||||
mtrr = DRM(mtrr_del)(map->offset, map->size,
|
retcode = DRM(mtrr_del)(map->offset, map->size,
|
||||||
DRM_MTRR_WC);
|
DRM_MTRR_WC);
|
||||||
DRM_DEBUG("mtrr_del = %d\n", mtrr);
|
DRM_DEBUG("mtrr_del = %d\n", retcode);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
DRM(ioremapfree)(map);
|
DRM(ioremapfree)(map);
|
||||||
|
|
|
||||||
|
|
@ -565,17 +565,18 @@ static int DRM(takedown)( drm_device_t *dev )
|
||||||
map = list->map;
|
map = list->map;
|
||||||
switch ( map->type ) {
|
switch ( map->type ) {
|
||||||
case _DRM_REGISTERS:
|
case _DRM_REGISTERS:
|
||||||
|
DRM(ioremapfree)(map);
|
||||||
|
/* FALLTHROUGH */
|
||||||
case _DRM_FRAME_BUFFER:
|
case _DRM_FRAME_BUFFER:
|
||||||
#if __REALLY_HAVE_MTRR
|
#if __REALLY_HAVE_MTRR
|
||||||
if ( map->mtrr >= 0 ) {
|
if (map->mtrr) {
|
||||||
int __unused mtrr;
|
int __unused retcode;
|
||||||
|
|
||||||
mtrr = DRM(mtrr_del)(map->offset,
|
retcode = DRM(mtrr_del)(map->offset,
|
||||||
map->size, DRM_MTRR_WC);
|
map->size, DRM_MTRR_WC);
|
||||||
DRM_DEBUG("mtrr_del=%d\n", mtrr);
|
DRM_DEBUG("mtrr_del = %d", retcode);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
DRM(ioremapfree)( map );
|
|
||||||
break;
|
break;
|
||||||
case _DRM_SHM:
|
case _DRM_SHM:
|
||||||
DRM(free)(map->handle,
|
DRM(free)(map->handle,
|
||||||
|
|
@ -679,12 +680,9 @@ static int DRM(init)( device_t nbdev )
|
||||||
#endif /* __MUST_HAVE_AGP */
|
#endif /* __MUST_HAVE_AGP */
|
||||||
#if __REALLY_HAVE_MTRR
|
#if __REALLY_HAVE_MTRR
|
||||||
if (dev->agp) {
|
if (dev->agp) {
|
||||||
int retcode;
|
if (DRM(mtrr_add)(dev->agp->info.ai_aperture_base,
|
||||||
|
dev->agp->info.ai_aperture_size, DRM_MTRR_WC) == 0)
|
||||||
retcode = DRM(mtrr_add)(dev->agp->info.ai_aperture_base,
|
dev->agp->mtrr = 1;
|
||||||
dev->agp->info.ai_aperture_size, DRM_MTRR_WC);
|
|
||||||
if (retcode == 0)
|
|
||||||
dev->agp->agp_mtrr=1;
|
|
||||||
}
|
}
|
||||||
#endif /* __REALLY_HAVE_MTRR */
|
#endif /* __REALLY_HAVE_MTRR */
|
||||||
#endif /* __REALLY_HAVE_AGP */
|
#endif /* __REALLY_HAVE_AGP */
|
||||||
|
|
@ -742,12 +740,12 @@ static void DRM(cleanup)(drm_device_t *dev)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if __REALLY_HAVE_AGP && __REALLY_HAVE_MTRR
|
#if __REALLY_HAVE_AGP && __REALLY_HAVE_MTRR
|
||||||
if ( dev->agp && dev->agp->agp_mtrr >= 0) {
|
if (dev->agp && dev->agp->mtrr) {
|
||||||
int __unused mtrr;
|
int __unused retcode;
|
||||||
|
|
||||||
mtrr = DRM(mtrr_del)(dev->agp->info.ai_aperture_base,
|
retcode = DRM(mtrr_del)(dev->agp->info.ai_aperture_base,
|
||||||
dev->agp->info.ai_aperture_size, DRM_MTRR_WC);
|
dev->agp->info.ai_aperture_size, DRM_MTRR_WC);
|
||||||
DRM_DEBUG("mtrr_del=%d\n", mtrr);
|
DRM_DEBUG("mtrr_del = %d", retcode);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -192,7 +192,7 @@ static int DRM(vm_info)DRM_SYSCTL_HANDLER_ARGS
|
||||||
else
|
else
|
||||||
type = types[map->type];
|
type = types[map->type];
|
||||||
|
|
||||||
if (map->mtrr <= 0)
|
if (!map->mtrr)
|
||||||
yesno = "no";
|
yesno = "no";
|
||||||
else
|
else
|
||||||
yesno = "yes";
|
yesno = "yes";
|
||||||
|
|
|
||||||
|
|
@ -267,7 +267,7 @@ typedef struct drm_agp_head {
|
||||||
int enabled;
|
int enabled;
|
||||||
int acquired;
|
int acquired;
|
||||||
unsigned long base;
|
unsigned long base;
|
||||||
int agp_mtrr;
|
int mtrr;
|
||||||
int cant_use_aperture;
|
int cant_use_aperture;
|
||||||
unsigned long page_mask;
|
unsigned long page_mask;
|
||||||
} drm_agp_head_t;
|
} drm_agp_head_t;
|
||||||
|
|
@ -287,7 +287,7 @@ typedef struct drm_local_map {
|
||||||
drm_map_flags_t flags; /* Flags */
|
drm_map_flags_t flags; /* Flags */
|
||||||
void *handle; /* User-space: "Handle" to pass to mmap */
|
void *handle; /* User-space: "Handle" to pass to mmap */
|
||||||
/* Kernel-space: kernel-virtual address */
|
/* Kernel-space: kernel-virtual address */
|
||||||
int mtrr; /* MTRR slot used */
|
int mtrr; /* Boolean: MTRR used */
|
||||||
/* Private data */
|
/* Private data */
|
||||||
bus_space_tag_t iot;
|
bus_space_tag_t iot;
|
||||||
bus_space_handle_t ioh;
|
bus_space_handle_t ioh;
|
||||||
|
|
|
||||||
|
|
@ -87,7 +87,7 @@ int DRM(addmap)( DRM_IOCTL_ARGS )
|
||||||
map->size = request.size;
|
map->size = request.size;
|
||||||
map->type = request.type;
|
map->type = request.type;
|
||||||
map->flags = request.flags;
|
map->flags = request.flags;
|
||||||
map->mtrr = -1;
|
map->mtrr = 0;
|
||||||
map->handle = 0;
|
map->handle = 0;
|
||||||
|
|
||||||
/* Only allow shared memory to be removable since we only keep enough
|
/* Only allow shared memory to be removable since we only keep enough
|
||||||
|
|
@ -104,28 +104,23 @@ int DRM(addmap)( DRM_IOCTL_ARGS )
|
||||||
DRM(free)( map, sizeof(*map), DRM_MEM_MAPS );
|
DRM(free)( map, sizeof(*map), DRM_MEM_MAPS );
|
||||||
return DRM_ERR(EINVAL);
|
return DRM_ERR(EINVAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
switch ( map->type ) {
|
|
||||||
case _DRM_REGISTERS:
|
|
||||||
case _DRM_FRAME_BUFFER:
|
|
||||||
if (map->offset + map->size < map->offset) {
|
if (map->offset + map->size < map->offset) {
|
||||||
DRM(free)(map, sizeof(*map), DRM_MEM_MAPS);
|
DRM(free)(map, sizeof(*map), DRM_MEM_MAPS);
|
||||||
return DRM_ERR(EINVAL);
|
return DRM_ERR(EINVAL);
|
||||||
}
|
}
|
||||||
#if __REALLY_HAVE_MTRR
|
|
||||||
if ( map->type == _DRM_FRAME_BUFFER ||
|
|
||||||
(map->flags & _DRM_WRITE_COMBINING) ) {
|
|
||||||
int mtrr;
|
|
||||||
|
|
||||||
mtrr = DRM(mtrr_add)(map->offset, map->size,
|
switch ( map->type ) {
|
||||||
DRM_MTRR_WC);
|
case _DRM_REGISTERS:
|
||||||
if (mtrr == 0)
|
|
||||||
map->mtrr = 1;
|
|
||||||
}
|
|
||||||
#endif /* __REALLY_HAVE_MTRR */
|
|
||||||
DRM_IOREMAP(map, dev);
|
DRM_IOREMAP(map, dev);
|
||||||
|
if (!(map->flags & _DRM_WRITE_COMBINING))
|
||||||
|
break;
|
||||||
|
/* FALLTHROUGH */
|
||||||
|
case _DRM_FRAME_BUFFER:
|
||||||
|
#if __REALLY_HAVE_MTRR
|
||||||
|
if (DRM(mtrr_add)(map->offset, map->size, DRM_MTRR_WC) == 0)
|
||||||
|
map->mtrr = 1;
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case _DRM_SHM:
|
case _DRM_SHM:
|
||||||
map->handle = (void *)DRM(alloc)(map->size, DRM_MEM_SAREA);
|
map->handle = (void *)DRM(alloc)(map->size, DRM_MEM_SAREA);
|
||||||
DRM_DEBUG( "%lu %d %p\n",
|
DRM_DEBUG( "%lu %d %p\n",
|
||||||
|
|
@ -152,7 +147,7 @@ int DRM(addmap)( DRM_IOCTL_ARGS )
|
||||||
#if __REALLY_HAVE_AGP
|
#if __REALLY_HAVE_AGP
|
||||||
case _DRM_AGP:
|
case _DRM_AGP:
|
||||||
map->offset += dev->agp->base;
|
map->offset += dev->agp->base;
|
||||||
map->mtrr = dev->agp->agp_mtrr; /* for getmap */
|
map->mtrr = dev->agp->mtrr; /* for getmap */
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
case _DRM_SCATTER_GATHER:
|
case _DRM_SCATTER_GATHER:
|
||||||
|
|
@ -231,12 +226,12 @@ int DRM(rmmap)( DRM_IOCTL_ARGS )
|
||||||
case _DRM_REGISTERS:
|
case _DRM_REGISTERS:
|
||||||
case _DRM_FRAME_BUFFER:
|
case _DRM_FRAME_BUFFER:
|
||||||
#if __REALLY_HAVE_MTRR
|
#if __REALLY_HAVE_MTRR
|
||||||
if (map->mtrr >= 0) {
|
if (map->mtrr) {
|
||||||
int __unused mtrr;
|
int __unused retcode;
|
||||||
|
|
||||||
mtrr = DRM(mtrr_del)(map->offset, map->size,
|
retcode = DRM(mtrr_del)(map->offset, map->size,
|
||||||
DRM_MTRR_WC);
|
DRM_MTRR_WC);
|
||||||
DRM_DEBUG("mtrr_del = %d\n", mtrr);
|
DRM_DEBUG("mtrr_del = %d\n", retcode);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
DRM(ioremapfree)(map);
|
DRM(ioremapfree)(map);
|
||||||
|
|
|
||||||
|
|
@ -565,17 +565,18 @@ static int DRM(takedown)( drm_device_t *dev )
|
||||||
map = list->map;
|
map = list->map;
|
||||||
switch ( map->type ) {
|
switch ( map->type ) {
|
||||||
case _DRM_REGISTERS:
|
case _DRM_REGISTERS:
|
||||||
|
DRM(ioremapfree)(map);
|
||||||
|
/* FALLTHROUGH */
|
||||||
case _DRM_FRAME_BUFFER:
|
case _DRM_FRAME_BUFFER:
|
||||||
#if __REALLY_HAVE_MTRR
|
#if __REALLY_HAVE_MTRR
|
||||||
if ( map->mtrr >= 0 ) {
|
if (map->mtrr) {
|
||||||
int __unused mtrr;
|
int __unused retcode;
|
||||||
|
|
||||||
mtrr = DRM(mtrr_del)(map->offset,
|
retcode = DRM(mtrr_del)(map->offset,
|
||||||
map->size, DRM_MTRR_WC);
|
map->size, DRM_MTRR_WC);
|
||||||
DRM_DEBUG("mtrr_del=%d\n", mtrr);
|
DRM_DEBUG("mtrr_del = %d", retcode);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
DRM(ioremapfree)( map );
|
|
||||||
break;
|
break;
|
||||||
case _DRM_SHM:
|
case _DRM_SHM:
|
||||||
DRM(free)(map->handle,
|
DRM(free)(map->handle,
|
||||||
|
|
@ -679,12 +680,9 @@ static int DRM(init)( device_t nbdev )
|
||||||
#endif /* __MUST_HAVE_AGP */
|
#endif /* __MUST_HAVE_AGP */
|
||||||
#if __REALLY_HAVE_MTRR
|
#if __REALLY_HAVE_MTRR
|
||||||
if (dev->agp) {
|
if (dev->agp) {
|
||||||
int retcode;
|
if (DRM(mtrr_add)(dev->agp->info.ai_aperture_base,
|
||||||
|
dev->agp->info.ai_aperture_size, DRM_MTRR_WC) == 0)
|
||||||
retcode = DRM(mtrr_add)(dev->agp->info.ai_aperture_base,
|
dev->agp->mtrr = 1;
|
||||||
dev->agp->info.ai_aperture_size, DRM_MTRR_WC);
|
|
||||||
if (retcode == 0)
|
|
||||||
dev->agp->agp_mtrr=1;
|
|
||||||
}
|
}
|
||||||
#endif /* __REALLY_HAVE_MTRR */
|
#endif /* __REALLY_HAVE_MTRR */
|
||||||
#endif /* __REALLY_HAVE_AGP */
|
#endif /* __REALLY_HAVE_AGP */
|
||||||
|
|
@ -742,12 +740,12 @@ static void DRM(cleanup)(drm_device_t *dev)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if __REALLY_HAVE_AGP && __REALLY_HAVE_MTRR
|
#if __REALLY_HAVE_AGP && __REALLY_HAVE_MTRR
|
||||||
if ( dev->agp && dev->agp->agp_mtrr >= 0) {
|
if (dev->agp && dev->agp->mtrr) {
|
||||||
int __unused mtrr;
|
int __unused retcode;
|
||||||
|
|
||||||
mtrr = DRM(mtrr_del)(dev->agp->info.ai_aperture_base,
|
retcode = DRM(mtrr_del)(dev->agp->info.ai_aperture_base,
|
||||||
dev->agp->info.ai_aperture_size, DRM_MTRR_WC);
|
dev->agp->info.ai_aperture_size, DRM_MTRR_WC);
|
||||||
DRM_DEBUG("mtrr_del=%d\n", mtrr);
|
DRM_DEBUG("mtrr_del = %d", retcode);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -192,7 +192,7 @@ static int DRM(vm_info)DRM_SYSCTL_HANDLER_ARGS
|
||||||
else
|
else
|
||||||
type = types[map->type];
|
type = types[map->type];
|
||||||
|
|
||||||
if (map->mtrr <= 0)
|
if (!map->mtrr)
|
||||||
yesno = "no";
|
yesno = "no";
|
||||||
else
|
else
|
||||||
yesno = "yes";
|
yesno = "yes";
|
||||||
|
|
|
||||||
|
|
@ -148,7 +148,9 @@ int DRM(addmap)( struct inode *inode, struct file *filp,
|
||||||
MTRR_TYPE_WRCOMB, 1 );
|
MTRR_TYPE_WRCOMB, 1 );
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
map->handle = DRM(ioremap)( map->offset, map->size, dev );
|
if (map->type == _DRM_REGISTERS)
|
||||||
|
map->handle = DRM(ioremap)( map->offset, map->size,
|
||||||
|
dev );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case _DRM_SHM:
|
case _DRM_SHM:
|
||||||
|
|
|
||||||
|
|
@ -148,7 +148,9 @@ int DRM(addmap)( struct inode *inode, struct file *filp,
|
||||||
MTRR_TYPE_WRCOMB, 1 );
|
MTRR_TYPE_WRCOMB, 1 );
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
map->handle = DRM(ioremap)( map->offset, map->size, dev );
|
if (map->type == _DRM_REGISTERS)
|
||||||
|
map->handle = DRM(ioremap)( map->offset, map->size,
|
||||||
|
dev );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case _DRM_SHM:
|
case _DRM_SHM:
|
||||||
|
|
|
||||||
|
|
@ -500,14 +500,6 @@ 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->fb, init->fb_offset );
|
|
||||||
if(!dev_priv->fb) {
|
|
||||||
DRM_ERROR( "failed to find framebuffer!\n" );
|
|
||||||
/* Assign dev_private so we can do cleanup. */
|
|
||||||
dev->dev_private = (void *)dev_priv;
|
|
||||||
mga_do_cleanup_dma( dev );
|
|
||||||
return DRM_ERR(EINVAL);
|
|
||||||
}
|
|
||||||
DRM_FIND_MAP( dev_priv->mmio, init->mmio_offset );
|
DRM_FIND_MAP( dev_priv->mmio, 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" );
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,6 @@ typedef struct drm_mga_private {
|
||||||
unsigned int texture_size;
|
unsigned int texture_size;
|
||||||
|
|
||||||
drm_local_map_t *sarea;
|
drm_local_map_t *sarea;
|
||||||
drm_local_map_t *fb;
|
|
||||||
drm_local_map_t *mmio;
|
drm_local_map_t *mmio;
|
||||||
drm_local_map_t *status;
|
drm_local_map_t *status;
|
||||||
drm_local_map_t *warp;
|
drm_local_map_t *warp;
|
||||||
|
|
|
||||||
|
|
@ -467,13 +467,6 @@ 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->fb, init->fb_offset );
|
|
||||||
if(!dev_priv->fb) {
|
|
||||||
DRM_ERROR("could not find framebuffer!\n");
|
|
||||||
dev->dev_private = (void *)dev_priv;
|
|
||||||
r128_do_cleanup_cce( dev );
|
|
||||||
return DRM_ERR(EINVAL);
|
|
||||||
}
|
|
||||||
DRM_FIND_MAP( dev_priv->mmio, init->mmio_offset );
|
DRM_FIND_MAP( dev_priv->mmio, 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");
|
||||||
|
|
|
||||||
|
|
@ -97,7 +97,6 @@ typedef struct drm_r128_private {
|
||||||
u32 span_pitch_offset_c;
|
u32 span_pitch_offset_c;
|
||||||
|
|
||||||
drm_local_map_t *sarea;
|
drm_local_map_t *sarea;
|
||||||
drm_local_map_t *fb;
|
|
||||||
drm_local_map_t *mmio;
|
drm_local_map_t *mmio;
|
||||||
drm_local_map_t *cce_ring;
|
drm_local_map_t *cce_ring;
|
||||||
drm_local_map_t *ring_rptr;
|
drm_local_map_t *ring_rptr;
|
||||||
|
|
|
||||||
|
|
@ -1118,13 +1118,6 @@ 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->fb, init->fb_offset );
|
|
||||||
if(!dev_priv->fb) {
|
|
||||||
DRM_ERROR("could not find framebuffer!\n");
|
|
||||||
dev->dev_private = (void *)dev_priv;
|
|
||||||
radeon_do_cleanup_cp(dev);
|
|
||||||
return DRM_ERR(EINVAL);
|
|
||||||
}
|
|
||||||
DRM_FIND_MAP( dev_priv->mmio, init->mmio_offset );
|
DRM_FIND_MAP( dev_priv->mmio, 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");
|
||||||
|
|
|
||||||
|
|
@ -135,7 +135,6 @@ typedef struct drm_radeon_private {
|
||||||
unsigned long gart_textures_offset;
|
unsigned long gart_textures_offset;
|
||||||
|
|
||||||
drm_local_map_t *sarea;
|
drm_local_map_t *sarea;
|
||||||
drm_local_map_t *fb;
|
|
||||||
drm_local_map_t *mmio;
|
drm_local_map_t *mmio;
|
||||||
drm_local_map_t *cp_ring;
|
drm_local_map_t *cp_ring;
|
||||||
drm_local_map_t *ring_rptr;
|
drm_local_map_t *ring_rptr;
|
||||||
|
|
|
||||||
|
|
@ -500,14 +500,6 @@ 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->fb, init->fb_offset );
|
|
||||||
if(!dev_priv->fb) {
|
|
||||||
DRM_ERROR( "failed to find framebuffer!\n" );
|
|
||||||
/* Assign dev_private so we can do cleanup. */
|
|
||||||
dev->dev_private = (void *)dev_priv;
|
|
||||||
mga_do_cleanup_dma( dev );
|
|
||||||
return DRM_ERR(EINVAL);
|
|
||||||
}
|
|
||||||
DRM_FIND_MAP( dev_priv->mmio, init->mmio_offset );
|
DRM_FIND_MAP( dev_priv->mmio, 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" );
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,6 @@ typedef struct drm_mga_private {
|
||||||
unsigned int texture_size;
|
unsigned int texture_size;
|
||||||
|
|
||||||
drm_local_map_t *sarea;
|
drm_local_map_t *sarea;
|
||||||
drm_local_map_t *fb;
|
|
||||||
drm_local_map_t *mmio;
|
drm_local_map_t *mmio;
|
||||||
drm_local_map_t *status;
|
drm_local_map_t *status;
|
||||||
drm_local_map_t *warp;
|
drm_local_map_t *warp;
|
||||||
|
|
|
||||||
|
|
@ -467,13 +467,6 @@ 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->fb, init->fb_offset );
|
|
||||||
if(!dev_priv->fb) {
|
|
||||||
DRM_ERROR("could not find framebuffer!\n");
|
|
||||||
dev->dev_private = (void *)dev_priv;
|
|
||||||
r128_do_cleanup_cce( dev );
|
|
||||||
return DRM_ERR(EINVAL);
|
|
||||||
}
|
|
||||||
DRM_FIND_MAP( dev_priv->mmio, init->mmio_offset );
|
DRM_FIND_MAP( dev_priv->mmio, 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");
|
||||||
|
|
|
||||||
|
|
@ -97,7 +97,6 @@ typedef struct drm_r128_private {
|
||||||
u32 span_pitch_offset_c;
|
u32 span_pitch_offset_c;
|
||||||
|
|
||||||
drm_local_map_t *sarea;
|
drm_local_map_t *sarea;
|
||||||
drm_local_map_t *fb;
|
|
||||||
drm_local_map_t *mmio;
|
drm_local_map_t *mmio;
|
||||||
drm_local_map_t *cce_ring;
|
drm_local_map_t *cce_ring;
|
||||||
drm_local_map_t *ring_rptr;
|
drm_local_map_t *ring_rptr;
|
||||||
|
|
|
||||||
|
|
@ -1118,13 +1118,6 @@ 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->fb, init->fb_offset );
|
|
||||||
if(!dev_priv->fb) {
|
|
||||||
DRM_ERROR("could not find framebuffer!\n");
|
|
||||||
dev->dev_private = (void *)dev_priv;
|
|
||||||
radeon_do_cleanup_cp(dev);
|
|
||||||
return DRM_ERR(EINVAL);
|
|
||||||
}
|
|
||||||
DRM_FIND_MAP( dev_priv->mmio, init->mmio_offset );
|
DRM_FIND_MAP( dev_priv->mmio, 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");
|
||||||
|
|
|
||||||
|
|
@ -135,7 +135,6 @@ typedef struct drm_radeon_private {
|
||||||
unsigned long gart_textures_offset;
|
unsigned long gart_textures_offset;
|
||||||
|
|
||||||
drm_local_map_t *sarea;
|
drm_local_map_t *sarea;
|
||||||
drm_local_map_t *fb;
|
|
||||||
drm_local_map_t *mmio;
|
drm_local_map_t *mmio;
|
||||||
drm_local_map_t *cp_ring;
|
drm_local_map_t *cp_ring;
|
||||||
drm_local_map_t *ring_rptr;
|
drm_local_map_t *ring_rptr;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue