Lines Matching refs:chan
42 struct nv50_sw_chan *chan = (void *)nv_engctx(object->parent); in nv50_sw_mthd_dma_vblsem() local
43 struct nvkm_fifo_chan *fifo = (void *)nv_object(chan)->parent; in nv50_sw_mthd_dma_vblsem()
53 chan->vblank.ctxdma = gpuobj->node->offset >> 4; in nv50_sw_mthd_dma_vblsem()
64 struct nv50_sw_chan *chan = (void *)nv_engctx(object->parent); in nv50_sw_mthd_vblsem_offset() local
65 chan->vblank.offset = *(u32 *)args; in nv50_sw_mthd_vblsem_offset()
73 struct nv50_sw_chan *chan = (void *)nv_engctx(object->parent); in nv50_sw_mthd_vblsem_value() local
74 chan->vblank.value = *(u32 *)args; in nv50_sw_mthd_vblsem_value()
82 struct nv50_sw_chan *chan = (void *)nv_engctx(object->parent); in nv50_sw_mthd_vblsem_release() local
84 if (head >= nvkm_disp(chan)->vblank.index_nr) in nv50_sw_mthd_vblsem_release()
87 nvkm_notify_get(&chan->vblank.notify[head]); in nv50_sw_mthd_vblsem_release()
94 struct nv50_sw_chan *chan = (void *)nv_engctx(object->parent); in nv50_sw_mthd_flip() local
95 if (chan->base.flip) in nv50_sw_mthd_flip()
96 return chan->base.flip(chan->base.flip_data); in nv50_sw_mthd_flip()
123 struct nv50_sw_chan *chan = in nv50_sw_vblsem_release() local
124 container_of(notify, typeof(*chan), vblank.notify[notify->index]); in nv50_sw_vblsem_release()
125 struct nv50_sw_priv *priv = (void *)nv_object(chan)->engine; in nv50_sw_vblsem_release()
128 nv_wr32(priv, 0x001704, chan->vblank.channel); in nv50_sw_vblsem_release()
129 nv_wr32(priv, 0x001710, 0x80000000 | chan->vblank.ctxdma); in nv50_sw_vblsem_release()
133 nv_wr32(priv, 0x001570, chan->vblank.offset); in nv50_sw_vblsem_release()
134 nv_wr32(priv, 0x001574, chan->vblank.value); in nv50_sw_vblsem_release()
136 nv_wr32(priv, 0x060010, chan->vblank.offset); in nv50_sw_vblsem_release()
137 nv_wr32(priv, 0x060014, chan->vblank.value); in nv50_sw_vblsem_release()
146 struct nv50_sw_chan *chan = (void *)object; in nv50_sw_context_dtor() local
149 for (i = 0; i < ARRAY_SIZE(chan->vblank.notify); i++) in nv50_sw_context_dtor()
150 nvkm_notify_fini(&chan->vblank.notify[i]); in nv50_sw_context_dtor()
152 nvkm_sw_context_destroy(&chan->base); in nv50_sw_context_dtor()
162 struct nv50_sw_chan *chan; in nv50_sw_context_ctor() local
165 ret = nvkm_sw_context_create(parent, engine, oclass, &chan); in nv50_sw_context_ctor()
166 *pobject = nv_object(chan); in nv50_sw_context_ctor()
178 &chan->vblank.notify[i]); in nv50_sw_context_ctor()
183 chan->vblank.channel = nv_gpuobj(parent->parent)->addr >> 12; in nv50_sw_context_ctor()