linux-stable/drivers/perf/hisilicon
Shaokun Zhang baff06c315 drivers/perf: hisi: Refactor code for more uncore PMUs
On HiSilicon uncore PMU drivers, interrupt handling function and interrupt
registration function are very similar in differents PMU modules. Let's
refactor the frame.

Two new callbacks are added for the HW accessors:

* hisi_uncore_ops::get_int_status returns a bitmap of events which
  have overflowed and raised an interrupt

* hisi_uncore_ops::clear_int_status clears the overflow status for a
  specific event

These callback functions are used by a common IRQ handler,
hisi_uncore_pmu_isr().

One more function hisi_uncore_pmu_init_irq() is added to replace each
PMU initialization IRQ interface and simplify the code.

Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: John Garry <john.garry@huawei.com>
Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: John Garry <john.garry@huawei.com>
Co-developed-by: Qi Liu <liuqi115@huawei.com>
Signed-off-by: Qi Liu <liuqi115@huawei.com>
Signed-off-by: Shaokun Zhang <zhangshaokun@hisilicon.com>
Link: https://lore.kernel.org/r/1615186237-22263-3-git-send-email-zhangshaokun@hisilicon.com
Signed-off-by: Will Deacon <will@kernel.org>
2021-03-25 13:03:45 +00:00
..
hisi_uncore_ddrc_pmu.c drivers/perf: hisi: Refactor code for more uncore PMUs 2021-03-25 13:03:45 +00:00
hisi_uncore_hha_pmu.c drivers/perf: hisi: Refactor code for more uncore PMUs 2021-03-25 13:03:45 +00:00
hisi_uncore_l3c_pmu.c drivers/perf: hisi: Refactor code for more uncore PMUs 2021-03-25 13:03:45 +00:00
hisi_uncore_pmu.c drivers/perf: hisi: Refactor code for more uncore PMUs 2021-03-25 13:03:45 +00:00
hisi_uncore_pmu.h drivers/perf: hisi: Refactor code for more uncore PMUs 2021-03-25 13:03:45 +00:00
Kconfig drivers/perf: hisi: Permit modular builds of HiSilicon uncore drivers 2020-05-18 18:18:39 +01:00
Makefile drivers/perf: hisi: Permit modular builds of HiSilicon uncore drivers 2020-05-18 18:18:39 +01:00