Lines Matching defs:msrs
368 #define CTRL_IS_RESERVED(msrs,c) (msrs->controls[(c)].addr ? 1 : 0)
369 #define CTR_IS_RESERVED(msrs,c) (msrs->counters[(c)].addr ? 1 : 0)
396 static void p4_fill_in_addresses(struct op_msrs * const msrs)
406 msrs->counters[i].addr = 0;
409 msrs->controls[i].addr = 0;
417 msrs->counters[i].addr = addr;
418 msrs->controls[i].addr = cccraddr;
426 msrs->controls[i].addr = addr;
435 msrs->controls[i].addr = addr;
441 msrs->controls[i].addr = addr;
448 msrs->controls[i].addr = addr;
454 msrs->controls[i].addr = addr;
460 msrs->controls[i].addr = addr;
468 msrs->controls[i++].addr = MSR_P4_CRU_ESCR5;
470 msrs->controls[i++].addr = MSR_P4_CRU_ESCR4;
476 msrs->controls[i++].addr = MSR_P4_CRU_ESCR4;
482 msrs->controls[i++].addr = MSR_P4_CRU_ESCR5;
483 msrs->controls[i++].addr = MSR_P4_CRU_ESCR5;
553 static void p4_setup_ctrs(struct op_msrs const * const msrs)
569 if (unlikely(!CTRL_IS_RESERVED(msrs,i)))
579 if (unlikely(!CTRL_IS_RESERVED(msrs,i)))
581 wrmsr(msrs->controls[i].addr, 0, 0);
586 if ((counter_config[i].enabled) && (CTRL_IS_RESERVED(msrs,i))) {
598 struct op_msrs const * const msrs)
632 static void p4_start(struct op_msrs const * const msrs)
649 static void p4_stop(struct op_msrs const * const msrs)
665 static void p4_shutdown(struct op_msrs const * const msrs)
670 if (CTR_IS_RESERVED(msrs,i))
671 release_perfctr_nmi(msrs->counters[i].addr);
678 if (CTRL_IS_RESERVED(msrs,i))
679 release_evntsel_nmi(msrs->controls[i].addr);