drm/nouveau/gr/gf100-: support firmware-provided bundle/method everywhere
authorBen Skeggs <bskeggs@redhat.com>
Tue, 8 May 2018 10:39:47 +0000 (20:39 +1000)
committerBen Skeggs <bskeggs@redhat.com>
Fri, 18 May 2018 05:01:24 +0000 (15:01 +1000)
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.c

index a52f27f1e5a6b5eb53a9d672c7a20ca85fbb3cd3..5350ab0a58f26e38110ab57d3607a5ea980f6a86 100644 (file)
@@ -1404,9 +1404,17 @@ gf100_grctx_generate_main(struct gf100_gr *gr, struct gf100_grctx *info)
 
        gf100_grctx_generate_floorsweep(gr);
 
-       gf100_gr_icmd(gr, grctx->icmd);
+       if (gr->fuc_bundle)
+               gf100_gr_icmd(gr, gr->fuc_bundle);
+       else
+               gf100_gr_icmd(gr, grctx->icmd);
+
        nvkm_wr32(device, 0x404154, idle_timeout);
-       gf100_gr_mthd(gr, grctx->mthd);
+
+       if (gr->fuc_method)
+               gf100_gr_mthd(gr, gr->fuc_method);
+       else
+               gf100_gr_mthd(gr, grctx->mthd);
        nvkm_mc_unk260(device, 1);
 }