From: Ben Skeggs Date: Tue, 31 Oct 2017 17:56:19 +0000 (+1000) Subject: drm/nouveau/imem/nv50: map bar2 write-combined X-Git-Tag: Ubuntu-5.0.0-8.9~3602^2~14^2~113 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=dfcbd5506817c7bfba67c7c2232610f7693b1938;p=mirror_ubuntu-disco-kernel.git drm/nouveau/imem/nv50: map bar2 write-combined Signed-off-by: Ben Skeggs --- diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c b/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c index 9b5606cb2f4e..ec2904a0e9fc 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c @@ -142,8 +142,8 @@ nv50_instobj_kmap(struct nv50_instobj *iobj, struct nvkm_vmm *vmm) /* Make the mapping visible to the host. */ iobj->bar = bar; - iobj->map = ioremap(device->func->resource_addr(device, 3) + - (u32)iobj->bar.offset, size); + iobj->map = ioremap_wc(device->func->resource_addr(device, 3) + + (u32)iobj->bar.offset, size); if (!iobj->map) { nvkm_warn(subdev, "PRAMIN ioremap failed\n"); nvkm_vm_put(&iobj->bar); @@ -164,6 +164,7 @@ nv50_instobj_release(struct nvkm_memory *memory) struct nv50_instmem *imem = iobj->imem; struct nvkm_subdev *subdev = &imem->base.subdev; + wmb(); nvkm_bar_flush(subdev->device->bar); if (refcount_dec_and_mutex_lock(&iobj->maps, &subdev->mutex)) {