Lines Matching full:sw
30 nvkm_sw_mthd(struct nvkm_sw *sw, int chid, int subc, u32 mthd, u32 data) in nvkm_sw_mthd() argument
36 spin_lock_irqsave(&sw->engine.lock, flags); in nvkm_sw_mthd()
37 list_for_each_entry(chan, &sw->chan, head) { in nvkm_sw_mthd()
41 list_add(&chan->head, &sw->chan); in nvkm_sw_mthd()
45 spin_unlock_irqrestore(&sw->engine.lock, flags); in nvkm_sw_mthd()
61 struct nvkm_sw *sw = nvkm_sw(oclass->engine); in nvkm_sw_oclass_get() local
64 while (sw->func->sclass[c].ctor) { in nvkm_sw_oclass_get()
66 oclass->engn = &sw->func->sclass[index]; in nvkm_sw_oclass_get()
67 oclass->base = sw->func->sclass[index].base; in nvkm_sw_oclass_get()
80 struct nvkm_sw *sw = nvkm_sw(oclass->engine); in nvkm_sw_cclass_get() local
81 return sw->func->chan_new(sw, fifoch, oclass, pobject); in nvkm_sw_cclass_get()
101 struct nvkm_sw *sw; in nvkm_sw_new_() local
103 if (!(sw = *psw = kzalloc(sizeof(*sw), GFP_KERNEL))) in nvkm_sw_new_()
105 INIT_LIST_HEAD(&sw->chan); in nvkm_sw_new_()
106 sw->func = func; in nvkm_sw_new_()
108 return nvkm_engine_ctor(&nvkm_sw, device, type, inst, true, &sw->engine); in nvkm_sw_new_()