Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 834b21f5 authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau/fb/gk20a,gm20b: setup mmu debug buffer registers at init()



Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 99c59172
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -22,7 +22,6 @@
#include "gf100.h"
#include "ctxgf100.h"

#include <subdev/fb.h>
#include <subdev/timer.h>

#include <nvif/class.h>
@@ -220,7 +219,6 @@ int
gk20a_gr_init(struct gf100_gr *gr)
{
	struct nvkm_device *device = gr->base.engine.subdev.device;
	struct nvkm_fb *fb = device->fb;
	const u32 magicgpc918 = DIV_ROUND_UP(0x00800000, gr->tpc_total);
	u32 data[TPC_MAX / 8] = {};
	u8  tpcnr[GPC_MAX];
@@ -241,9 +239,6 @@ gk20a_gr_init(struct gf100_gr *gr)
		return ret;

	/* MMU debug buffer */
	nvkm_wr32(device, 0x100cc8, nvkm_memory_addr(fb->mmu_wr) >> 8);
	nvkm_wr32(device, 0x100ccc, nvkm_memory_addr(fb->mmu_rd) >> 8);

	if (gr->func->init_gpc_mmu)
		gr->func->init_gpc_mmu(gr);

+4 −0
Original line number Diff line number Diff line
@@ -21,11 +21,15 @@
 */
#include "priv.h"

#include <core/memory.h>

static void
gk20a_fb_init(struct nvkm_fb *fb)
{
	struct nvkm_device *device = fb->subdev.device;
	nvkm_mask(device, 0x100c80, 0x00000001, 0x00000000); /* 128KiB lpg */
	nvkm_wr32(device, 0x100cc8, nvkm_memory_addr(fb->mmu_wr) >> 8);
	nvkm_wr32(device, 0x100ccc, nvkm_memory_addr(fb->mmu_rd) >> 8);
}

static const struct nvkm_fb_func