| /linux/drivers/gpu/drm/nouveau/dispnv50/ |
| H A D | wndw.c | 57 nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuffer *fb) in nv50_wndw_ctxdma_new() argument 78 list_for_each_entry(ctxdma, &wndw->ctxdma.list, head) { in nv50_wndw_ctxdma_new() 85 list_add(&ctxdma->head, &wndw->ctxdma.list); in nv50_wndw_ctxdma_new() 110 ret = nvif_object_ctor(wndw->ctxdma.parent, "kmsFbCtxDma", handle, in nv50_wndw_ctxdma_new() 121 nv50_wndw_wait_armed(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in nv50_wndw_wait_armed() argument 123 struct nv50_disp *disp = nv50_disp(wndw->plane.dev); in nv50_wndw_wait_armed() 125 return wndw->func->ntfy_wait_begun(disp->sync, in nv50_wndw_wait_armed() 127 wndw->wndw.base.device); in nv50_wndw_wait_armed() 133 nv50_wndw_flush_clr(struct nv50_wndw *wndw, u32 *interlock, bool flush, in nv50_wndw_flush_clr() argument 139 if (clr.sema ) wndw->func-> sema_clr(wndw); in nv50_wndw_flush_clr() [all …]
|
| H A D | base507c.c | 36 base507c_update(struct nv50_wndw *wndw, u32 *interlock) in base507c_update() argument 38 struct nvif_push *push = &wndw->wndw.push; in base507c_update() 49 base507c_image_clr(struct nv50_wndw *wndw) in base507c_image_clr() argument 51 struct nvif_push *push = &wndw->wndw.push; in base507c_image_clr() 66 base507c_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in base507c_image_set() argument 68 struct nvif_push *push = &wndw->wndw.push; in base507c_image_set() 119 base507c_xlut_clr(struct nv50_wndw *wndw) in base507c_xlut_clr() argument 121 struct nvif_push *push = &wndw->wndw.push; in base507c_xlut_clr() 133 base507c_xlut_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in base507c_xlut_set() argument 135 struct nvif_push *push = &wndw->wndw.push; in base507c_xlut_set() [all …]
|
| H A 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 …]
|
| H A 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 .id = wndw->id, in wimmc37b_init_() 78 &wndw->wimm); in wimmc37b_init_() 84 wndw->interlock.wimm = wndw->interlock.data; in wimmc37b_init_() 85 wndw->immd = func; in wimmc37b_init_() [all …]
|
| H A D | ovly507e.c | 34 ovly507e_scale_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in ovly507e_scale_set() argument 36 struct nvif_push *push = &wndw->wndw.push; in ovly507e_scale_set() 56 ovly507e_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in ovly507e_image_set() argument 58 struct nvif_push *push = &wndw->wndw.push; in ovly507e_image_set() 94 ovly507e_release(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw, in ovly507e_release() argument 101 ovly507e_acquire(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw, in ovly507e_acquire() argument 152 struct nv50_wndw *wndw; in ovly507e_new_() local 158 &wndw); in ovly507e_new_() 159 if (*pwndw = wndw, ret) in ovly507e_new_() 164 disp->sync->offset, &wndw->wndw); in ovly507e_new_() [all …]
|
| H A 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 …]
|
| H A D | wndwca7e.c | 15 wndwca7e_image_clr(struct nv50_wndw *wndw) in wndwca7e_image_clr() argument 17 struct nvif_push *push = &wndw->wndw.push; in wndwca7e_image_clr() 35 wndwca7e_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwca7e_image_set() argument 39 struct nvif_push *push = &wndw->wndw.push; in wndwca7e_image_set() 97 wndwca7e_ilut_clr(struct nv50_wndw *wndw) in wndwca7e_ilut_clr() argument 99 struct nvif_push *push = &wndw->wndw.push; in wndwca7e_ilut_clr() 113 wndwca7e_ilut_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwca7e_ilut_set() argument 117 struct nvif_push *push = &wndw->wndw.push; in wndwca7e_ilut_set() 140 wndwca7e_ntfy_clr(struct nv50_wndw *wndw) in wndwca7e_ntfy_clr() argument 142 struct nvif_push *push = &wndw->wndw.push; in wndwca7e_ntfy_clr() [all …]
|
| H A D | wndwc57e.c | 33 wndwc57e_image_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwc57e_image_set() argument 35 struct nvif_push *push = &wndw->wndw.push; in wndwc57e_image_set() 82 wndwc57e_csc_clr(struct nv50_wndw *wndw) in wndwc57e_csc_clr() argument 84 struct nvif_push *push = &wndw->wndw.push; in wndwc57e_csc_clr() 100 wndwc57e_csc_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwc57e_csc_set() argument 102 struct nvif_push *push = &wndw->wndw.push; in wndwc57e_csc_set() 113 wndwc57e_ilut_clr(struct nv50_wndw *wndw) in wndwc57e_ilut_clr() argument 115 struct nvif_push *push = &wndw->wndw.push; in wndwc57e_ilut_clr() 126 wndwc57e_ilut_set(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw) in wndwc57e_ilut_set() argument 128 struct nvif_push *push = &wndw->wndw.push; in wndwc57e_ilut_set() [all …]
|
| H A D | oimm507b.c | 28 s32 oclass, struct nv50_wndw *wndw) in oimm507b_init_() argument 31 .id = 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()
|
| H A 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()
|
| H A 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()
|
| H A 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()
|
| H A 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()
|
| H A 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()
|
| H A 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()
|
| H A D | head.c | 251 if (asyh->wndw.olut) { in nv50_head_atomic_check_lut() 255 if (asyh->wndw.olut != asyh->wndw.mask) in nv50_head_atomic_check_lut() 348 memcmp(&armh->wndw, &asyh->wndw, sizeof(asyh->wndw)); in nv50_head_atomic_check() 476 asyh->wndw = armh->wndw; in nv50_head_atomic_duplicate_state()
|
| H A D | disp.c | 2160 struct nv50_wndw *wndw = nv50_wndw(plane); in nv50_disp_atomic_commit_wndw() local 2161 if (interlock[wndw->interlock.type] & wndw->interlock.data) { in nv50_disp_atomic_commit_wndw() 2162 if (wndw->func->update) in nv50_disp_atomic_commit_wndw() 2163 wndw->func->update(wndw, interlock); in nv50_disp_atomic_commit_wndw() 2218 struct nv50_wndw *wndw = nv50_wndw(plane); in nv50_disp_atomic_commit_tail() local 2225 nv50_wndw_flush_clr(wndw, interlock, atom->flush_disable, asyw); in nv50_disp_atomic_commit_tail() 2311 core->func->wndw.owner(core); in nv50_disp_atomic_commit_tail() 2347 struct nv50_wndw *wndw = nv50_wndw(plane); in nv50_disp_atomic_commit_tail() local 2355 nv50_wndw_flush_set(wndw, interlock, asyw); in nv50_disp_atomic_commit_tail() 2382 struct nv50_wndw *wndw = nv50_wndw(plane); in nv50_disp_atomic_commit_tail() local [all …]
|
| H A D | atom.h | 26 } wndw; member
|
| H A D | headc37d.c | 280 asyh->wndw.owned |= BIT(i); in headc37d_static_wndw_map()
|
| /linux/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
| H A D | gv100.c | 964 int wndw; in gv100_disp_intr_ctrl_disp() local 974 for_each_set_bit(wndw, &wndws, disp->wndw.nr) { in gv100_disp_intr_ctrl_disp() 975 nv50_disp_chan_uevent_send(disp, 1 + wndw); in gv100_disp_intr_ctrl_disp() 999 for_each_set_bit(head, &mask, disp->wndw.nr) { in gv100_disp_intr_exc_other() 1018 int wndw; in gv100_disp_intr_exc_winim() local 1020 for_each_set_bit(wndw, &stat, disp->wndw.nr) { in gv100_disp_intr_exc_winim() 1021 nvkm_wr32(device, 0x611850, BIT(wndw)); in gv100_disp_intr_exc_winim() 1022 gv100_disp_exception(disp, 33 + wndw); in gv100_disp_intr_exc_winim() 1023 stat &= ~BIT(wndw); in gv100_disp_intr_exc_winim() 1038 int wndw; in gv100_disp_intr_exc_win() local [all …]
|
| H A D | tu102.c | 152 for (i = 0; i < disp->wndw.nr; i++) { in tu102_disp_init() 190 nvkm_wr32(device, 0x611ce8, disp->wndw.mask); /* MSK. */ in tu102_disp_init() 194 nvkm_wr32(device, 0x611ce4, disp->wndw.mask); /* MSK. */ in tu102_disp_init() 218 .wndw = { .cnt = gv100_disp_wndw_cnt },
|
| H A D | priv.h | 35 } wndw, head, dac, sor, pior; member
|
| H A D | ga102.c | 132 .wndw = { .cnt = gv100_disp_wndw_cnt },
|
| H A D | nv50.c | 1596 if (func->wndw.cnt) { in nv50_disp_oneinit() 1597 disp->wndw.nr = func->wndw.cnt(disp, &disp->wndw.mask); in nv50_disp_oneinit() 1598 nvkm_debug(subdev, "Window(s): %d (%08lx)\n", disp->wndw.nr, disp->wndw.mask); in nv50_disp_oneinit()
|
| H A D | chan.c | 232 return nvkm_disp_chan_new_(disp, disp->wndw.nr, oclass, argv, argc, pobject); in nvkm_disp_wndw_new()
|