Lines Matching refs:pmc

243 #define CNST_PMC_SHIFT(pmc)	((pmc - 1) * 2)  argument
244 #define CNST_PMC_VAL(pmc) (1 << CNST_PMC_SHIFT(pmc)) argument
245 #define CNST_PMC_MASK(pmc) (2 << CNST_PMC_SHIFT(pmc)) argument
254 #define MMCR1_UNIT_SHIFT(pmc) (60 - (4 * ((pmc) - 1))) argument
255 #define MMCR1_COMBINE_SHIFT(pmc) (35 - ((pmc) - 1)) argument
256 #define MMCR1_PMCSEL_SHIFT(pmc) (24 - (((pmc) - 1)) * 8) argument
271 #define MMCR2_FCS(pmc) (1ull << (63 - (((pmc) - 1) * 9))) argument
272 #define MMCR2_FCP(pmc) (1ull << (62 - (((pmc) - 1) * 9))) argument
273 #define MMCR2_FCH(pmc) (1ull << (57 - (((pmc) - 1) * 9))) argument
287 unsigned int unit, pmc, cache, ebb; in power8_get_constraint() local
295 pmc = (event >> EVENT_PMC_SHIFT) & EVENT_PMC_MASK; in power8_get_constraint()
300 if (pmc) { in power8_get_constraint()
303 if (pmc > 6) in power8_get_constraint()
309 if (pmc >= 5 && base_event != 0x500fa && base_event != 0x600f4) in power8_get_constraint()
312 mask |= CNST_PMC_MASK(pmc); in power8_get_constraint()
313 value |= CNST_PMC_VAL(pmc); in power8_get_constraint()
316 if (pmc <= 4) { in power8_get_constraint()
374 if (!pmc && ebb) in power8_get_constraint()
406 unsigned int pmc, pmc_inuse; in power8_compute_mmcr() local
413 pmc = (event[i] >> EVENT_PMC_SHIFT) & EVENT_PMC_MASK; in power8_compute_mmcr()
414 if (pmc) in power8_compute_mmcr()
415 pmc_inuse |= 1 << pmc; in power8_compute_mmcr()
424 pmc = (event[i] >> EVENT_PMC_SHIFT) & EVENT_PMC_MASK; in power8_compute_mmcr()
429 if (!pmc) { in power8_compute_mmcr()
430 for (pmc = 1; pmc <= 4; ++pmc) { in power8_compute_mmcr()
431 if (!(pmc_inuse & (1 << pmc))) in power8_compute_mmcr()
435 pmc_inuse |= 1 << pmc; in power8_compute_mmcr()
438 if (pmc <= 4) { in power8_compute_mmcr()
439 mmcr1 |= unit << MMCR1_UNIT_SHIFT(pmc); in power8_compute_mmcr()
440 mmcr1 |= combine << MMCR1_COMBINE_SHIFT(pmc); in power8_compute_mmcr()
441 mmcr1 |= psel << MMCR1_PMCSEL_SHIFT(pmc); in power8_compute_mmcr()
483 mmcr2 |= MMCR2_FCP(pmc); in power8_compute_mmcr()
486 mmcr2 |= MMCR2_FCH(pmc); in power8_compute_mmcr()
490 mmcr2 |= MMCR2_FCH(pmc); in power8_compute_mmcr()
492 mmcr2 |= MMCR2_FCS(pmc); in power8_compute_mmcr()
495 hwc[i] = pmc - 1; in power8_compute_mmcr()
601 static void power8_disable_pmc(unsigned int pmc, unsigned long mmcr[]) in power8_disable_pmc() argument
603 if (pmc <= 3) in power8_disable_pmc()
604 mmcr[1] &= ~(0xffUL << MMCR1_PMCSEL_SHIFT(pmc + 1)); in power8_disable_pmc()
612 PMU_FORMAT_ATTR(pmc, "config:16-19");