drivers/perf: hisi: Add driver for HiSilicon PCIe PMU
authorQi Liu <liuqi115@huawei.com>
Thu, 2 Dec 2021 08:06:33 +0000 (16:06 +0800)
committerWill Deacon <will@kernel.org>
Tue, 14 Dec 2021 12:30:26 +0000 (12:30 +0000)
commit8404b0fbc7fbd42e5c5d28cdedd450e70829c77a
treecc09e6ecc37b36b3c158c357649716d435968604
parentc8602008e247f5603317c16f076565a96715e1ba
drivers/perf: hisi: Add driver for HiSilicon PCIe PMU

PCIe PMU Root Complex Integrated End Point(RCiEP) device is supported
to sample bandwidth, latency, buffer occupation etc.

Each PMU RCiEP device monitors multiple Root Ports, and each RCiEP is
registered as a PMU in /sys/bus/event_source/devices, so users can
select target PMU, and use filter to do further sets.

Filtering options contains:
event     - select the event.
port      - select target Root Ports. Information of Root Ports are
            shown under sysfs.
bdf       - select requester_id of target EP device.
trig_len  - set trigger condition for starting event statistics.
trig_mode - set trigger mode. 0 means starting to statistic when bigger
            than trigger condition, and 1 means smaller.
thr_len   - set threshold for statistics.
thr_mode  - set threshold mode. 0 means count when bigger than threshold,
            and 1 means smaller.

Acked-by: Krzysztof WilczyƄski <kw@linux.com>
Reviewed-by: John Garry <john.garry@huawei.com>
Signed-off-by: Qi Liu <liuqi115@huawei.com>
Reviewed-by: Shaokun Zhang <zhangshaokun@hisilicon.com>
Link: https://lore.kernel.org/r/20211202080633.2919-3-liuqi115@huawei.com
Signed-off-by: Will Deacon <will@kernel.org>
MAINTAINERS
drivers/perf/hisilicon/Kconfig
drivers/perf/hisilicon/Makefile
drivers/perf/hisilicon/hisi_pcie_pmu.c [new file with mode: 0644]
include/linux/cpuhotplug.h