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

Commit 87ac331e authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau/gr/gk104-: move rop_active_fbps init to nonctx



Matches newer RM.

Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 4d3df19a
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -81,8 +81,6 @@ void gk104_grctx_generate_bundle(struct gf100_grctx *);
void gk104_grctx_generate_pagepool(struct gf100_grctx *);
void gk104_grctx_generate_unkn(struct gf100_gr *);
void gk104_grctx_generate_r418bb8(struct gf100_gr *);
void gk104_grctx_generate_rop_active_fbps(struct gf100_gr *);


void gm107_grctx_generate_bundle(struct gf100_grctx *);
void gm107_grctx_generate_pagepool(struct gf100_grctx *);
+0 −10
Original line number Diff line number Diff line
@@ -942,15 +942,6 @@ gk104_grctx_generate_r418bb8(struct gf100_gr *gr)
		nvkm_wr32(device, 0x40780c + (i * 4), data[i]);
}

void
gk104_grctx_generate_rop_active_fbps(struct gf100_gr *gr)
{
	struct nvkm_device *device = gr->base.engine.subdev.device;
	const u32 fbp_count = nvkm_rd32(device, 0x120074);
	nvkm_mask(device, 0x408850, 0x0000000f, fbp_count); /* zrop */
	nvkm_mask(device, 0x408958, 0x0000000f, fbp_count); /* crop */
}

void
gk104_grctx_generate_main(struct gf100_gr *gr, struct gf100_grctx *info)
{
@@ -983,7 +974,6 @@ gk104_grctx_generate_main(struct gf100_gr *gr, struct gf100_grctx *info)
		nvkm_wr32(device, 0x4064d0 + (i * 0x04), 0x00000000);

	nvkm_wr32(device, 0x405b00, (gr->tpc_total << 8) | gr->gpc_nr);
	gk104_grctx_generate_rop_active_fbps(gr);
	nvkm_mask(device, 0x419f78, 0x00000001, 0x00000000);

	gf100_gr_icmd(gr, grctx->icmd);
+0 −2
Original line number Diff line number Diff line
@@ -52,8 +52,6 @@ gk20a_grctx_generate_main(struct gf100_gr *gr, struct gf100_grctx *info)

	nvkm_wr32(device, 0x405b00, (gr->tpc_total << 8) | gr->gpc_nr);

	gk104_grctx_generate_rop_active_fbps(gr);

	nvkm_mask(device, 0x5044b0, 0x08000000, 0x08000000);

	gf100_gr_wait_idle(gr);
+0 −2
Original line number Diff line number Diff line
@@ -985,8 +985,6 @@ gm107_grctx_generate_main(struct gf100_gr *gr, struct gf100_grctx *info)

	nvkm_wr32(device, 0x405b00, (gr->tpc_total << 8) | gr->gpc_nr);

	gk104_grctx_generate_rop_active_fbps(gr);

	gf100_gr_icmd(gr, grctx->icmd);
	nvkm_wr32(device, 0x404154, idle_timeout);
	gf100_gr_mthd(gr, grctx->mthd);
+0 −11
Original line number Diff line number Diff line
@@ -45,15 +45,6 @@ gm200_grctx_generate_tpcid(struct gf100_gr *gr)
	}
}

static void
gm200_grctx_generate_rop_active_fbps(struct gf100_gr *gr)
{
	struct nvkm_device *device = gr->base.engine.subdev.device;
	const u32 fbp_count = nvkm_rd32(device, 0x12006c);
	nvkm_mask(device, 0x408850, 0x0000000f, fbp_count); /* zrop */
	nvkm_mask(device, 0x408958, 0x0000000f, fbp_count); /* crop */
}

void
gm200_grctx_generate_405b60(struct gf100_gr *gr)
{
@@ -113,8 +104,6 @@ gm200_grctx_generate_main(struct gf100_gr *gr, struct gf100_grctx *info)

	nvkm_wr32(device, 0x405b00, (gr->tpc_total << 8) | gr->gpc_nr);

	gm200_grctx_generate_rop_active_fbps(gr);

	for (tmp = 0, i = 0; i < gr->gpc_nr; i++)
		tmp |= ((1 << gr->tpc_nr[i]) - 1) << (i * 4);
	nvkm_wr32(device, 0x4041c4, tmp);
Loading