Lines Matching defs:leaf
30 enum nvkm_intr_type type, int *leaf, u32 *mask)
46 *leaf = data->leaf;
54 *leaf = data->leaf;
66 *leaf = type / 32;
76 nvkm_intr_find(struct nvkm_subdev *subdev, enum nvkm_intr_type type, int *leaf, u32 *mask)
82 ret = nvkm_intr_xlat(subdev, intr, type, leaf, mask);
91 nvkm_intr_allow_locked(struct nvkm_intr *intr, int leaf, u32 mask)
93 intr->mask[leaf] |= mask;
96 intr->func->reset(intr, leaf, mask);
97 intr->func->allow(intr, leaf, mask);
107 int leaf;
110 intr = nvkm_intr_find(subdev, type, &leaf, &mask);
112 nvkm_debug(intr->subdev, "intr %d/%08x allowed by %s\n", leaf, mask, subdev->name);
114 nvkm_intr_allow_locked(intr, leaf, mask);
120 nvkm_intr_block_locked(struct nvkm_intr *intr, int leaf, u32 mask)
122 intr->mask[leaf] &= ~mask;
124 intr->func->block(intr, leaf, mask);
133 int leaf;
136 intr = nvkm_intr_find(subdev, type, &leaf, &mask);
138 nvkm_debug(intr->subdev, "intr %d/%08x blocked by %s\n", leaf, mask, subdev->name);
140 nvkm_intr_block_locked(intr, leaf, mask);
171 int prio, leaf;
199 if (intr->stat[inth->leaf] & inth->mask) {
202 intr->func->reset(intr, inth->leaf, inth->mask);
213 for (leaf = 0; leaf < intr->leaves; leaf++) {
214 if (intr->stat[leaf]) {
216 leaf, intr->stat[leaf]);
217 nvkm_intr_block_locked(intr, leaf, intr->stat[leaf]);
414 if ((intr->mask[inth->leaf] & inth->mask) != inth->mask)
415 nvkm_intr_allow_locked(intr, inth->leaf, inth->mask);
430 ret = nvkm_intr_xlat(subdev, intr, type, &inth->leaf, &inth->mask);
435 inth->leaf, inth->mask, subdev->name);