/linux-5.10/Documentation/devicetree/bindings/perf/ |
D | fsl-imx-ddr.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/perf/fsl-imx-ddr.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Freescale(NXP) IMX8 DDR performance monitor 10 - Frank Li <frank.li@nxp.com> 15 - enum: 16 - fsl,imx8-ddr-pmu 17 - fsl,imx8m-ddr-pmu 18 - fsl,imx8mp-ddr-pmu [all …]
|
/linux-5.10/drivers/perf/ |
D | fsl_imx8_ddr_perf.c | 1 // SPDX-License-Identifier: GPL-2.0 40 #define to_ddr_pmu(p) container_of(p, struct ddr_pmu, pmu) 47 /* DDR Perf hardware feature */ 52 unsigned int quirks; /* quirks needed for different DDR Perf core */ 66 { .compatible = "fsl,imx8-ddr-pmu", .data = &imx8_devtype_data}, 67 { .compatible = "fsl,imx8m-ddr-pmu", .data = &imx8m_devtype_data}, 68 { .compatible = "fsl,imx8mp-ddr-pmu", .data = &imx8mp_devtype_data}, 74 struct pmu pmu; member 93 static u32 ddr_perf_filter_cap_get(struct ddr_pmu *pmu, int cap) in ddr_perf_filter_cap_get() argument 95 u32 quirks = pmu->devtype_data->quirks; in ddr_perf_filter_cap_get() [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 10 tristate "ARM CCI PMU driver" 14 Support for PMU events monitoring on the ARM CCI (Cache Coherent 17 If compiled as a module, it will be called arm-cci. 20 bool "support CCI-400" 25 CCI-400 provides 4 independent event counters counting events related 29 bool "support CCI-500/CCI-550" 33 CCI-500/CCI-550 both provide 8 independent event counters, which can 41 PMU (perf) driver supporting the ARM CCN (Cache Coherent Network) 45 tristate "Arm CMN-600 PMU support" [all …]
|
/linux-5.10/Documentation/admin-guide/perf/ |
D | imx-ddr.rst | 2 Freescale i.MX8 DDR Performance Monitoring Unit (PMU) 21 in DDR PMU, see /sys/bus/events_source/devices/imx8_ddr0/caps/. 23 .. code-block:: bash 25 perf stat -a -e imx8_ddr0/cycles/ cmd 26 perf stat -a -e imx8_ddr0/read/,imx8_ddr0/write/ cmd 28 AXI filtering is only used by CSV modes 0x41 (axid-read) and 0x42 (axid-write) 32 indicates whether PMU supports AXI ID filter or not; enhanced_filter indicates 33 whether PMU supports enhanced AXI ID filter or not. Value 0 for un-supported, and 38 --AXI_ID defines AxID matching value. 39 --AXI_MASKING defines which bits of AxID are meaningful for the matching. [all …]
|
D | index.rst | 1 .. SPDX-License-Identifier: GPL-2.0 10 hisi-pmu 11 imx-ddr 14 arm-ccn 15 arm-cmn 16 xgene-pmu 18 thunderx2-pmu
|
/linux-5.10/Documentation/devicetree/bindings/devfreq/ |
D | rk3399_dmc.txt | 4 - compatible: Must be "rockchip,rk3399-dmc". 5 - devfreq-events: Node to get DDR loading, Refer to 7 rockchip-dfi.txt 8 - clocks: Phandles for clock specified in "clock-names" property 9 - clock-names : The name of clock used by the DFI, must be 11 - operating-points-v2: Refer to Documentation/devicetree/bindings/opp/opp.txt 13 - center-supply: DMC supply node. 14 - status: Marks the node enabled/disabled. 17 - interrupts: The CPU interrupt number. The interrupt specifier 19 It should be a DCF interrupt. When DDR DVFS finishes [all …]
|
/linux-5.10/drivers/devfreq/event/ |
D | rockchip-dfi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Author: Lin Huang <hl@rock-chips.com> 8 #include <linux/devfreq-event.h> 46 * The dfi controller can monitor DDR load. It has an upper and lower threshold 48 * generated to indicate the DDR frequency should be changed. 63 void __iomem *dfi_regs = info->regs; in rockchip_dfi_start_hardware_counter() 67 /* get ddr type */ in rockchip_dfi_start_hardware_counter() 68 regmap_read(info->regmap_pmu, RK3399_PMUGRF_OS_REG2, &val); in rockchip_dfi_start_hardware_counter() 75 /* set ddr type to dfi */ in rockchip_dfi_start_hardware_counter() 88 void __iomem *dfi_regs = info->regs; in rockchip_dfi_stop_hardware_counter() [all …]
|
/linux-5.10/drivers/perf/hisilicon/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 tristate "HiSilicon SoC PMU drivers" 7 Agent performance monitor and DDR Controller performance monitor.
|
/linux-5.10/arch/arm/boot/dts/ |
D | ecx-2000.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright 2011-2012 Calxeda, Inc. 6 /dts-v1/; 12 model = "Calxeda ECX-2000"; 13 compatible = "calxeda,ecx-2000"; 14 #address-cells = <2>; 15 #size-cells = <2>; 18 #address-cells = <1>; 19 #size-cells = <0>; 22 compatible = "arm,cortex-a15"; [all …]
|
D | highbank.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright 2011-2012 Calxeda, Inc. 6 /dts-v1/; 14 #address-cells = <1>; 15 #size-cells = <1>; 18 #address-cells = <1>; 19 #size-cells = <0>; 22 compatible = "arm,cortex-a9"; 25 next-level-cache = <&L2>; 27 clock-names = "cpu"; [all …]
|
D | meson8.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 OR MIT 6 #include <dt-bindings/clock/meson8-ddr-clkc.h> 7 #include <dt-bindings/clock/meson8b-clkc.h> 8 #include <dt-bindings/gpio/meson8-gpio.h> 9 #include <dt-bindings/power/meson8-power.h> 10 #include <dt-bindings/reset/amlogic,meson8b-clkc-reset.h> 11 #include <dt-bindings/reset/amlogic,meson8b-reset.h> 19 #address-cells = <1>; 20 #size-cells = <0>; 24 compatible = "arm,cortex-a9"; [all …]
|
D | meson8b.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 OR MIT 7 #include <dt-bindings/clock/meson8-ddr-clkc.h> 8 #include <dt-bindings/clock/meson8b-clkc.h> 9 #include <dt-bindings/gpio/meson8b-gpio.h> 10 #include <dt-bindings/power/meson8-power.h> 11 #include <dt-bindings/reset/amlogic,meson8b-reset.h> 12 #include <dt-bindings/reset/amlogic,meson8b-clkc-reset.h> 17 #address-cells = <1>; 18 #size-cells = <0>; 22 compatible = "arm,cortex-a5"; [all …]
|
D | tegra114-tn7.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/input.h> 15 linux,initrd-start = <0x82000000>; 16 linux,initrd-end = <0x82800000>; 24 trusted-foundations { 25 compatible = "tlm,trusted-foundations"; 26 tlm,version-major = <2>; 27 tlm,version-minor = <8>; 40 avdd-dsi-csi-supply = <&vdd_1v2_ap>; [all …]
|
D | qcom-ipq8064.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/clock/qcom,gcc-ipq806x.h> 6 #include <dt-bindings/clock/qcom,lcc-ipq806x.h> 7 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/reset/qcom,gcc-ipq806x.h> 9 #include <dt-bindings/soc/qcom,gsbi.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #address-cells = <1>; [all …]
|
D | omap5.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com/ 8 #include <dt-bindings/bus/ti-sysc.h> 9 #include <dt-bindings/gpio/gpio.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/pinctrl/omap.h> 12 #include <dt-bindings/clock/omap5.h> 15 #address-cells = <2>; 16 #size-cells = <2>; 19 interrupt-parent = <&wakeupgen>; [all …]
|
/linux-5.10/arch/arm/mach-imx/ |
D | mmdc.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 59 #define to_mmdc_pmu(p) container_of(p, struct mmdc_pmu, pmu) 75 { .compatible = "fsl,imx6q-mmdc", .data = (void *)&imx6q_data}, 76 { .compatible = "fsl,imx6qp-mmdc", .data = (void *)&imx6qp_data}, 85 PMU_EVENT_ATTR_STRING(total-cycles, mmdc_pmu_total_cycles, "event=0x00") 86 PMU_EVENT_ATTR_STRING(busy-cycles, mmdc_pmu_busy_cycles, "event=0x01") 87 PMU_EVENT_ATTR_STRING(read-accesses, mmdc_pmu_read_accesses, "event=0x02") 88 PMU_EVENT_ATTR_STRING(write-accesses, mmdc_pmu_write_accesses, "event=0x03") 89 PMU_EVENT_ATTR_STRING(read-bytes, mmdc_pmu_read_bytes, "event=0x04") 90 PMU_EVENT_ATTR_STRING(read-bytes.unit, mmdc_pmu_read_bytes_unit, "MB"); [all …]
|
/linux-5.10/arch/arm64/boot/dts/freescale/ |
D | imx8mp.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 #include <dt-bindings/clock/imx8mp-clock.h> 7 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/input/input.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/thermal/thermal.h> 12 #include "imx8mp-pinfunc.h" 15 interrupt-parent = <&gic>; 16 #address-cells = <2>; 17 #size-cells = <2>; [all …]
|
D | imx8qxp.dtsi | 1 // SPDX-License-Identifier: GPL-2.0+ 4 * Copyright 2017-2018 NXP 8 #include <dt-bindings/clock/imx8-clock.h> 9 #include <dt-bindings/firmware/imx/rsrc.h> 10 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/input/input.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/pinctrl/pads-imx8qxp.h> 14 #include <dt-bindings/thermal/thermal.h> 17 interrupt-parent = <&gic>; [all …]
|
D | fsl-ls208xa.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 3 * Device Tree Include file for Freescale Layerscape-2080A family SoC. 12 #include <dt-bindings/thermal/thermal.h> 13 #include <dt-bindings/interrupt-controller/arm-gic.h> 17 interrupt-parent = <&gic>; 18 #address-cells = <2>; 19 #size-cells = <2>; 31 #address-cells = <1>; 32 #size-cells = <0>; 38 /* DRAM space - 1, size : 2 GB DRAM */ [all …]
|
D | imx8mn.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 #include <dt-bindings/clock/imx8mn-clock.h> 7 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/input/input.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/thermal/thermal.h> 12 #include "imx8mn-pinfunc.h" 15 interrupt-parent = <&gic>; 16 #address-cells = <2>; 17 #size-cells = <2>; [all …]
|
D | imx8mm.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 #include <dt-bindings/clock/imx8mm-clock.h> 7 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/input/input.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/thermal/thermal.h> 12 #include "imx8mm-pinfunc.h" 15 interrupt-parent = <&gic>; 16 #address-cells = <2>; 17 #size-cells = <2>; [all …]
|
D | fsl-ls1046a.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 3 * Device Tree Include file for NXP Layerscape-1046A family SoC. 11 #include <dt-bindings/interrupt-controller/arm-gic.h> 12 #include <dt-bindings/thermal/thermal.h> 16 interrupt-parent = <&gic>; 17 #address-cells = <2>; 18 #size-cells = <2>; 35 #address-cells = <1>; 36 #size-cells = <0>; 40 compatible = "arm,cortex-a72"; [all …]
|
D | imx8mq.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 4 * Copyright (C) 2017-2018 Pengutronix, Lucas Stach <kernel@pengutronix.de> 7 #include <dt-bindings/clock/imx8mq-clock.h> 8 #include <dt-bindings/power/imx8mq-power.h> 9 #include <dt-bindings/reset/imx8mq-reset.h> 10 #include <dt-bindings/gpio/gpio.h> 11 #include "dt-bindings/input/input.h" 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/thermal/thermal.h> 14 #include "imx8mq-pinfunc.h" [all …]
|
D | fsl-ls1028a.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 3 * Device Tree Include file for NXP Layerscape-1028A family SoC. 5 * Copyright 2018-2020 NXP 11 #include <dt-bindings/interrupt-controller/arm-gic.h> 12 #include <dt-bindings/thermal/thermal.h> 16 interrupt-parent = <&gic>; 17 #address-cells = <2>; 18 #size-cells = <2>; 25 #address-cells = <1>; 26 #size-cells = <0>; [all …]
|
/linux-5.10/drivers/devfreq/ |
D | rk3399_dmc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Author: Lin Huang <hl@rock-chips.com> 7 #include <linux/arm-smccc.h> 11 #include <linux/devfreq-event.h> 79 unsigned long old_clk_rate = dmcfreq->rate; in rk3399_dmcfreq_target() 93 if (dmcfreq->rate == target_rate) in rk3399_dmcfreq_target() 96 mutex_lock(&dmcfreq->lock); in rk3399_dmcfreq_target() 98 if (dmcfreq->regmap_pmu) { in rk3399_dmcfreq_target() 99 if (target_rate >= dmcfreq->odt_dis_freq) in rk3399_dmcfreq_target() 103 * This makes a SMC call to the TF-A to set the DDR PD in rk3399_dmcfreq_target() [all …]
|