Lines Matching refs:pm
134 armv7_allocate_pmc(int cpu, int ri, struct pmc *pm, in armv7_allocate_pmc() argument
155 pm->pm_md.pm_armv7.pm_armv7_evsel = config; in armv7_allocate_pmc()
167 struct pmc *pm; in armv7_read_pmc() local
174 pm = armv7_pcpu[cpu]->pc_armv7pmcs[ri].phw_pmc; in armv7_read_pmc()
176 if (pm->pm_md.pm_armv7.pm_armv7_evsel == PMC_EV_CPU_CYCLES) in armv7_read_pmc()
180 tmp += 0x100000000llu * pm->pm_overflowcnt; in armv7_read_pmc()
183 if (PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) in armv7_read_pmc()
194 struct pmc *pm; in armv7_write_pmc() local
201 pm = armv7_pcpu[cpu]->pc_armv7pmcs[ri].phw_pmc; in armv7_write_pmc()
203 if (PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) in armv7_write_pmc()
208 if (pm->pm_md.pm_armv7.pm_armv7_evsel == PMC_EV_CPU_CYCLES) in armv7_write_pmc()
217 armv7_config_pmc(int cpu, int ri, struct pmc *pm) in armv7_config_pmc() argument
221 PMCDBG3(MDP, CFG, 1, "cpu=%d ri=%d pm=%p", cpu, ri, pm); in armv7_config_pmc()
230 KASSERT(pm == NULL || phw->phw_pmc == NULL, in armv7_config_pmc()
232 __LINE__, pm, phw->phw_pmc)); in armv7_config_pmc()
234 phw->phw_pmc = pm; in armv7_config_pmc()
244 struct pmc *pm; in armv7_start_pmc() local
247 pm = phw->phw_pmc; in armv7_start_pmc()
248 config = pm->pm_md.pm_armv7.pm_armv7_evsel; in armv7_start_pmc()
250 pm->pm_overflowcnt = 0; in armv7_start_pmc()
274 struct pmc *pm; in armv7_stop_pmc() local
278 pm = phw->phw_pmc; in armv7_stop_pmc()
279 config = pm->pm_md.pm_armv7.pm_armv7_evsel; in armv7_stop_pmc()
314 struct pmc *pm; in armv7_intr() local
326 pm = armv7_pcpu[cpu]->pc_armv7pmcs[ri].phw_pmc; in armv7_intr()
327 if (pm == NULL) in armv7_intr()
331 if (pm->pm_md.pm_armv7.pm_armv7_evsel == PMC_EV_CPU_CYCLES) in armv7_intr()
345 if (!PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) { in armv7_intr()
346 pm->pm_overflowcnt += 1; in armv7_intr()
349 if (pm->pm_state != PMC_STATE_RUNNING) in armv7_intr()
352 error = pmc_process_interrupt(PMC_HR, pm, tf); in armv7_intr()
357 armv7_write_pmc(cpu, ri, pm->pm_sc.pm_reloadcount); in armv7_intr()