aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSuzuki K Poulose <suzuki.poulose@arm.com>2016-02-23 05:49:48 -0500
committerWill Deacon <will.deacon@arm.com>2016-02-29 18:23:16 -0500
commitc8bc2b11405652792a9348c8de7d46637b459b4e (patch)
treeef34fb751621ad3e463f69aaf9a1fb648d79a709
parentc66eea5f9f55f2ddf742670d35e4c9e30dc42a0a (diff)
arm-cci: write_counter: Remove redundant check
pmu_write_counter() is now only called from pmu_write_counters(), which does so for each set index in the given mask, bounded by cci_pmu->num_cntrs. So, there is no need for an extra check to make sure the given counter is valid inside pmu_write_counter. This patch gets rid of that. Cc: Punit Agrawal <punit.agrawal@arm.com> Acked-by: Olof Johansson <olof@lixom.net> Acked-by: Mark Rutland <mark.rutland@arm.com> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com> Signed-off-by: Will Deacon <will.deacon@arm.com>
-rw-r--r--drivers/bus/arm-cci.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/bus/arm-cci.c b/drivers/bus/arm-cci.c
index 629c9e069c3b..420c30c15419 100644
--- a/drivers/bus/arm-cci.c
+++ b/drivers/bus/arm-cci.c
@@ -814,16 +814,9 @@ static u32 pmu_read_counter(struct perf_event *event)
814 return value; 814 return value;
815} 815}
816 816
817static void pmu_write_counter(struct perf_event *event, u32 value) 817static void pmu_write_counter(struct cci_pmu *cci_pmu, u32 value, int idx)
818{ 818{
819 struct cci_pmu *cci_pmu = to_cci_pmu(event->pmu); 819 pmu_write_register(cci_pmu, value, idx, CCI_PMU_CNTR);
820 struct hw_perf_event *hw_counter = &event->hw;
821 int idx = hw_counter->idx;
822
823 if (unlikely(!pmu_is_valid_counter(cci_pmu, idx)))
824 dev_err(&cci_pmu->plat_device->dev, "Invalid CCI PMU counter %d\n", idx);
825 else
826 pmu_write_register(cci_pmu, value, idx, CCI_PMU_CNTR);
827} 820}
828 821
829static void pmu_write_counters(struct cci_pmu *cci_pmu, unsigned long *mask) 822static void pmu_write_counters(struct cci_pmu *cci_pmu, unsigned long *mask)
@@ -836,7 +829,7 @@ static void pmu_write_counters(struct cci_pmu *cci_pmu, unsigned long *mask)
836 829
837 if (WARN_ON(!event)) 830 if (WARN_ON(!event))
838 continue; 831 continue;
839 pmu_write_counter(event, local64_read(&event->hw.prev_count)); 832 pmu_write_counter(cci_pmu, local64_read(&event->hw.prev_count), i);
840 } 833 }
841} 834}
842 835