diff options
author | Suzuki K Poulose | 2018-07-10 10:57:59 +0200 |
---|---|---|
committer | Will Deacon | 2018-07-10 19:19:02 +0200 |
commit | 3a95200d3f89afd8b67f39d88d36cc7ec96ce385 (patch) | |
tree | ceb9428b912eedf3731f71b7a2d7014f57473e4f /arch/arm/kernel/perf_event_v7.c | |
parent | arm_pmu: Clean up maximum period handling (diff) | |
download | kernel-qcow2-linux-3a95200d3f89afd8b67f39d88d36cc7ec96ce385.tar.gz kernel-qcow2-linux-3a95200d3f89afd8b67f39d88d36cc7ec96ce385.tar.xz kernel-qcow2-linux-3a95200d3f89afd8b67f39d88d36cc7ec96ce385.zip |
arm_pmu: Change API to support 64bit counter values
Convert the {read/write}_counter APIs to handle 64bit values
to enable supporting chained event counters. The backends still
use 32bit values and we pass them 32bit values only. So in effect
there are no functional changes.
Cc: Will Deacon <will.deacon@arm.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Julien Thierry <julien.thierry@arm.com>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm/kernel/perf_event_v7.c')
-rw-r--r-- | arch/arm/kernel/perf_event_v7.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/kernel/perf_event_v7.c b/arch/arm/kernel/perf_event_v7.c index 2cf1ca2925c8..973043dd6187 100644 --- a/arch/arm/kernel/perf_event_v7.c +++ b/arch/arm/kernel/perf_event_v7.c @@ -743,7 +743,7 @@ static inline void armv7_pmnc_select_counter(int idx) isb(); } -static inline u32 armv7pmu_read_counter(struct perf_event *event) +static inline u64 armv7pmu_read_counter(struct perf_event *event) { struct arm_pmu *cpu_pmu = to_arm_pmu(event->pmu); struct hw_perf_event *hwc = &event->hw; @@ -763,7 +763,7 @@ static inline u32 armv7pmu_read_counter(struct perf_event *event) return value; } -static inline void armv7pmu_write_counter(struct perf_event *event, u32 value) +static inline void armv7pmu_write_counter(struct perf_event *event, u64 value) { struct arm_pmu *cpu_pmu = to_arm_pmu(event->pmu); struct hw_perf_event *hwc = &event->hw; |