Home
last modified time | relevance | path

Searched refs:pmcr (Results 1 – 6 of 6) sorted by relevance

/linux/tools/testing/selftests/kvm/arm64/
H A Dvpmu_counter_access.c43 static uint64_t get_pmcr_n(uint64_t pmcr) in get_pmcr_n() argument
45 return FIELD_GET(ARMV8_PMU_PMCR_N, pmcr); in get_pmcr_n()
48 static void set_pmcr_n(uint64_t *pmcr, uint64_t pmcr_n) in set_pmcr_n() argument
50 u64p_replace_bits((__u64 *) pmcr, pmcr_n, ARMV8_PMU_PMCR_N); in set_pmcr_n()
98 uint64_t pmcr = read_sysreg(pmcr_el0); in pmu_disable_reset() local
101 pmcr &= ~ARMV8_PMU_PMCR_E; in pmu_disable_reset()
102 write_sysreg(pmcr | ARMV8_PMU_PMCR_P, pmcr_el0); in pmu_disable_reset()
362 uint64_t pmcr, pmcr_n, unimp_mask; in guest_code() local
369 pmcr = read_sysreg(pmcr_el0); in guest_code()
370 pmcr_n = get_pmcr_n(pmcr); in guest_code()
481 uint64_t pmcr, pmcr_orig; test_create_vpmu_vm_with_pmcr_n() local
624 uint64_t pmcr; get_pmcr_n_limit() local
[all...]
/linux/drivers/perf/
H A Darm_v6_pmu.c149 armv6_pmcr_has_overflowed(unsigned long pmcr) in armv6_pmcr_has_overflowed() argument
151 return pmcr & ARMV6_PMCR_OVERFLOWED_MASK; in armv6_pmcr_has_overflowed()
155 armv6_pmcr_counter_has_overflowed(unsigned long pmcr, in armv6_pmcr_counter_has_overflowed() argument
161 ret = pmcr & ARMV6_PMCR_CCOUNT_OVERFLOW; in armv6_pmcr_counter_has_overflowed()
163 ret = pmcr & ARMV6_PMCR_COUNT0_OVERFLOW; in armv6_pmcr_counter_has_overflowed()
165 ret = pmcr & ARMV6_PMCR_COUNT1_OVERFLOW; in armv6_pmcr_counter_has_overflowed()
240 unsigned long pmcr = armv6_pmcr_read(); in armv6pmu_handle_irq() local
246 if (!armv6_pmcr_has_overflowed(pmcr)) in armv6pmu_handle_irq()
256 armv6_pmcr_write(pmcr); in armv6pmu_handle_irq()
270 if (!armv6_pmcr_counter_has_overflowed(pmcr, id in armv6pmu_handle_irq()
[all...]
H A Darm_dsu_pmu.c463 u32 pmcr; in dsu_pmu_enable() local
472 pmcr = __dsu_pmu_read_pmcr(); in dsu_pmu_enable()
473 pmcr |= CLUSTERPMCR_E; in dsu_pmu_enable()
474 __dsu_pmu_write_pmcr(pmcr); in dsu_pmu_enable()
480 u32 pmcr; in dsu_pmu_disable() local
485 pmcr = __dsu_pmu_read_pmcr(); in dsu_pmu_disable()
486 pmcr &= ~CLUSTERPMCR_E; in dsu_pmu_disable()
487 __dsu_pmu_write_pmcr(pmcr); in dsu_pmu_disable()
H A Darm_pmuv3.c1131 u64 pmcr, mask; in armv8pmu_reset() local
1151 pmcr = ARMV8_PMU_PMCR_P | ARMV8_PMU_PMCR_C | ARMV8_PMU_PMCR_LC; in armv8pmu_reset()
1155 pmcr |= ARMV8_PMU_PMCR_LP; in armv8pmu_reset()
1157 armv8pmu_pmcr_write(pmcr); in armv8pmu_reset()
/linux/arch/arm64/kvm/
H A Dpmu-emul.c1302 u64 pmcr = __vcpu_sys_reg(vcpu, PMCR_EL0); in kvm_vcpu_read_pmcr() local
1308 return u64_replace_bits(pmcr, n, ARMV8_PMU_PMCR_N); in kvm_vcpu_read_pmcr()
H A Dsys_regs.c834 u64 pmcr = 0; in reset_pmcr() local
837 pmcr |= ARMV8_PMU_PMCR_LC; in reset_pmcr()
843 __vcpu_assign_sys_reg(vcpu, r->reg, pmcr); in reset_pmcr()
947 u64 pmcr, val; in pmu_counter_idx_valid() local
949 pmcr = kvm_vcpu_read_pmcr(vcpu); in pmu_counter_idx_valid()
950 val = FIELD_GET(ARMV8_PMU_PMCR_N, pmcr); in pmu_counter_idx_valid()