Lines Matching refs:pm
223 iaf_allocate_pmc(int cpu, int ri, struct pmc *pm, in iaf_allocate_pmc() argument
234 PMCDBG2(MDP,ALL,1, "iaf-allocate ri=%d reqcaps=0x%x", ri, pm->pm_caps); in iaf_allocate_pmc()
304 pm->pm_md.pm_iaf.pm_iaf_ctrl = (flags << (ri * 4)); in iaf_allocate_pmc()
307 (uintmax_t) pm->pm_md.pm_iaf.pm_iaf_ctrl); in iaf_allocate_pmc()
313 iaf_config_pmc(int cpu, int ri, struct pmc *pm) in iaf_config_pmc() argument
321 PMCDBG3(MDP,CFG,1, "iaf-config cpu=%d ri=%d pm=%p", cpu, ri, pm); in iaf_config_pmc()
326 core_pcpu[cpu]->pc_corepmcs[ri + core_iaf_ri].phw_pmc = pm; in iaf_config_pmc()
372 iaf_read_pmc(int cpu, int ri, struct pmc *pm, pmc_value_t *v) in iaf_read_pmc() argument
383 if (PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) in iaf_read_pmc()
418 iaf_start_pmc(int cpu, int ri, struct pmc *pm) in iaf_start_pmc() argument
430 cc->pc_iafctrl |= pm->pm_md.pm_iaf.pm_iaf_ctrl; in iaf_start_pmc()
444 iaf_stop_pmc(int cpu, int ri, struct pmc *pm) in iaf_stop_pmc() argument
470 iaf_write_pmc(int cpu, int ri, struct pmc *pm, pmc_value_t v) in iaf_write_pmc() argument
481 if (PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) in iaf_write_pmc()
713 iap_allocate_pmc(int cpu, int ri, struct pmc *pm, in iap_allocate_pmc() argument
774 pm->pm_md.pm_iap.pm_iap_evsel = iap->pm_iap_config; in iap_allocate_pmc()
779 iap_config_pmc(int cpu, int ri, struct pmc *pm) in iap_config_pmc() argument
787 PMCDBG3(MDP,CFG,1, "iap-config cpu=%d ri=%d pm=%p", cpu, ri, pm); in iap_config_pmc()
792 core_pcpu[cpu]->pc_corepmcs[ri].phw_pmc = pm; in iap_config_pmc()
838 iap_read_pmc(int cpu, int ri, struct pmc *pm, pmc_value_t *v) in iap_read_pmc() argument
848 if (PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) in iap_read_pmc()
860 iap_release_pmc(int cpu, int ri, struct pmc *pm) in iap_release_pmc() argument
862 (void) pm; in iap_release_pmc()
865 pm); in iap_release_pmc()
879 iap_start_pmc(int cpu, int ri, struct pmc *pm) in iap_start_pmc() argument
893 evsel = pm->pm_md.pm_iap.pm_iap_evsel; in iap_start_pmc()
902 wrmsr(IA_OFFCORE_RSP0, pm->pm_md.pm_iap.pm_iap_rsp); in iap_start_pmc()
905 wrmsr(IA_OFFCORE_RSP1, pm->pm_md.pm_iap.pm_iap_rsp); in iap_start_pmc()
922 iap_stop_pmc(int cpu, int ri, struct pmc *pm __unused) in iap_stop_pmc()
940 iap_write_pmc(int cpu, int ri, struct pmc *pm, pmc_value_t v) in iap_write_pmc() argument
948 if (PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) in iap_write_pmc()
1007 struct pmc *pm; in core_intr() local
1019 if ((pm = cc->pc_corepmcs[ri].phw_pmc) == NULL || in core_intr()
1020 !PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) in core_intr()
1028 if (pm->pm_state != PMC_STATE_RUNNING) in core_intr()
1031 error = pmc_process_interrupt(PMC_HR, pm, tf); in core_intr()
1033 v = pm->pm_sc.pm_reloadcount; in core_intr()
1040 wrmsr(IAP_EVSEL0 + ri, pm->pm_md.pm_iap.pm_iap_evsel); in core_intr()
1046 wrmsr(IAP_EVSEL0 + ri, pm->pm_md.pm_iap.pm_iap_evsel | IAP_EN); in core_intr()
1065 struct pmc *pm; in core2_intr() local
1103 pm = cc->pc_corepmcs[n + core_iaf_ri].phw_pmc; in core2_intr()
1104 if (pm == NULL || pm->pm_state != PMC_STATE_RUNNING || in core2_intr()
1105 !PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) in core2_intr()
1108 error = pmc_process_interrupt(PMC_HR, pm, tf); in core2_intr()
1112 v = iaf_reload_count_to_perfctr_value(pm->pm_sc.pm_reloadcount); in core2_intr()
1130 pm = cc->pc_corepmcs[n].phw_pmc; in core2_intr()
1131 if (pm == NULL || pm->pm_state != PMC_STATE_RUNNING || in core2_intr()
1132 !PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) in core2_intr()
1135 error = pmc_process_interrupt(PMC_HR, pm, tf); in core2_intr()
1139 v = iap_reload_count_to_perfctr_value(pm->pm_sc.pm_reloadcount); in core2_intr()