Lines Matching refs:pmc

86 	int pmc, sh, unit;  in power7_get_constraint()  local
89 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in power7_get_constraint()
90 if (pmc) { in power7_get_constraint()
91 if (pmc > 6) in power7_get_constraint()
93 sh = (pmc - 1) * 2; in power7_get_constraint()
96 if (pmc >= 5 && !(event == 0x500fa || event == 0x600f4)) in power7_get_constraint()
99 if (pmc < 5) { in power7_get_constraint()
146 int pmc, psel; in find_alternative_decode() local
149 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in find_alternative_decode()
151 if ((pmc == 2 || pmc == 4) && (psel & ~7) == 0x40) in find_alternative_decode()
153 if ((pmc == 1 || pmc == 3) && (psel & ~7) == 0x48) in find_alternative_decode()
215 int pmc, psel; in power7_marked_instr_event() local
218 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in power7_marked_instr_event()
221 if (pmc >= 5) in power7_marked_instr_event()
226 return pmc == 2 || pmc == 4; in power7_marked_instr_event()
229 return pmc == 1; in power7_marked_instr_event()
231 return pmc != 2; in power7_marked_instr_event()
238 return pmc >= 3; in power7_marked_instr_event()
253 unsigned int pmc, unit, combine, l2sel, psel; in power7_compute_mmcr() local
259 pmc = (event[i] >> PM_PMC_SH) & PM_PMC_MSK; in power7_compute_mmcr()
260 if (pmc) { in power7_compute_mmcr()
261 if (pmc > 6) in power7_compute_mmcr()
263 if (pmc_inuse & (1 << (pmc - 1))) in power7_compute_mmcr()
265 pmc_inuse |= 1 << (pmc - 1); in power7_compute_mmcr()
271 pmc = (event[i] >> PM_PMC_SH) & PM_PMC_MSK; in power7_compute_mmcr()
276 if (!pmc) { in power7_compute_mmcr()
278 for (pmc = 0; pmc < 4; ++pmc) { in power7_compute_mmcr()
279 if (!(pmc_inuse & (1 << pmc))) in power7_compute_mmcr()
282 if (pmc >= 4) in power7_compute_mmcr()
284 pmc_inuse |= 1 << pmc; in power7_compute_mmcr()
287 --pmc; in power7_compute_mmcr()
289 if (pmc <= 3) { in power7_compute_mmcr()
291 << (MMCR1_TTM0SEL_SH - 4 * pmc); in power7_compute_mmcr()
293 << (MMCR1_PMC1_COMBINE_SH - pmc); in power7_compute_mmcr()
294 mmcr1 |= psel << MMCR1_PMCSEL_SH(pmc); in power7_compute_mmcr()
301 hwc[i] = pmc; in power7_compute_mmcr()
315 static void power7_disable_pmc(unsigned int pmc, struct mmcr_regs *mmcr) in power7_disable_pmc() argument
317 if (pmc <= 3) in power7_disable_pmc()
318 mmcr->mmcr1 &= ~(0xffUL << MMCR1_PMCSEL_SH(pmc)); in power7_disable_pmc()