/linux-5.19.10/drivers/gpu/drm/nouveau/dispnv50/ |
D | wndw.c | 50 nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuffer *fb) in nv50_wndw_ctxdma_new() argument 71 list_for_each_entry(ctxdma, &wndw->ctxdma.list, head) { in nv50_wndw_ctxdma_new() 78 list_add(&ctxdma->head, &wndw->ctxdma.list); in nv50_wndw_ctxdma_new() 103 ret = nvif_object_ctor(wndw->ctxdma.parent, "kmsFbCtxDma", handle, in nv50_wndw_ctxdma_new() 114 nv50_wndw_wait_armed(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in nv50_wndw_wait_armed() argument 116 struct nv50_disp *disp = nv50_disp(wndw->plane.dev); in nv50_wndw_wait_armed() 118 return wndw->func->ntfy_wait_begun(disp->sync, in nv50_wndw_wait_armed() 120 wndw->wndw.base.device); in nv50_wndw_wait_armed() 126 nv50_wndw_flush_clr(struct nv50_wndw *wndw, u32 *interlock, bool flush, in nv50_wndw_flush_clr() argument 132 if (clr.sema ) wndw->func-> sema_clr(wndw); in nv50_wndw_flush_clr() [all …]
|
D | base507c.c | 38 base507c_update(struct nv50_wndw *wndw, u32 *interlock) in base507c_update() argument 40 struct nvif_push *push = wndw->wndw.push; in base507c_update() 51 base507c_image_clr(struct nv50_wndw *wndw) in base507c_image_clr() argument 53 struct nvif_push *push = wndw->wndw.push; in base507c_image_clr() 68 base507c_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in base507c_image_set() argument 70 struct nvif_push *push = wndw->wndw.push; in base507c_image_set() 121 base507c_xlut_clr(struct nv50_wndw *wndw) in base507c_xlut_clr() argument 123 struct nvif_push *push = wndw->wndw.push; in base507c_xlut_clr() 135 base507c_xlut_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in base507c_xlut_set() argument 137 struct nvif_push *push = wndw->wndw.push; in base507c_xlut_set() [all …]
|
D | wndwc37e.c | 35 wndwc37e_csc_clr(struct nv50_wndw *wndw) in wndwc37e_csc_clr() argument 41 wndwc37e_csc_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwc37e_csc_set() argument 43 struct nvif_push *push = wndw->wndw.push; in wndwc37e_csc_set() 54 wndwc37e_ilut_clr(struct nv50_wndw *wndw) in wndwc37e_ilut_clr() argument 56 struct nvif_push *push = wndw->wndw.push; in wndwc37e_ilut_clr() 67 wndwc37e_ilut_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwc37e_ilut_set() argument 69 struct nvif_push *push = wndw->wndw.push; in wndwc37e_ilut_set() 86 wndwc37e_ilut(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw, int size) in wndwc37e_ilut() argument 96 wndwc37e_blend_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwc37e_blend_set() argument 98 struct nvif_push *push = wndw->wndw.push; in wndwc37e_blend_set() [all …]
|
D | wimmc37b.c | 32 wimmc37b_update(struct nv50_wndw *wndw, u32 *interlock) in wimmc37b_update() argument 34 struct nvif_push *push = wndw->wimm.push; in wimmc37b_update() 42 !!(interlock[NV50_DISP_INTERLOCK_WNDW] & wndw->interlock.data))); in wimmc37b_update() 47 wimmc37b_point(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wimmc37b_point() argument 49 struct nvif_push *push = wndw->wimm.push; in wimmc37b_point() 69 s32 oclass, struct nv50_wndw *wndw) in wimmc37b_init_() argument 72 .pushbuf = 0xb0007b00 | wndw->id, in wimmc37b_init_() 73 .index = wndw->id, in wimmc37b_init_() 80 &wndw->wimm); in wimmc37b_init_() 86 wndw->interlock.wimm = wndw->interlock.data; in wimmc37b_init_() [all …]
|
D | curs507a.c | 35 curs507a_space(struct nv50_wndw *wndw) in curs507a_space() argument 37 nvif_msec(&nouveau_drm(wndw->plane.dev)->client.device, 100, in curs507a_space() 38 if (NVIF_TV32(&wndw->wimm.base.user, NV507A, FREE, COUNT, >=, 4)) in curs507a_space() 47 curs507a_update(struct nv50_wndw *wndw, u32 *interlock) in curs507a_update() argument 49 struct nvif_object *user = &wndw->wimm.base.user; in curs507a_update() 50 int ret = nvif_chan_wait(&wndw->wimm, 1); in curs507a_update() 59 curs507a_point(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in curs507a_point() argument 61 struct nvif_object *user = &wndw->wimm.base.user; in curs507a_point() 62 int ret = nvif_chan_wait(&wndw->wimm, 1); in curs507a_point() 78 curs507a_prepare(struct nv50_wndw *wndw, struct nv50_head_atom *asyh, in curs507a_prepare() argument [all …]
|
D | ovly507e.c | 36 ovly507e_scale_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in ovly507e_scale_set() argument 38 struct nvif_push *push = wndw->wndw.push; in ovly507e_scale_set() 58 ovly507e_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in ovly507e_image_set() argument 60 struct nvif_push *push = wndw->wndw.push; in ovly507e_image_set() 96 ovly507e_release(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw, in ovly507e_release() argument 103 ovly507e_acquire(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw, in ovly507e_acquire() argument 154 struct nv50_wndw *wndw; in ovly507e_new_() local 160 &wndw); in ovly507e_new_() 161 if (*pwndw = wndw, ret) in ovly507e_new_() 166 disp->sync->offset, &wndw->wndw); in ovly507e_new_() [all …]
|
D | base907c.c | 29 base907c_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in base907c_image_set() argument 31 struct nvif_push *push = wndw->wndw.push; in base907c_image_set() 66 base907c_xlut_clr(struct nv50_wndw *wndw) in base907c_xlut_clr() argument 68 struct nvif_push *push = wndw->wndw.push; in base907c_xlut_clr() 85 base907c_xlut_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in base907c_xlut_set() argument 87 struct nvif_push *push = wndw->wndw.push; in base907c_xlut_set() 107 base907c_ilut(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw, int size) in base907c_ilut() argument 137 base907c_csc(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw, in base907c_csc() argument 157 base907c_csc_clr(struct nv50_wndw *wndw) in base907c_csc_clr() argument 159 struct nvif_push *push = wndw->wndw.push; in base907c_csc_clr() [all …]
|
D | oimm507b.c | 28 s32 oclass, struct nv50_wndw *wndw) in oimm507b_init_() argument 31 .head = wndw->id, in oimm507b_init_() 37 &args, sizeof(args), &wndw->wimm.base.user); in oimm507b_init_() 43 nvif_object_map(&wndw->wimm.base.user, NULL, 0); in oimm507b_init_() 44 wndw->immd = func; in oimm507b_init_() 49 oimm507b_init(struct nouveau_drm *drm, s32 oclass, struct nv50_wndw *wndw) in oimm507b_init() argument 51 return oimm507b_init_(&curs507a, drm, oclass, wndw); in oimm507b_init()
|
D | wndwc57e.c | 35 wndwc57e_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwc57e_image_set() argument 37 struct nvif_push *push = wndw->wndw.push; in wndwc57e_image_set() 84 wndwc57e_csc_clr(struct nv50_wndw *wndw) in wndwc57e_csc_clr() argument 86 struct nvif_push *push = wndw->wndw.push; in wndwc57e_csc_clr() 102 wndwc57e_csc_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwc57e_csc_set() argument 104 struct nvif_push *push = wndw->wndw.push; in wndwc57e_csc_set() 115 wndwc57e_ilut_clr(struct nv50_wndw *wndw) in wndwc57e_ilut_clr() argument 117 struct nvif_push *push = wndw->wndw.push; in wndwc57e_ilut_clr() 128 wndwc57e_ilut_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwc57e_ilut_set() argument 130 struct nvif_push *push = wndw->wndw.push; in wndwc57e_ilut_set() [all …]
|
D | cursc37a.c | 28 cursc37a_update(struct nv50_wndw *wndw, u32 *interlock) in cursc37a_update() argument 30 struct nvif_object *user = &wndw->wimm.base.user; in cursc37a_update() 31 int ret = nvif_chan_wait(&wndw->wimm, 1); in cursc37a_update() 38 cursc37a_point(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in cursc37a_point() argument 40 struct nvif_object *user = &wndw->wimm.base.user; in cursc37a_point() 41 int ret = nvif_chan_wait(&wndw->wimm, 1); in cursc37a_point()
|
D | wndw.h | 30 struct nv50_dmac wndw; member 67 void (*ilut)(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyh, int size); 109 struct nv50_wndw *wndw = container_of(dmac, typeof(*wndw), wimm); in nvif_chan_wait() local 110 return curs507a_space(wndw) ? 0 : -ETIMEDOUT; in nvif_chan_wait()
|
D | ovly907e.c | 30 ovly907e_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in ovly907e_image_set() argument 32 struct nvif_push *push = wndw->wndw.push; in ovly907e_image_set()
|
D | wimm.c | 27 nv50_wimm_init(struct nouveau_drm *drm, struct nv50_wndw *wndw) in nv50_wimm_init() argument 48 return wimms[cid].init(drm, wimms[cid].oclass, wndw); in nv50_wimm_init()
|
D | oimm.c | 27 nv50_oimm_init(struct nouveau_drm *drm, struct nv50_wndw *wndw) in nv50_oimm_init() argument 50 return oimms[cid].init(drm, oimms[cid].oclass, wndw); in nv50_oimm_init()
|
D | base827c.c | 29 base827c_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in base827c_image_set() argument 31 struct nvif_push *push = wndw->wndw.push; in base827c_image_set()
|
D | ovly827e.c | 33 ovly827e_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in ovly827e_image_set() argument 35 struct nvif_push *push = wndw->wndw.push; in ovly827e_image_set()
|
D | wndwc67e.c | 30 wndwc67e_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwc67e_image_set() argument 32 struct nvif_push *push = wndw->wndw.push; in wndwc67e_image_set()
|
D | head.c | 252 if (asyh->wndw.olut) { in nv50_head_atomic_check_lut() 256 if (asyh->wndw.olut != asyh->wndw.mask) in nv50_head_atomic_check_lut() 349 memcmp(&armh->wndw, &asyh->wndw, sizeof(asyh->wndw)); in nv50_head_atomic_check() 477 asyh->wndw = armh->wndw; in nv50_head_atomic_duplicate_state()
|
/linux-5.19.10/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
D | gv100.c | 167 int wndw; in gv100_disp_intr_ctrl_disp() local 177 for_each_set_bit(wndw, &wndws, disp->wndw.nr) { in gv100_disp_intr_ctrl_disp() 178 nv50_disp_chan_uevent_send(disp, 1 + wndw); in gv100_disp_intr_ctrl_disp() 202 for_each_set_bit(head, &mask, disp->wndw.nr) { in gv100_disp_intr_exc_other() 221 int wndw; in gv100_disp_intr_exc_winim() local 223 for_each_set_bit(wndw, &stat, disp->wndw.nr) { in gv100_disp_intr_exc_winim() 224 nvkm_wr32(device, 0x611850, BIT(wndw)); in gv100_disp_intr_exc_winim() 225 gv100_disp_exception(disp, 33 + wndw); in gv100_disp_intr_exc_winim() 226 stat &= ~BIT(wndw); in gv100_disp_intr_exc_winim() 241 int wndw; in gv100_disp_intr_exc_win() local [all …]
|
D | wimmgv100.c | 57 int wndw, ret = -ENOSYS; in gv100_disp_wimm_new_() local 65 if (!(disp->wndw.mask & BIT(args->v0.index))) in gv100_disp_wimm_new_() 68 wndw = args->v0.index; in gv100_disp_wimm_new_() 72 return nv50_disp_dmac_new_(func, mthd, disp, chid + wndw, in gv100_disp_wimm_new_() 73 wndw, push, oclass, pobject); in gv100_disp_wimm_new_()
|
D | wndwgv100.c | 159 int wndw, ret = -ENOSYS; in gv100_disp_wndw_new_() local 167 if (!(disp->wndw.mask & BIT(args->v0.index))) in gv100_disp_wndw_new_() 170 wndw = args->v0.index; in gv100_disp_wndw_new_() 174 return nv50_disp_dmac_new_(func, mthd, disp, chid + wndw, in gv100_disp_wndw_new_() 175 wndw, push, oclass, pobject); in gv100_disp_wndw_new_()
|
D | tu102.c | 76 for (i = 0; i < disp->wndw.nr; i++) { in tu102_disp_init() 114 nvkm_wr32(device, 0x611ce8, disp->wndw.mask); /* MSK. */ in tu102_disp_init() 118 nvkm_wr32(device, 0x611ce4, disp->wndw.mask); /* MSK. */ in tu102_disp_init() 142 .wndw = { .cnt = gv100_disp_wndw_cnt },
|
D | nv50.h | 23 } wndw, head, dac; member 67 } wndw, head, dac, sor, pior; member
|
D | ga102.c | 36 .wndw = { .cnt = gv100_disp_wndw_cnt },
|
D | nv50.c | 90 if (func->wndw.cnt) { in nv50_disp_oneinit_() 91 disp->wndw.nr = func->wndw.cnt(&disp->base, &disp->wndw.mask); in nv50_disp_oneinit_() 93 disp->wndw.nr, disp->wndw.mask); in nv50_disp_oneinit_()
|