View | Details | Raw Unified | Return to bug 12441 | Differences between
and this patch

Collapse All | Expand All

(-)a/drivers/gpu/drm/drm_memory.c (-1 / +7 lines)
Lines 171-179 EXPORT_SYMBOL(drm_core_ioremap); Link Here
171
171
172
void drm_core_ioremap_wc(struct drm_map *map, struct drm_device *dev)
172
void drm_core_ioremap_wc(struct drm_map *map, struct drm_device *dev)
173
{
173
{
174
	map->handle = ioremap_wc(map->offset, map->size);
174
	if (drm_core_has_AGP(dev) &&
175
			dev->agp && dev->agp->cant_use_aperture &&
176
			map->type == _DRM_AGP)
177
		map->handle = agp_remap(map->offset, map->size, dev);
178
	else
179
		map->handle = ioremap_wc(map->offset, map->size);
175
}
180
}
176
EXPORT_SYMBOL(drm_core_ioremap_wc);
181
EXPORT_SYMBOL(drm_core_ioremap_wc);
182
177
void drm_core_ioremapfree(struct drm_map *map, struct drm_device *dev)
183
void drm_core_ioremapfree(struct drm_map *map, struct drm_device *dev)
178
{
184
{
179
	if (!map->handle || !map->size)
185
	if (!map->handle || !map->size)
(-)a/drivers/gpu/drm/radeon/radeon_cp.c (-3 / +3 lines)
Lines 1039-1047 static int radeon_do_init_cp(struct drm_device *dev, drm_radeon_init_t *init, Link Here
1039
1039
1040
#if __OS_HAS_AGP
1040
#if __OS_HAS_AGP
1041
	if (dev_priv->flags & RADEON_IS_AGP) {
1041
	if (dev_priv->flags & RADEON_IS_AGP) {
1042
		drm_core_ioremap(dev_priv->cp_ring, dev);
1042
		drm_core_ioremap_wc(dev_priv->cp_ring, dev);
1043
		drm_core_ioremap(dev_priv->ring_rptr, dev);
1043
		drm_core_ioremap_wc(dev_priv->ring_rptr, dev);
1044
		drm_core_ioremap(dev->agp_buffer_map, dev);
1044
		drm_core_ioremap_wc(dev->agp_buffer_map, dev);
1045
		if (!dev_priv->cp_ring->handle ||
1045
		if (!dev_priv->cp_ring->handle ||
1046
		    !dev_priv->ring_rptr->handle ||
1046
		    !dev_priv->ring_rptr->handle ||
1047
		    !dev->agp_buffer_map->handle) {
1047
		    !dev->agp_buffer_map->handle) {

Return to bug 12441