diff options
Diffstat (limited to 'drivers/gpu/drm/nouveau/nv50_evo.c')
| -rw-r--r-- | drivers/gpu/drm/nouveau/nv50_evo.c | 10 | 
1 files changed, 5 insertions, 5 deletions
| diff --git a/drivers/gpu/drm/nouveau/nv50_evo.c b/drivers/gpu/drm/nouveau/nv50_evo.c index c8e83c1a4de8..c99d9751880c 100644 --- a/drivers/gpu/drm/nouveau/nv50_evo.c +++ b/drivers/gpu/drm/nouveau/nv50_evo.c @@ -38,6 +38,7 @@ nv50_evo_channel_del(struct nouveau_channel **pevo)  		return;  	*pevo = NULL; +	nouveau_ramht_ref(NULL, &evo->ramht, evo);  	nouveau_gpuobj_channel_takedown(evo);  	nouveau_bo_unmap(evo->pushbuf_bo);  	nouveau_bo_ref(NULL, &evo->pushbuf_bo); @@ -116,7 +117,7 @@ nv50_evo_channel_new(struct drm_device *dev, int chid,  	evo->user_get = 4;  	evo->user_put = 0; -	ret = nouveau_bo_new(dev, NULL, 4096, 0, TTM_PL_FLAG_VRAM, 0, 0, +	ret = nouveau_bo_new(dev, 4096, 0, TTM_PL_FLAG_VRAM, 0, 0,  			     &evo->pushbuf_bo);  	if (ret == 0)  		ret = nouveau_bo_pin(evo->pushbuf_bo, TTM_PL_FLAG_VRAM); @@ -153,7 +154,7 @@ nv50_evo_channel_init(struct nouveau_channel *evo)  {  	struct drm_device *dev = evo->dev;  	int id = evo->id, ret, i; -	u64 pushbuf = evo->pushbuf_bo->bo.mem.start << PAGE_SHIFT; +	u64 pushbuf = evo->pushbuf_bo->bo.offset;  	u32 tmp;  	tmp = nv_rd32(dev, NV50_PDISPLAY_EVO_CTRL(id)); @@ -331,16 +332,15 @@ nv50_evo_create(struct drm_device *dev)  		if (ret)  			goto err; -		ret = nouveau_bo_new(dev, NULL, 4096, 0x1000, TTM_PL_FLAG_VRAM, +		ret = nouveau_bo_new(dev, 4096, 0x1000, TTM_PL_FLAG_VRAM,  				     0, 0x0000, &dispc->sem.bo);  		if (!ret) { -			offset = dispc->sem.bo->bo.mem.start << PAGE_SHIFT; -  			ret = nouveau_bo_pin(dispc->sem.bo, TTM_PL_FLAG_VRAM);  			if (!ret)  				ret = nouveau_bo_map(dispc->sem.bo);  			if (ret)  				nouveau_bo_ref(NULL, &dispc->sem.bo); +			offset = dispc->sem.bo->bo.offset;  		}  		if (ret) | 
