Lines Matching refs:disp
36 struct nv50_disp *disp = in gf119_disp_super() local
38 struct nvkm_subdev *subdev = &disp->base.engine.subdev; in gf119_disp_super()
43 nvkm_debug(subdev, "supervisor %d\n", ffs(disp->super)); in gf119_disp_super()
44 list_for_each_entry(head, &disp->base.head, head) { in gf119_disp_super()
49 if (disp->super & 0x00000001) { in gf119_disp_super()
50 nv50_disp_chan_mthd(disp->chan[0], NV_DBG_DEBUG); in gf119_disp_super()
51 nv50_disp_super_1(disp); in gf119_disp_super()
52 list_for_each_entry(head, &disp->base.head, head) { in gf119_disp_super()
55 nv50_disp_super_1_0(disp, head); in gf119_disp_super()
58 if (disp->super & 0x00000002) { in gf119_disp_super()
59 list_for_each_entry(head, &disp->base.head, head) { in gf119_disp_super()
62 nv50_disp_super_2_0(disp, head); in gf119_disp_super()
64 nvkm_outp_route(&disp->base); in gf119_disp_super()
65 list_for_each_entry(head, &disp->base.head, head) { in gf119_disp_super()
68 nv50_disp_super_2_1(disp, head); in gf119_disp_super()
70 list_for_each_entry(head, &disp->base.head, head) { in gf119_disp_super()
73 nv50_disp_super_2_2(disp, head); in gf119_disp_super()
76 if (disp->super & 0x00000004) { in gf119_disp_super()
77 list_for_each_entry(head, &disp->base.head, head) { in gf119_disp_super()
80 nv50_disp_super_3_0(disp, head); in gf119_disp_super()
84 list_for_each_entry(head, &disp->base.head, head) in gf119_disp_super()
90 gf119_disp_intr_error(struct nv50_disp *disp, int chid) in gf119_disp_intr_error() argument
92 struct nvkm_subdev *subdev = &disp->base.engine.subdev; in gf119_disp_intr_error()
101 if (chid < ARRAY_SIZE(disp->chan)) { in gf119_disp_intr_error()
104 nv50_disp_chan_mthd(disp->chan[chid], NV_DBG_ERROR); in gf119_disp_intr_error()
116 gf119_disp_intr(struct nv50_disp *disp) in gf119_disp_intr() argument
118 struct nvkm_subdev *subdev = &disp->base.engine.subdev; in gf119_disp_intr()
127 nv50_disp_chan_uevent_send(disp, chid); in gf119_disp_intr()
137 disp->func->intr_error(disp, chid); in gf119_disp_intr()
144 disp->super = (stat & 0x00000007); in gf119_disp_intr()
145 queue_work(disp->wq, &disp->supervisor); in gf119_disp_intr()
146 nvkm_wr32(device, 0x6100ac, disp->super); in gf119_disp_intr()
158 list_for_each_entry(head, &disp->base.head, head) { in gf119_disp_intr()
164 nvkm_disp_vblank(&disp->base, head->id); in gf119_disp_intr()
172 gf119_disp_fini(struct nv50_disp *disp) in gf119_disp_fini() argument
174 struct nvkm_device *device = disp->base.engine.subdev.device; in gf119_disp_fini()
180 gf119_disp_init(struct nv50_disp *disp) in gf119_disp_init() argument
182 struct nvkm_device *device = disp->base.engine.subdev.device; in gf119_disp_init()
193 list_for_each_entry(head, &disp->base.head, head) { in gf119_disp_init()
204 for (i = 0; i < disp->dac.nr; i++) { in gf119_disp_init()
210 for (i = 0; i < disp->sor.nr; i++) { in gf119_disp_init()
227 nvkm_wr32(device, 0x610010, (disp->inst->addr >> 8) | 9); in gf119_disp_init()
240 list_for_each_entry(head, &disp->base.head, head) { in gf119_disp_init()