Commit dfcbd550 authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau/imem/nv50: map bar2 write-combined



Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent be55287a
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -142,7 +142,7 @@ 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) +
	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");
@@ -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)) {