Home
last modified time | relevance | path

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

/linux/tools/testing/selftests/kvm/aarch64/
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()
482 uint64_t pmcr, pmcr_orig; test_create_vpmu_vm_with_pmcr_n() local
625 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, idx)) in armv6pmu_handle_irq()
H A Darm_pmuv3.c1068 u64 pmcr, mask; in armv8pmu_reset() local
1083 pmcr = ARMV8_PMU_PMCR_P | ARMV8_PMU_PMCR_C | ARMV8_PMU_PMCR_LC; in armv8pmu_reset()
1087 pmcr |= ARMV8_PMU_PMCR_LP; in armv8pmu_reset()
1089 armv8pmu_pmcr_write(pmcr); in armv8pmu_reset()
/linux/arch/powerpc/platforms/cell/
H A Dpervasive.c119 out_be64(&regs->pmcr, in_be64(&regs->pmcr) | in cbe_pervasive_init()
/linux/drivers/cpufreq/
H A Dppc_cbe_cpufreq_pervasive.c65 value = in_be64(&pmd_regs->pmcr); in cbe_cpufreq_set_pmode()
71 out_be64(&pmd_regs->pmcr, value); in cbe_cpufreq_set_pmode()
/linux/arch/powerpc/include/asm/
H A Dcell-regs.h104 u64 pmcr; /* 0x0880 */ member
/linux/arch/arm64/kvm/
H A Dpmu-emul.c1242 u64 pmcr = __vcpu_sys_reg(vcpu, PMCR_EL0); in kvm_vcpu_read_pmcr() local
1244 return u64_replace_bits(pmcr, vcpu->kvm->arch.pmcr_n, ARMV8_PMU_PMCR_N); in kvm_vcpu_read_pmcr()
H A Dsys_regs.c937 u64 pmcr = 0; in reset_pmcr() local
940 pmcr |= ARMV8_PMU_PMCR_LC; in reset_pmcr()
946 __vcpu_sys_reg(vcpu, r->reg) = pmcr; in reset_pmcr()
1050 u64 pmcr, val; in pmu_counter_idx_valid() local
1052 pmcr = kvm_vcpu_read_pmcr(vcpu); in pmu_counter_idx_valid()
1053 val = FIELD_GET(ARMV8_PMU_PMCR_N, pmcr); in pmu_counter_idx_valid()