/Linux-v5.15/Documentation/devicetree/bindings/devfreq/event/ |
D | samsung,exynos-ppmu.yaml | 4 $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/ |
D | exynos4412-ppmu-common.dtsi | 3 * 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";
|
D | exynos4.dtsi | 785 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 …]
|
D | exynos3250.dtsi | 704 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 …]
|
D | exynos5420.dtsi | 299 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 …]
|
D | exynos4210.dtsi | 182 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/ |
D | exynos-ppmu.c | 3 * 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 …]
|
D | Kconfig | 27 tristate "Exynos PPMU (Platform Performance Monitoring Unit) DEVFREQ event Driver" 31 This add the devfreq-event driver for Exynos SoC. It provides PPMU
|
D | Makefile | 5 obj-$(CONFIG_DEVFREQ_EVENT_EXYNOS_PPMU) += exynos-ppmu.o
|
/Linux-v5.15/arch/powerpc/perf/ |
D | core-book3s.c | 65 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 …]
|
D | core-fsl-emb.c | 27 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/ |
D | samsung,exynos5422-dmc.yaml | 19 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/ |
D | gm200.c | 49 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()
|
D | gf119.c | 51 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()
|
D | gk208.c | 52 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()
|
D | gm107.c | 53 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()
|
D | gp102.c | 55 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()
|
D | gf100.c | 73 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()
|
D | base.c | 200 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_()
|
D | gp10b.c | 103 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()
|
D | gk110.c | 110 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()
|
D | gk104.c | 131 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()
|
D | gk20a.c | 214 struct nvkm_pmu **ppmu) in gk20a_pmu_new() argument 221 *ppmu = &pmu->base; in gk20a_pmu_new()
|
D | gm20b.c | 244 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/ |
D | exynos_ppmu.h | 3 * Samsung Exynos PPMU event types for counting in regs
|