drivers/perf: arm_pmu: simplify cpu_pmu_request_irqs()
authorMark Rutland <mark.rutland@arm.com>
Tue, 11 Apr 2017 08:39:48 +0000 (09:39 +0100)
committerWill Deacon <will.deacon@arm.com>
Tue, 11 Apr 2017 15:29:53 +0000 (16:29 +0100)
The ARM PMU framework code always uses armpmu_dispatch_irq as its common
IRQ handler. Passing this down from cpu_pmu_init() is somewhat
pointless, and gets in the way of refactoring.

This patch makes cpu_pmu_request_irqs() always use armpmu_dispatch_irq
as the handler when requesting IRQs, and removes the handler parameter
from its prototype.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Tested-by: Jeremy Linton <jeremy.linton@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
drivers/perf/arm_pmu.c

index 985bd081f3e71fc6c65b0c47def8029263f22d99..183c6fd786b2d3da559edcdb13c44ea525467c2b 100644 (file)
@@ -543,10 +543,11 @@ static void cpu_pmu_free_irqs(struct arm_pmu *cpu_pmu)
        }
 }
 
-static int cpu_pmu_request_irqs(struct arm_pmu *cpu_pmu, irq_handler_t handler)
+static int cpu_pmu_request_irqs(struct arm_pmu *cpu_pmu)
 {
        int cpu, err;
        struct pmu_hw_events __percpu *hw_events = cpu_pmu->hw_events;
+       const irq_handler_t handler = armpmu_dispatch_irq;
 
        for_each_cpu(cpu, &cpu_pmu->supported_cpus) {
                int irq = per_cpu(hw_events->irq, cpu);
@@ -735,7 +736,7 @@ static int cpu_pmu_init(struct arm_pmu *cpu_pmu)
 {
        int err;
 
-       err = cpu_pmu_request_irqs(cpu_pmu, armpmu_dispatch_irq);
+       err = cpu_pmu_request_irqs(cpu_pmu);
        if (err)
                goto out;