Home
last modified time | relevance | path

Searched full:ppmu (Results 1 – 25 of 42) sorted by relevance

12

/Linux-v5.15/Documentation/devicetree/bindings/devfreq/event/
Dsamsung,exynos-ppmu.yaml4 $id: http://devicetree.org/schemas/devfreq/event/samsung,exynos-ppmu.yaml#
7 title: Samsung Exynos SoC PPMU (Platform Performance Monitoring Unit)
14 The Samsung Exynos SoC has PPMU (Platform Performance Monitoring Unit) for
15 each IP. PPMU provides the primitive values to get performance data. These
16 PPMU events provide information of the SoC's behaviors so that you may use to
19 Exynos PPMU driver uses the devfreq-event class to provide event data to
26 - samsung,exynos-ppmu
27 - samsung,exynos-ppmu-v2
31 - const: ppmu
43 '^ppmu-event[0-9]+(-[a-z0-9]+){,2}$':
[all …]
/Linux-v5.15/arch/arm/boot/dts/
Dexynos4412-ppmu-common.dtsi3 * Device tree sources for Exynos4412 PPMU common device tree
13 ppmu_dmc0_3: ppmu-event3-dmc0 {
14 event-name = "ppmu-event3-dmc0";
23 ppmu_dmc1_3: ppmu-event3-dmc1 {
24 event-name = "ppmu-event3-dmc1";
33 ppmu_leftbus_3: ppmu-event3-leftbus {
34 event-name = "ppmu-event3-leftbus";
43 ppmu_rightbus_3: ppmu-event3-rightbus {
44 event-name = "ppmu-event3-rightbus";
Dexynos4.dtsi785 ppmu_dmc0: ppmu@106a0000 {
786 compatible = "samsung,exynos-ppmu";
789 clock-names = "ppmu";
793 ppmu_dmc1: ppmu@106b0000 {
794 compatible = "samsung,exynos-ppmu";
797 clock-names = "ppmu";
801 ppmu_cpu: ppmu@106c0000 {
802 compatible = "samsung,exynos-ppmu";
805 clock-names = "ppmu";
809 ppmu_rightbus: ppmu@112a0000 {
[all …]
Dexynos3250.dtsi704 ppmu_dmc0: ppmu@106a0000 {
705 compatible = "samsung,exynos-ppmu";
710 ppmu_dmc1: ppmu@106b0000 {
711 compatible = "samsung,exynos-ppmu";
716 ppmu_cpu: ppmu@106c0000 {
717 compatible = "samsung,exynos-ppmu";
722 ppmu_rightbus: ppmu@112a0000 {
723 compatible = "samsung,exynos-ppmu";
726 clock-names = "ppmu";
730 ppmu_leftbus: ppmu@116a0000 {
[all …]
Dexynos5420.dtsi299 ppmu_dmc0_0: ppmu@10d00000 {
300 compatible = "samsung,exynos-ppmu";
303 clock-names = "ppmu";
305 ppmu_event3_dmc0_0: ppmu-event3-dmc0_0 {
306 event-name = "ppmu-event3-dmc0_0";
311 ppmu_dmc0_1: ppmu@10d10000 {
312 compatible = "samsung,exynos-ppmu";
315 clock-names = "ppmu";
317 ppmu_event3_dmc0_1: ppmu-event3-dmc0_1 {
318 event-name = "ppmu-event3-dmc0_1";
[all …]
Dexynos4210.dtsi182 ppmu_acp: ppmu@10ae0000 {
183 compatible = "samsung,exynos-ppmu";
188 ppmu_lcd1: ppmu@12240000 {
189 compatible = "samsung,exynos-ppmu";
192 clock-names = "ppmu";
/Linux-v5.15/drivers/devfreq/event/
Dexynos-ppmu.c3 * exynos_ppmu.c - Exynos PPMU (Platform Performance Monitoring Unit) support
22 #include "exynos-ppmu.h"
41 struct exynos_ppmu_data ppmu; member
46 { "ppmu-event0-"#name, PPMU_PMNCNT0 }, \
47 { "ppmu-event1-"#name, PPMU_PMNCNT1 }, \
48 { "ppmu-event2-"#name, PPMU_PMNCNT2 }, \
49 { "ppmu-event3-"#name, PPMU_PMNCNT3 }
121 * The devfreq-event ops structure for PPMU v1.1
139 /* Disable PPMU */ in exynos_ppmu_disable()
178 /* Reset cycle counter/performance counter and enable PPMU */ in exynos_ppmu_set_event()
[all …]
DKconfig27 tristate "Exynos PPMU (Platform Performance Monitoring Unit) DEVFREQ event Driver"
31 This add the devfreq-event driver for Exynos SoC. It provides PPMU
DMakefile5 obj-$(CONFIG_DEVFREQ_EVENT_EXYNOS_PPMU) += exynos-ppmu.o
/Linux-v5.15/arch/powerpc/perf/
Dcore-book3s.c65 static struct power_pmu *ppmu; variable
81 * these registers (via mtspr/mfspr) are done under ppmu flag
141 if (!ppmu) in is_sier_available()
144 if (ppmu->flags & PPMU_HAS_SIER) in is_sier_available()
184 if ((ppmu->flags & PPMU_HAS_SSLOT) && (mmcra & MMCRA_SAMPLE_ENABLE)) { in perf_ip_adjust()
206 if (ppmu->flags & PPMU_HAS_SIER) in perf_get_data_addr()
211 if (ppmu->flags & PPMU_SIAR_VALID) in perf_get_data_addr()
213 else if (ppmu->flags & PPMU_ALT_SIPR) in perf_get_data_addr()
215 else if (ppmu->flags & PPMU_NO_SIAR) in perf_get_data_addr()
234 if (ppmu->flags & PPMU_HAS_SIER) in regs_sihv()
[all …]
Dcore-fsl-emb.c27 static struct fsl_emb_pmu *ppmu; variable
280 int num_counters = ppmu->n_counter; in fsl_emb_pmu_add()
288 num_counters = ppmu->n_restricted; in fsl_emb_pmu_add()
447 if (!ppmu->cache_events) in hw_perf_cache_event()
460 ev = (*ppmu->cache_events)[type][op][result]; in hw_perf_cache_event()
478 if (ppmu->n_counter > MAX_HWEVENTS) { in fsl_emb_pmu_event_init()
480 ppmu->n_counter, MAX_HWEVENTS); in fsl_emb_pmu_event_init()
481 ppmu->n_counter = MAX_HWEVENTS; in fsl_emb_pmu_event_init()
487 if (ev >= ppmu->n_generic || ppmu->generic_events[ev] == 0) in fsl_emb_pmu_event_init()
489 ev = ppmu->generic_events[ev]; in fsl_emb_pmu_event_init()
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/memory-controllers/
Dsamsung,exynos5422-dmc.yaml19 controller in runtime, the driver uses the PPMU (Platform Performance
48 description: phandles of the PPMU events used by the controller.
97 ppmu_dmc0_0: ppmu@10d00000 {
98 compatible = "samsung,exynos-ppmu";
101 clock-names = "ppmu";
103 ppmu_event_dmc0_0: ppmu-event3-dmc0-0 {
104 event-name = "ppmu-event3-dmc0_0";
/Linux-v5.15/drivers/gpu/drm/nouveau/nvkm/subdev/pmu/
Dgm200.c49 struct nvkm_pmu **ppmu) in gm200_pmu_new() argument
51 return nvkm_pmu_new_(gm200_pmu_fwif, device, type, inst, ppmu); in gm200_pmu_new()
Dgf119.c51 struct nvkm_pmu **ppmu) in gf119_pmu_new() argument
53 return nvkm_pmu_new_(gf119_pmu_fwif, device, type, inst, ppmu); in gf119_pmu_new()
Dgk208.c52 struct nvkm_pmu **ppmu) in gk208_pmu_new() argument
54 return nvkm_pmu_new_(gk208_pmu_fwif, device, type, inst, ppmu); in gk208_pmu_new()
Dgm107.c53 struct nvkm_pmu **ppmu) in gm107_pmu_new() argument
55 return nvkm_pmu_new_(gm107_pmu_fwif, device, type, inst, ppmu); in gm107_pmu_new()
Dgp102.c55 struct nvkm_pmu **ppmu) in gp102_pmu_new() argument
57 return nvkm_pmu_new_(gp102_pmu_fwif, device, type, inst, ppmu); in gp102_pmu_new()
Dgf100.c73 struct nvkm_pmu **ppmu) in gf100_pmu_new() argument
75 return nvkm_pmu_new_(gf100_pmu_fwif, device, type, inst, ppmu); in gf100_pmu_new()
Dbase.c200 enum nvkm_subdev_type type, int inst, struct nvkm_pmu **ppmu) in nvkm_pmu_new_() argument
203 if (!(pmu = *ppmu = kzalloc(sizeof(*pmu), GFP_KERNEL))) in nvkm_pmu_new_()
205 return nvkm_pmu_ctor(fwif, device, type, inst, *ppmu); in nvkm_pmu_new_()
Dgp10b.c103 struct nvkm_pmu **ppmu) in gp10b_pmu_new() argument
105 return nvkm_pmu_new_(gp10b_pmu_fwif, device, type, inst, ppmu); in gp10b_pmu_new()
Dgk110.c110 struct nvkm_pmu **ppmu) in gk110_pmu_new() argument
112 return nvkm_pmu_new_(gk110_pmu_fwif, device, type, inst, ppmu); in gk110_pmu_new()
Dgk104.c131 struct nvkm_pmu **ppmu) in gk104_pmu_new() argument
133 return nvkm_pmu_new_(gk104_pmu_fwif, device, type, inst, ppmu); in gk104_pmu_new()
Dgk20a.c214 struct nvkm_pmu **ppmu) in gk20a_pmu_new() argument
221 *ppmu = &pmu->base; in gk20a_pmu_new()
Dgm20b.c244 struct nvkm_pmu **ppmu) in gm20b_pmu_new() argument
246 return nvkm_pmu_new_(gm20b_pmu_fwif, device, type, inst, ppmu); in gm20b_pmu_new()
/Linux-v5.15/include/dt-bindings/pmu/
Dexynos_ppmu.h3 * Samsung Exynos PPMU event types for counting in regs

12