drm/nouveau: gp10b: Use gp100_grctx and gp100_gr_zbc
Subsystems (4)
PATCH 1/1 drm/nouveau: gp10b: Use gp100_grctx and gp100_gr_zbc
From: Thierry Reding <[email protected]>
gp10b doesn't have all the registers that gp102_gr_zbc wants to access, which causes IBUS MMIO faults to occur. Avoid this by using the gp100 variants of grctx and gr_zbc.
Signed-off-by Thierry Reding <[email protected]>
--- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gp100.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gp10b.c | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-)
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h +1 -0
@@ -245,6 +245,7 @@ void gp100_gr_init_fecs_exceptions(struct gf100_gr *);void gp100_gr_init_shader_exceptions (struct gf100_gr *,int ,int );void gp100_gr_zbc_clear_color (struct gf100_gr *,int );void gp100_gr_zbc_clear_depth (struct gf100_gr *,int ); +extern const struct gf100_gr_func_zbc gp100_gr_zbc;void gp102_gr_init_swdx_pes_mask (struct gf100_gr *);extern const struct gf100_gr_func_zbc gp102_gr_zbc;
drivers/gpu/drm/nouveau/nvkm/engine/gr/gp100.c +1 -1
@@ -62,7 +62,7 @@ gp100_gr_zbc_clear_depth(struct gf100_gr *gr, int zbc) gr->zbc_depth[zbc].format << ((znum % 4) * 7)); } -static const struct gf100_gr_func_zbc +const struct gf100_gr_func_zbc gp100_gr_zbc = { .clear_color = gp100_gr_zbc_clear_color, .clear_depth = gp100_gr_zbc_clear_depth,
drivers/gpu/drm/nouveau/nvkm/engine/gr/gp10b.c +2 -2
@@ -48,8 +48,8 @@ gp10b_gr = { .gpc_nr = 1, .tpc_nr = 2, .ppc_nr = 1, - .grctx = &gp102_grctx, - .zbc = &gp102_gr_zbc, + .grctx = &gp100_grctx, + .zbc = &gp100_gr_zbc, .sclass = { { -1, -1, FERMI_TWOD_A }, { -1, -1, KEPLER_INLINE_TO_MEMORY_B },
Signature · 1 line
2.24.1