Skip to content
Permalink
Browse files
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.
subevent     - select the subevent.
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.
trigger_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.

Signed-off-by: Qi Liu <liuqi115@huawei.com>
  • Loading branch information
77liuqi authored and intel-lab-lkp committed Apr 15, 2021
1 parent 4dcb1a3 commit 94ad51ddfebbb5df3aa85fdb8a3781737accb159
Show file tree
Hide file tree
Showing 8 changed files with 1,045 additions and 0 deletions.
@@ -8084,6 +8084,12 @@ W: http://www.hisilicon.com
F: Documentation/admin-guide/perf/hisi-pmu.rst
F: drivers/perf/hisilicon

HISILICON PCIE PMU DRIVER
M: Qi Liu <liuqi115@huawei.com>
S: Maintained
F: Documentation/admin-guide/perf/hisi-pcie-pmu.rst
F: drivers/perf/pci/hisilicon/hisi_pcie_pmu.c

HISILICON QM AND ZIP Controller DRIVER
M: Zhou Wang <wangzhou1@hisilicon.com>
L: linux-crypto@vger.kernel.org
@@ -139,4 +139,6 @@ config ARM_DMC620_PMU

source "drivers/perf/hisilicon/Kconfig"

source "drivers/perf/pci/Kconfig"

endmenu
@@ -14,3 +14,4 @@ obj-$(CONFIG_THUNDERX2_PMU) += thunderx2_pmu.o
obj-$(CONFIG_XGENE_PMU) += xgene_pmu.o
obj-$(CONFIG_ARM_SPE_PMU) += arm_spe_pmu.o
obj-$(CONFIG_ARM_DMC620_PMU) += arm_dmc620_pmu.o
obj-y += pci/
@@ -0,0 +1,16 @@
# SPDX-License-Identifier: GPL-2.0-only
#
# PCIe Performance Monitor Drivers
#
menu "PCIe Performance Monitor"

config HISI_PCIE_PMU
tristate "HiSilicon PCIE PERF PMU"
depends on (ARM64 && PCI) || COMPILE_TEST
help
Provide support for HiSilicon PCIe performance monitoring unit (PMU)
RCiEP devices.
Adds the PCIe PMU into perf events system for monitoring latency,
bandwidth etc.

endmenu
@@ -0,0 +1,2 @@
# SPDX-License-Identifier: GPL-2.0-only
obj-y += hisilicon/
@@ -0,0 +1,3 @@
# SPDX-License-Identifier: GPL-2.0-only

obj-$(CONFIG_HISI_PCIE_PMU) += hisi_pcie_pmu.o

0 comments on commit 94ad51d

Please sign in to comment.