Loading Documentation/devicetree/bindings/arm/msm/l2cache-pmu.txt 0 → 100644 +20 −0 Original line number Diff line number Diff line L2 cache performance monitor unit L2 cache controllers have a performance monitor unit to measure events such as cache hits and misses. There is one L2 cache PMU for each cluster of CPUs. Required properties: - compatible : should be "qcom,qcom-l2cache-pmu" - interrupts : 1 interrupt for each cluster. - qcom,cpu-affinity: specifies the id of the first CPU in the cluster. Example: l2cache-pmu { compatible = "qcom,qcom-l2cache-pmu"; interrupts = <0 0 1>, <0 8 1>; qcom,cpu-affinity = <0>, <2> }; Documentation/devicetree/bindings/arm/pmu.txt +1 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ Required properties: "arm,arm11mpcore-pmu" "arm,arm1176-pmu" "arm,arm1136-pmu" "qcom,kryo-pmuv3" "qcom,krait-pmu" - interrupts : 1 combined interrupt or 1 per core. If the interrupt is a per-cpu interrupt (PPI) then 1 interrupt should be specified. Loading arch/arm/boot/dts/qcom/msm8996-v3.dtsi +5 −0 Original line number Diff line number Diff line Loading @@ -391,3 +391,8 @@ qcom,slope = <2901 2846 3200 3200 3200 3200 3200 3200 3200 3200 3200 3200 3200>; }; /* cpu pmu override */ &cpu_pmu { compatible = "qcom,kryo-pmuv3"; }; arch/arm/boot/dts/qcom/msm8996.dtsi +1 −1 Original line number Diff line number Diff line Loading @@ -3448,7 +3448,7 @@ }; }; cpu-pmu { cpu_pmu: cpu-pmu { compatible = "arm,armv8-pmuv3"; qcom,irq-is-percpu; interrupts = <1 7 4>; Loading arch/arm64/include/asm/pmu.h +3 −0 Original line number Diff line number Diff line Loading @@ -79,6 +79,9 @@ struct arm_pmu { struct pmu_hw_events *(*get_hw_events)(void); void (*save_pm_registers)(void *hcpu); void (*restore_pm_registers)(void *hcpu); int (*check_event)( struct arm_pmu *armpmu, struct hw_perf_event *hwc); }; #define to_arm_pmu(p) (container_of(p, struct arm_pmu, pmu)) Loading Loading
Documentation/devicetree/bindings/arm/msm/l2cache-pmu.txt 0 → 100644 +20 −0 Original line number Diff line number Diff line L2 cache performance monitor unit L2 cache controllers have a performance monitor unit to measure events such as cache hits and misses. There is one L2 cache PMU for each cluster of CPUs. Required properties: - compatible : should be "qcom,qcom-l2cache-pmu" - interrupts : 1 interrupt for each cluster. - qcom,cpu-affinity: specifies the id of the first CPU in the cluster. Example: l2cache-pmu { compatible = "qcom,qcom-l2cache-pmu"; interrupts = <0 0 1>, <0 8 1>; qcom,cpu-affinity = <0>, <2> };
Documentation/devicetree/bindings/arm/pmu.txt +1 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ Required properties: "arm,arm11mpcore-pmu" "arm,arm1176-pmu" "arm,arm1136-pmu" "qcom,kryo-pmuv3" "qcom,krait-pmu" - interrupts : 1 combined interrupt or 1 per core. If the interrupt is a per-cpu interrupt (PPI) then 1 interrupt should be specified. Loading
arch/arm/boot/dts/qcom/msm8996-v3.dtsi +5 −0 Original line number Diff line number Diff line Loading @@ -391,3 +391,8 @@ qcom,slope = <2901 2846 3200 3200 3200 3200 3200 3200 3200 3200 3200 3200 3200>; }; /* cpu pmu override */ &cpu_pmu { compatible = "qcom,kryo-pmuv3"; };
arch/arm/boot/dts/qcom/msm8996.dtsi +1 −1 Original line number Diff line number Diff line Loading @@ -3448,7 +3448,7 @@ }; }; cpu-pmu { cpu_pmu: cpu-pmu { compatible = "arm,armv8-pmuv3"; qcom,irq-is-percpu; interrupts = <1 7 4>; Loading
arch/arm64/include/asm/pmu.h +3 −0 Original line number Diff line number Diff line Loading @@ -79,6 +79,9 @@ struct arm_pmu { struct pmu_hw_events *(*get_hw_events)(void); void (*save_pm_registers)(void *hcpu); void (*restore_pm_registers)(void *hcpu); int (*check_event)( struct arm_pmu *armpmu, struct hw_perf_event *hwc); }; #define to_arm_pmu(p) (container_of(p, struct arm_pmu, pmu)) Loading