| /drivers/gpu/drm/nouveau/nvkm/engine/gr/ |
| A D | base.c | 31 struct nvkm_gr *gr = device->gr; in nvkm_gr_ctxsw_inst() local 32 if (gr && gr->func->ctxsw.inst) in nvkm_gr_ctxsw_inst() 33 return gr->func->ctxsw.inst(gr); in nvkm_gr_ctxsw_inst() 40 struct nvkm_gr *gr = device->gr; in nvkm_gr_ctxsw_resume() local 49 struct nvkm_gr *gr = device->gr; in nvkm_gr_ctxsw_pause() local 50 if (gr && gr->func->ctxsw.pause) in nvkm_gr_ctxsw_pause() 76 return gr->func->units(gr); in nvkm_gr_units() 125 gr->func->intr(gr); in nvkm_gr_intr() 154 return gr->func->reset(gr); in nvkm_gr_reset() 165 return gr->func->init(gr); in nvkm_gr_init() [all …]
|
| A D | gf100.c | 324 struct gf100_gr *gr = chan->gr; in gf100_gr_chan_bind() local 390 chan->gr = gr; in gf100_gr_chan_new() 2009 gr->rop_nr = gr->func->rops(gr); in gf100_gr_oneinit() 2013 gr->tpc_max = max(gr->tpc_max, gr->tpc_nr[i]); in gf100_gr_oneinit() 2107 ret = gr->func->init(gr); in gf100_gr_init_() 2336 gr->func->gpccs.reset(gr); in gf100_gr_reset() 2350 gr->func->init_gpc_mmu(gr); in gf100_gr_init() 2373 gr->func->init_bios(gr); in gf100_gr_init() 2376 gr->func->init_zcull(gr); in gf100_gr_init() 2381 gr->func->init_bios_2(gr); in gf100_gr_init() [all …]
|
| A D | ctxgf100.c | 1034 struct gf100_gr *gr = chan->gr; in gf100_grctx_generate_attrib() local 1309 func->sm_id(gr, gr->sm[sm].gpc, gr->sm[sm].tpc, sm); in gf100_grctx_generate_floorsweep() 1311 func->tpc_nr(gr, gr->sm[sm].gpc); in gf100_grctx_generate_floorsweep() 1344 struct gf100_gr *gr = chan->gr; in gf100_grctx_generate_main() local 1359 gf100_gr_mmio(gr, gr->sw_ctx); in gf100_grctx_generate_main() 1363 gr->func->init_419bd8(gr); in gf100_grctx_generate_main() 1388 gf100_gr_icmd(gr, gr->bundle); in gf100_grctx_generate_main() 1393 gf100_gr_icmd(gr, gr->bundle_veid); in gf100_grctx_generate_main() 1398 gf100_gr_icmd(gr, gr->bundle64); in gf100_grctx_generate_main() 1408 gf100_gr_mthd(gr, gr->method); in gf100_grctx_generate_main() [all …]
|
| A D | Kbuild | 2 nvkm-y += nvkm/engine/gr/base.o 3 nvkm-y += nvkm/engine/gr/nv04.o 4 nvkm-y += nvkm/engine/gr/nv10.o 5 nvkm-y += nvkm/engine/gr/nv15.o 6 nvkm-y += nvkm/engine/gr/nv17.o 7 nvkm-y += nvkm/engine/gr/nv20.o 8 nvkm-y += nvkm/engine/gr/nv25.o 9 nvkm-y += nvkm/engine/gr/nv2a.o 10 nvkm-y += nvkm/engine/gr/nv30.o 11 nvkm-y += nvkm/engine/gr/nv34.o [all …]
|
| A D | gm200.c | 92 gm200_gr_rops(struct gf100_gr *gr) in gm200_gr_rops() argument 167 if (gr->gpc_nr == 2 && gr->tpc_total == 8) { in gm200_gr_oneinit_tiles() 168 memcpy(gr->tile, gm200_gr_tile_map_2_8, gr->tpc_total); in gm200_gr_oneinit_tiles() 171 if (gr->gpc_nr == 4 && gr->tpc_total == 16) { in gm200_gr_oneinit_tiles() 172 memcpy(gr->tile, gm200_gr_tile_map_4_16, gr->tpc_total); in gm200_gr_oneinit_tiles() 175 if (gr->gpc_nr == 6 && gr->tpc_total == 24) { in gm200_gr_oneinit_tiles() 176 memcpy(gr->tile, gm200_gr_tile_map_6_24, gr->tpc_total); in gm200_gr_oneinit_tiles() 179 gf100_gr_oneinit_tiles(gr); in gm200_gr_oneinit_tiles() 227 &gr->fecs.falcon, in gm200_gr_load() 234 &gr->gpccs.falcon, in gm200_gr_load() [all …]
|
| A D | nv10.c | 434 struct nvkm_gr *gr = &chan->gr->base; in nv17_gr_mthd_lma_window() local 507 struct nvkm_gr *gr = &chan->gr->base; in nv17_gr_mthd_lma_enable() local 562 struct nv10_gr *gr = chan->gr; in nv10_gr_save_pipe() local 581 struct nv10_gr *gr = chan->gr; in nv10_gr_load_pipe() local 632 struct nv10_gr *gr = chan->gr; in nv10_gr_create_pipe() local 814 struct nv10_gr *gr = chan->gr; in nv10_gr_load_dma_vtxbuf() local 885 struct nv10_gr *gr = chan->gr; in nv10_gr_load_context() local 912 struct nv10_gr *gr = chan->gr; in nv10_gr_unload_context() local 957 struct nv10_gr *gr = chan->gr; in nv10_gr_chan_fini() local 974 struct nv10_gr *gr = chan->gr; in nv10_gr_chan_dtor() local [all …]
|
| A D | gk20a.c | 197 gf100_gr_mmio(gr, gr->sw_nonctx); in gk20a_gr_init() 209 gr->func->init_gpc_mmu(gr); in gk20a_gr_init() 215 gr->func->init_zcull(gr); in gk20a_gr_init() 217 gr->func->init_rop_active_fbps(gr); in gk20a_gr_init() 234 gr->func->set_hww_esr_report_mask(gr); in gk20a_gr_init() 248 gf100_gr_zbc_init(gr); in gk20a_gr_init() 297 gk20a_gr_load_net(gr, path, "sw_ctx", ver, gk20a_gr_aiv_to_init, &gr->sw_ctx) || in gk20a_gr_load_sw() 322 &gr->fecs.inst) || in gk20a_gr_load() 324 &gr->fecs.data) || in gk20a_gr_load() 328 &gr->gpccs.data)) in gk20a_gr_load() [all …]
|
| A D | ctxgv100.c | 64 struct gf100_gr *gr = chan->gr; in gv100_grctx_generate_attrib() local 79 for (gpc = 0; gpc < gr->gpc_nr; gpc++) { in gv100_grctx_generate_attrib() 87 if (!(gr->ppc_mask[gpc] & (1 << ppc))) in gv100_grctx_generate_attrib() 118 const u32 mapregs = DIV_ROUND_UP(gr->func->gpc_nr * gr->func->tpc_nr, 6); in gv100_grctx_generate_rop_mapping() 124 gr->screen_tile_row_offset); in gv100_grctx_generate_rop_mapping() 135 gr->screen_tile_row_offset); in gv100_grctx_generate_rop_mapping() 137 u8 v19 = (1 << (j + 0)) % gr->tpc_total; in gv100_grctx_generate_rop_mapping() 138 u8 v20 = (1 << (j + 1)) % gr->tpc_total; in gv100_grctx_generate_rop_mapping() 139 u8 v21 = (1 << (j + 2)) % gr->tpc_total; in gv100_grctx_generate_rop_mapping() 140 u8 v22 = (1 << (j + 3)) % gr->tpc_total; in gv100_grctx_generate_rop_mapping() [all …]
|
| A D | ctxgm20b.c | 27 struct gf100_gr *gr = chan->gr; in gm20b_grctx_generate_main() local 33 gf100_gr_mmio(gr, gr->sw_ctx); in gm20b_grctx_generate_main() 35 gf100_gr_wait_idle(gr); in gm20b_grctx_generate_main() 42 grctx->unkn(gr); in gm20b_grctx_generate_main() 44 gf100_grctx_generate_floorsweep(gr); in gm20b_grctx_generate_main() 49 nvkm_wr32(device, 0x405b00, (gr->tpc_total << 8) | gr->gpc_nr); in gm20b_grctx_generate_main() 59 gf100_gr_wait_idle(gr); in gm20b_grctx_generate_main() 62 gf100_gr_wait_idle(gr); in gm20b_grctx_generate_main() 64 gf100_gr_mthd(gr, gr->method); in gm20b_grctx_generate_main() 65 gf100_gr_wait_idle(gr); in gm20b_grctx_generate_main() [all …]
|
| A D | ctxgm200.c | 54 for (sm = 0; sm < gr->sm_nr; sm++) { in gm200_grctx_generate_smid_config() 55 const u8 gpc = gr->sm[sm].gpc; in gm200_grctx_generate_smid_config() 56 const u8 tpc = gr->sm[sm].tpc; in gm200_grctx_generate_smid_config() 63 for (i = 0; i < gr->gpc_nr; i++) in gm200_grctx_generate_smid_config() 71 for (tmp = 0, i = 0; i < gr->gpc_nr; i++) in gm200_grctx_generate_tpc_mask() 72 tmp |= ((1 << gr->tpc_nr[i]) - 1) << (i * gr->func->tpc_nr); in gm200_grctx_generate_tpc_mask() 89 for (gpc = 0; gpc < gr->gpc_nr; gpc++) { in gm200_grctx_generate_dist_skip_table() 91 u8 ppc_tpcs = gr->ppc_tpc_nr[gpc][ppc]; in gm200_grctx_generate_dist_skip_table() 92 u8 ppc_tpcm = gr->ppc_tpc_mask[gpc][ppc]; in gm200_grctx_generate_dist_skip_table() 93 while (ppc_tpcs-- > gr->ppc_tpc_min) in gm200_grctx_generate_dist_skip_table() [all …]
|
| A D | gv100.c | 51 gv100_gr_trap_sm(gr, gpc, tpc, 0); in gv100_gr_trap_mp() 52 gv100_gr_trap_sm(gr, gpc, tpc, 1); in gv100_gr_trap_mp() 56 gv100_gr_init_4188a4(struct gf100_gr *gr) in gv100_gr_init_4188a4() argument 82 gv100_gr_init_419bd8(struct gf100_gr *gr) in gv100_gr_init_419bd8() argument 97 tpc_new += gr->ppc_tpc_nr[gpc][pes]; in gv100_gr_nonpes_aware_tpc() 135 for (gpc = 0; gpc < gr->gpc_nr; gpc++) { in gv100_gr_scg_estimate_perf() 194 for (gpc = 0; gpc < gr->gpc_nr; gpc++) { in gv100_gr_scg_estimate_perf() 202 deviation /= gr->gpc_nr; in gv100_gr_scg_estimate_perf() 268 gr->sm[gtpc].gpc = gpc_table[gtpc]; in gv100_gr_oneinit_sm_id() 269 gr->sm[gtpc].tpc = tpc_table[gtpc]; in gv100_gr_oneinit_sm_id() [all …]
|
| A D | ctxgk20a.c | 30 struct gf100_gr *gr = chan->gr; in gk20a_grctx_generate_main() local 36 gf100_gr_mmio(gr, gr->sw_ctx); in gk20a_grctx_generate_main() 38 gf100_gr_wait_idle(gr); in gk20a_grctx_generate_main() 45 grctx->unkn(gr); in gk20a_grctx_generate_main() 47 gf100_grctx_generate_floorsweep(gr); in gk20a_grctx_generate_main() 52 nvkm_wr32(device, 0x405b00, (gr->tpc_total << 8) | gr->gpc_nr); in gk20a_grctx_generate_main() 56 gf100_gr_wait_idle(gr); in gk20a_grctx_generate_main() 59 gf100_gr_wait_idle(gr); in gk20a_grctx_generate_main() 61 gf100_gr_mthd(gr, gr->method); in gk20a_grctx_generate_main() 62 gf100_gr_wait_idle(gr); in gk20a_grctx_generate_main() [all …]
|
| A D | tu102.c | 36 tu102_gr_init_fs(struct gf100_gr *gr) in tu102_gr_init_fs() argument 41 gp100_grctx_generate_smid_config(gr); in tu102_gr_init_fs() 42 gk104_grctx_generate_gpc_tpc_nr(gr); in tu102_gr_init_fs() 44 for (sm = 0; sm < gr->sm_nr; sm++) { in tu102_gr_init_fs() 45 int tpc = gv100_gr_nonpes_aware_tpc(gr, gr->sm[sm].gpc, gr->sm[sm].tpc); in tu102_gr_init_fs() 55 tu102_gr_init_zcull(struct gf100_gr *gr) in tu102_gr_init_zcull() argument 59 const u8 tile_nr = gr->func->gpc_nr * gr->func->tpc_nr; in tu102_gr_init_zcull() 66 bank[gr->tile[i + j]]++; in tu102_gr_init_zcull() 71 for (gpc = 0; gpc < gr->gpc_nr; gpc++) { in tu102_gr_init_zcull() 73 gr->screen_tile_row_offset << 8 | gr->tpc_nr[gpc]); in tu102_gr_init_zcull() [all …]
|
| A D | ctxgp100.c | 44 struct gf100_gr *gr = chan->gr; in gp100_grctx_generate_attrib() local 49 u32 size = grctx->alpha_nr_max * gr->tpc_total; in gp100_grctx_generate_attrib() 58 for (gpc = 0; gpc < gr->gpc_nr; gpc++) { in gp100_grctx_generate_attrib() 61 const u32 bs = attrib * gr->ppc_tpc_max; in gp100_grctx_generate_attrib() 65 if (!(gr->ppc_mask[gpc] & (1 << ppc))) in gp100_grctx_generate_attrib() 71 bo += grctx->attrib_nr_max * gr->ppc_tpc_max; in gp100_grctx_generate_attrib() 99 for (gpc = 0; gpc < gr->gpc_nr; gpc++) in gp100_grctx_generate_attrib_cb_size() 100 size += grctx->attrib_nr_max * gr->func->ppc_nr * gr->ppc_tpc_max; in gp100_grctx_generate_attrib_cb_size() 113 for (sm = 0; sm < gr->sm_nr; sm++) { in gp100_grctx_generate_smid_config() 114 const u8 gpc = gr->sm[sm].gpc; in gp100_grctx_generate_smid_config() [all …]
|
| A D | ga102.c | 36 ga102_gr_zbc_clear_color(struct gf100_gr *gr, int zbc) in ga102_gr_zbc_clear_color() argument 41 if (gr->zbc_color[zbc].format) in ga102_gr_zbc_clear_color() 42 color = gr->zbc_color[zbc].l2; in ga102_gr_zbc_clear_color() 62 ga102_gr_gpccs_reset(struct gf100_gr *gr) in ga102_gr_gpccs_reset() argument 81 ga102_gr_fecs_reset(struct gf100_gr *gr) in ga102_gr_fecs_reset() argument 104 ga102_gr_init_rop_exceptions(struct gf100_gr *gr) in ga102_gr_init_rop_exceptions() argument 114 ga102_gr_init_40a790(struct gf100_gr *gr) in ga102_gr_init_40a790() argument 120 ga102_gr_init_gpc_mmu(struct gf100_gr *gr) in ga102_gr_init_gpc_mmu() argument 142 ga102_gr_nonstall(struct gf100_gr *gr) in ga102_gr_nonstall() argument 274 struct nvkm_subdev *subdev = &gr->base.engine.subdev; in ga102_gr_load() [all …]
|
| A D | gp100.c | 33 gp100_gr_zbc_clear_color(struct gf100_gr *gr, int zbc) in gp100_gr_zbc_clear_color() argument 35 struct nvkm_device *device = gr->base.engine.subdev.device; in gp100_gr_zbc_clear_color() 39 if (gr->zbc_color[zbc].format) { in gp100_gr_zbc_clear_color() 48 gr->zbc_color[zbc].format << ((znum % 4) * 7)); in gp100_gr_zbc_clear_color() 52 gp100_gr_zbc_clear_depth(struct gf100_gr *gr, int zbc) in gp100_gr_zbc_clear_depth() argument 54 struct nvkm_device *device = gr->base.engine.subdev.device; in gp100_gr_zbc_clear_depth() 58 if (gr->zbc_depth[zbc].format) in gp100_gr_zbc_clear_depth() 62 gr->zbc_depth[zbc].format << ((znum % 4) * 7)); in gp100_gr_zbc_clear_depth() 80 gp100_gr_init_419c9c(struct gf100_gr *gr) in gp100_gr_init_419c9c() argument 88 gp100_gr_init_fecs_exceptions(struct gf100_gr *gr) in gp100_gr_init_fecs_exceptions() argument [all …]
|
| A D | ctxgf117.c | 211 ntpcv = gr->tpc_total; in gf117_grctx_generate_rop_mapping() 224 nvkm_wr32(device, 0x418bb8, (gr->tpc_total << 8) | in gf117_grctx_generate_rop_mapping() 225 gr->screen_tile_row_offset); in gf117_grctx_generate_rop_mapping() 231 gr->screen_tile_row_offset | data2[0]); in gf117_grctx_generate_rop_mapping() 238 gr->screen_tile_row_offset); in gf117_grctx_generate_rop_mapping() 246 struct gf100_gr *gr = chan->gr; in gf117_grctx_generate_attrib() local 259 for (gpc = 0; gpc < gr->gpc_nr; gpc++) { in gf117_grctx_generate_attrib() 260 for (ppc = 0; ppc < gr->func->ppc_nr; ppc++) { in gf117_grctx_generate_attrib() 261 const u32 a = alpha * gr->ppc_tpc_nr[gpc][ppc]; in gf117_grctx_generate_attrib() 262 const u32 b = beta * gr->ppc_tpc_nr[gpc][ppc]; in gf117_grctx_generate_attrib() [all …]
|
| A D | ctxgp102.c | 33 gp102_grctx_generate_r408840(struct gf100_gr *gr) in gp102_grctx_generate_r408840() argument 42 struct gf100_gr *gr = chan->gr; in gp102_grctx_generate_attrib() local 48 u32 size = grctx->alpha_nr_max * gr->tpc_total; in gp102_grctx_generate_attrib() 57 for (gpc = 0; gpc < gr->gpc_nr; gpc++) { in gp102_grctx_generate_attrib() 59 const u32 as = alpha * gr->ppc_tpc_nr[gpc][ppc]; in gp102_grctx_generate_attrib() 60 const u32 bs = attrib * gr->ppc_tpc_max; in gp102_grctx_generate_attrib() 61 const u32 gs = gfxp * gr->ppc_tpc_max; in gp102_grctx_generate_attrib() 66 if (!(gr->ppc_mask[gpc] & (1 << ppc))) in gp102_grctx_generate_attrib() 89 u32 size = grctx->alpha_nr_max * gr->tpc_total; in gp102_grctx_generate_attrib_cb_size() 92 for (gpc = 0; gpc < gr->gpc_nr; gpc++) in gp102_grctx_generate_attrib_cb_size() [all …]
|
| A D | gp102.c | 36 if (gr->zbc_stencil[zbc].format) in gp102_gr_zbc_clear_stencil() 51 if (gr->zbc_stencil[i].format) { in gp102_gr_zbc_stencil_get() 52 if (gr->zbc_stencil[i].format != format) in gp102_gr_zbc_stencil_get() 54 if (gr->zbc_stencil[i].ds != ds) in gp102_gr_zbc_stencil_get() 56 if (gr->zbc_stencil[i].l2 != l2) { in gp102_gr_zbc_stencil_get() 69 gr->zbc_stencil[zbc].format = format; in gp102_gr_zbc_stencil_get() 70 gr->zbc_stencil[zbc].ds = ds; in gp102_gr_zbc_stencil_get() 71 gr->zbc_stencil[zbc].l2 = l2; in gp102_gr_zbc_stencil_get() 73 gr->func->zbc->clear_stencil(gr, zbc); in gp102_gr_zbc_stencil_get() 86 gp102_gr_init_swdx_pes_mask(struct gf100_gr *gr) in gp102_gr_init_swdx_pes_mask() argument [all …]
|
| A D | nv40.c | 34 nv40_gr_units(struct nvkm_gr *gr) in nv40_gr_units() argument 78 struct nv40_gr *gr = chan->gr; in nv40_gr_chan_bind() local 79 int ret = nvkm_gpuobj_new(gr->base.engine.subdev.device, gr->size, in nv40_gr_chan_bind() 95 struct nv40_gr *gr = chan->gr; in nv40_gr_chan_fini() local 158 chan->gr = gr; in nv40_gr_chan_new() 163 list_add(&chan->head, &gr->chan); in nv40_gr_chan_new() 181 nv04_gr_idle(&gr->base); in nv40_gr_tile() 434 struct nv40_gr *gr; in nv40_gr_new_() local 436 if (!(gr = kzalloc(sizeof(*gr), GFP_KERNEL))) in nv40_gr_new_() 438 *pgr = &gr->base; in nv40_gr_new_() [all …]
|
| A D | ctxgk104.c | 849 gk104_grctx_generate_r418800(struct gf100_gr *gr) in gk104_grctx_generate_r418800() argument 894 gk104_grctx_generate_unkn(struct gf100_gr *gr) in gk104_grctx_generate_unkn() argument 906 gk104_grctx_generate_r419f78(struct gf100_gr *gr) in gk104_grctx_generate_r419f78() argument 915 gk104_grctx_generate_gpc_tpc_nr(struct gf100_gr *gr) in gk104_grctx_generate_gpc_tpc_nr() argument 918 nvkm_wr32(device, 0x405b00, (gr->tpc_total << 8) | gr->gpc_nr); in gk104_grctx_generate_gpc_tpc_nr() 929 u32 btarget = gr->tpc_total - atarget; in gk104_grctx_generate_alpha_beta_tables() 933 for (gpc = 0; gpc < gr->gpc_nr; gpc++) { in gk104_grctx_generate_alpha_beta_tables() 934 for (ppc = 0; ppc < gr->func->ppc_nr; ppc++) { in gk104_grctx_generate_alpha_beta_tables() 935 u32 ppc_tpcs = gr->ppc_tpc_nr[gpc][ppc]; in gk104_grctx_generate_alpha_beta_tables() 946 pmask = gr->ppc_tpc_mask[gpc][ppc]; in gk104_grctx_generate_alpha_beta_tables() [all …]
|
| A D | nv20.c | 20 struct nv20_gr *gr = chan->gr; in nv20_gr_chan_init() local 23 nvkm_kmap(gr->ctxtab); in nv20_gr_chan_init() 25 nvkm_done(gr->ctxtab); in nv20_gr_chan_init() 33 struct nv20_gr *gr = chan->gr; in nv20_gr_chan_fini() local 53 nvkm_kmap(gr->ctxtab); in nv20_gr_chan_fini() 55 nvkm_done(gr->ctxtab); in nv20_gr_chan_fini() 85 chan->gr = gr; in nv20_gr_chan_new() 328 return gr; in nv20_gr_dtor() 335 struct nv20_gr *gr; in nv20_gr_new_() local 337 if (!(gr = kzalloc(sizeof(*gr), GFP_KERNEL))) in nv20_gr_new_() [all …]
|
| /drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/ |
| A D | gr.c | 43 struct r535_gr *gr = grc->gr; in r535_gr_chan_dtor() local 154 grc->gr = gr; in r535_gr_chan_new() 171 return (gsp->gr.tpcs << 8) | gsp->gr.gpcs; in r535_gr_units() 231 gr->ctxbuf[gr->ctxbuf_nr].bufferId = map[id].id1; in r535_gr_get_ctxbuf_info() 232 gr->ctxbuf[gr->ctxbuf_nr].size = size; in r535_gr_get_ctxbuf_info() 233 gr->ctxbuf[gr->ctxbuf_nr].page = page; in r535_gr_get_ctxbuf_info() 234 gr->ctxbuf[gr->ctxbuf_nr].align = align; in r535_gr_get_ctxbuf_info() 237 gr->ctxbuf[gr->ctxbuf_nr].ro = map[id].ro; in r535_gr_get_ctxbuf_info() 244 gr->ctxbuf[gr->ctxbuf_nr] = gr->ctxbuf[gr->ctxbuf_nr - 1]; in r535_gr_get_ctxbuf_info() 245 gr->ctxbuf[gr->ctxbuf_nr].bufferId = in r535_gr_get_ctxbuf_info() [all …]
|
| /drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/ |
| A D | gr.c | 74 if (gr->scrubber.enabled) { in r570_gr_scrubber_fini() 84 nvkm_vmm_put(gr->scrubber.vmm, &gr->scrubber.ctxbuf.vma[i]); in r570_gr_scrubber_fini() 111 if (gr->scrubber.chid < 0) { in r570_gr_scrubber_init() 113 if (gr->scrubber.chid < 0) in r570_gr_scrubber_init() 114 return gr->scrubber.chid; in r570_gr_scrubber_init() 125 &gr->scrubber.vmm); in r570_gr_scrubber_init() 138 gr->scrubber.vmm, 0, 0x1000, &gr->scrubber.chan); in r570_gr_scrubber_init() 142 ret = r535_gr_promote_ctx(gr, false, gr->scrubber.vmm, gr->scrubber.ctxbuf.mem, in r570_gr_scrubber_init() 143 gr->scrubber.ctxbuf.vma, &gr->scrubber.chan); in r570_gr_scrubber_init() 148 rm->gpu->gr.class.threed, 0, &gr->scrubber.threed); in r570_gr_scrubber_init() [all …]
|
| /drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/ |
| A D | gr.c | 23 struct r535_gr *gr = container_of(base, typeof(*gr), base); in nvkm_rm_gr_fini() local 26 rm->api->gr->scrubber.fini(gr); in nvkm_rm_gr_fini() 35 struct r535_gr *gr = container_of(base, typeof(*gr), base); in nvkm_rm_gr_init() local 39 ret = rm->api->gr->scrubber.init(gr); in nvkm_rm_gr_init() 51 rm->gpu->gr.class.i2m, in nvkm_rm_gr_new() 52 rm->gpu->gr.class.twod, in nvkm_rm_gr_new() 57 struct r535_gr *gr; in nvkm_rm_gr_new() local 77 gr = kzalloc(sizeof(*gr), GFP_KERNEL); in nvkm_rm_gr_new() 78 if (!gr) { in nvkm_rm_gr_new() 84 gr->scrubber.chid = -1; in nvkm_rm_gr_new() [all …]
|