Lines Matching refs:dom

38 	struct nvkm_perfdom *dom;  in nvkm_pm_count_perfdom()  local
41 list_for_each_entry(dom, &pm->domains, head) in nvkm_pm_count_perfdom()
47 nvkm_perfdom_count_perfsig(struct nvkm_perfdom *dom) in nvkm_perfdom_count_perfsig() argument
52 if (dom) { in nvkm_perfdom_count_perfsig()
53 for (i = 0; i < dom->signal_nr; i++) { in nvkm_perfdom_count_perfsig()
54 if (dom->signal[i].name) in nvkm_perfdom_count_perfsig()
64 struct nvkm_perfdom *dom; in nvkm_perfdom_find() local
67 list_for_each_entry(dom, &pm->domains, head) { in nvkm_perfdom_find()
69 return dom; in nvkm_perfdom_find()
77 struct nvkm_perfdom *dom = *pdom; in nvkm_perfsig_find() local
79 if (dom == NULL) { in nvkm_perfsig_find()
80 dom = nvkm_perfdom_find(pm, di); in nvkm_perfsig_find()
81 if (dom == NULL) in nvkm_perfsig_find()
83 *pdom = dom; in nvkm_perfsig_find()
86 if (!dom->signal[si].name) in nvkm_perfsig_find()
88 return &dom->signal[si]; in nvkm_perfsig_find()
133 struct nvkm_perfdom *dom = NULL; in nvkm_perfsrc_enable() local
142 ctr->signal[i], &dom); in nvkm_perfsrc_enable()
172 struct nvkm_perfdom *dom = NULL; in nvkm_perfsrc_disable() local
181 ctr->signal[i], &dom); in nvkm_perfsrc_disable()
208 nvkm_perfdom_init(struct nvkm_perfdom *dom, void *data, u32 size) in nvkm_perfdom_init() argument
213 struct nvkm_object *object = &dom->object; in nvkm_perfdom_init()
214 struct nvkm_pm *pm = dom->perfmon->pm; in nvkm_perfdom_init()
224 if (dom->ctr[i]) { in nvkm_perfdom_init()
225 dom->func->init(pm, dom, dom->ctr[i]); in nvkm_perfdom_init()
228 nvkm_perfsrc_enable(pm, dom->ctr[i]); in nvkm_perfdom_init()
233 dom->func->next(pm, dom); in nvkm_perfdom_init()
238 nvkm_perfdom_sample(struct nvkm_perfdom *dom, void *data, u32 size) in nvkm_perfdom_sample() argument
243 struct nvkm_object *object = &dom->object; in nvkm_perfdom_sample()
244 struct nvkm_pm *pm = dom->perfmon->pm; in nvkm_perfdom_sample()
255 list_for_each_entry(dom, &pm->domains, head) in nvkm_perfdom_sample()
256 dom->func->next(pm, dom); in nvkm_perfdom_sample()
262 nvkm_perfdom_read(struct nvkm_perfdom *dom, void *data, u32 size) in nvkm_perfdom_read() argument
267 struct nvkm_object *object = &dom->object; in nvkm_perfdom_read()
268 struct nvkm_pm *pm = dom->perfmon->pm; in nvkm_perfdom_read()
278 if (dom->ctr[i]) in nvkm_perfdom_read()
279 dom->func->read(pm, dom, dom->ctr[i]); in nvkm_perfdom_read()
282 if (!dom->clk) in nvkm_perfdom_read()
286 if (dom->ctr[i]) in nvkm_perfdom_read()
287 args->v0.ctr[i] = dom->ctr[i]->ctr; in nvkm_perfdom_read()
288 args->v0.clk = dom->clk; in nvkm_perfdom_read()
295 struct nvkm_perfdom *dom = nvkm_perfdom(object); in nvkm_perfdom_mthd() local
298 return nvkm_perfdom_init(dom, data, size); in nvkm_perfdom_mthd()
300 return nvkm_perfdom_sample(dom, data, size); in nvkm_perfdom_mthd()
302 return nvkm_perfdom_read(dom, data, size); in nvkm_perfdom_mthd()
312 struct nvkm_perfdom *dom = nvkm_perfdom(object); in nvkm_perfdom_dtor() local
313 struct nvkm_pm *pm = dom->perfmon->pm; in nvkm_perfdom_dtor()
317 struct nvkm_perfctr *ctr = dom->ctr[i]; in nvkm_perfdom_dtor()
326 return dom; in nvkm_perfdom_dtor()
330 nvkm_perfctr_new(struct nvkm_perfdom *dom, int slot, u8 domain, in nvkm_perfctr_new() argument
337 if (!dom) in nvkm_perfctr_new()
349 ctr->signal[i] = signal[i] - dom->signal; in nvkm_perfctr_new()
354 list_add_tail(&ctr->head, &dom->list); in nvkm_perfctr_new()
377 struct nvkm_perfdom *dom; in nvkm_perfdom_new_() local
416 if (!(dom = kzalloc(sizeof(*dom), GFP_KERNEL))) in nvkm_perfdom_new_()
418 nvkm_object_ctor(&nvkm_perfdom, oclass, &dom->object); in nvkm_perfdom_new_()
419 dom->perfmon = perfmon; in nvkm_perfdom_new_()
420 *pobject = &dom->object; in nvkm_perfdom_new_()
422 dom->func = sdom->func; in nvkm_perfdom_new_()
423 dom->addr = sdom->addr; in nvkm_perfdom_new_()
424 dom->mode = args->v0.mode; in nvkm_perfdom_new_()
426 dom->ctr[c] = ctr[c]; in nvkm_perfdom_new_()
442 struct nvkm_perfdom *dom; in nvkm_perfmon_mthd_query_domain() local
459 dom = nvkm_perfdom_find(pm, di); in nvkm_perfmon_mthd_query_domain()
460 if (dom == NULL) in nvkm_perfmon_mthd_query_domain()
464 args->v0.signal_nr = nvkm_perfdom_count_perfsig(dom); in nvkm_perfmon_mthd_query_domain()
465 strncpy(args->v0.name, dom->name, sizeof(args->v0.name) - 1); in nvkm_perfmon_mthd_query_domain()
491 struct nvkm_perfdom *dom; in nvkm_perfmon_mthd_query_signal() local
506 dom = nvkm_perfdom_find(pm, args->v0.domain); in nvkm_perfmon_mthd_query_signal()
507 if (dom == NULL || si >= (int)dom->signal_nr) in nvkm_perfmon_mthd_query_signal()
511 sig = &dom->signal[si]; in nvkm_perfmon_mthd_query_signal()
514 "/%s/%02x", dom->name, si); in nvkm_perfmon_mthd_query_signal()
524 while (++si < dom->signal_nr) { in nvkm_perfmon_mthd_query_signal()
525 if (all || dom->signal[si].name) { in nvkm_perfmon_mthd_query_signal()
544 struct nvkm_perfdom *dom = NULL; in nvkm_perfmon_mthd_query_source() local
560 sig = nvkm_perfsig_find(pm, args->v0.domain, args->v0.signal, &dom); in nvkm_perfmon_mthd_query_source()
772 struct nvkm_perfdom *dom; in nvkm_perfdom_new() local
782 dom = kzalloc(struct_size(dom, signal, sdom->signal_nr), in nvkm_perfdom_new()
784 if (!dom) in nvkm_perfdom_new()
788 snprintf(dom->name, sizeof(dom->name), in nvkm_perfdom_new()
792 snprintf(dom->name, sizeof(dom->name), in nvkm_perfdom_new()
796 list_add_tail(&dom->head, &pm->domains); in nvkm_perfdom_new()
797 INIT_LIST_HEAD(&dom->list); in nvkm_perfdom_new()
798 dom->func = sdom->func; in nvkm_perfdom_new()
799 dom->addr = addr; in nvkm_perfdom_new()
800 dom->signal_nr = sdom->signal_nr; in nvkm_perfdom_new()
805 &dom->signal[ssig->signal]; in nvkm_perfdom_new()
835 struct nvkm_perfdom *dom, *next_dom; in nvkm_pm_dtor() local
838 list_for_each_entry_safe(dom, next_dom, &pm->domains, head) { in nvkm_pm_dtor()
839 list_del(&dom->head); in nvkm_pm_dtor()
840 kfree(dom); in nvkm_pm_dtor()