Re: [PATCH v1 3/7] dt-bindings: devfreq: tegra30-actmon: Convert to schema

From: Thierry Reding
Date: Mon May 31 2021 - 05:35:04 EST


On Tue, May 11, 2021 at 12:10:04AM +0300, Dmitry Osipenko wrote:
> Convert NVIDIA Tegra ACTMON binding to schema.
>
> Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx>
> ---
> .../arm/tegra/nvidia,tegra30-actmon.txt | 57 ---------
> .../devfreq/nvidia,tegra30-actmon.yaml | 121 ++++++++++++++++++
> 2 files changed, 121 insertions(+), 57 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/arm/tegra/nvidia,tegra30-actmon.txt
> create mode 100644 Documentation/devicetree/bindings/devfreq/nvidia,tegra30-actmon.yaml
>
> diff --git a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra30-actmon.txt b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra30-actmon.txt
> deleted file mode 100644
> index 897eedfa2bc8..000000000000
> --- a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra30-actmon.txt
> +++ /dev/null
> @@ -1,57 +0,0 @@
> -NVIDIA Tegra Activity Monitor
> -
> -The activity monitor block collects statistics about the behaviour of other
> -components in the system. This information can be used to derive the rate at
> -which the external memory needs to be clocked in order to serve all requests
> -from the monitored clients.
> -
> -Required properties:
> -- compatible: should be "nvidia,tegra<chip>-actmon"
> -- reg: offset and length of the register set for the device
> -- interrupts: standard interrupt property
> -- clocks: Must contain a phandle and clock specifier pair for each entry in
> -clock-names. See ../../clock/clock-bindings.txt for details.
> -- clock-names: Must include the following entries:
> - - actmon
> - - emc
> -- resets: Must contain an entry for each entry in reset-names. See
> -../../reset/reset.txt for details.
> -- reset-names: Must include the following entries:
> - - actmon
> -- operating-points-v2: See ../bindings/opp/opp.txt for details.
> -- interconnects: Should contain entries for memory clients sitting on
> - MC->EMC memory interconnect path.
> -- interconnect-names: Should include name of the interconnect path for each
> - interconnect entry. Consult TRM documentation for
> - information about available memory clients, see MEMORY
> - CONTROLLER section.
> -
> -For each opp entry in 'operating-points-v2' table:
> -- opp-supported-hw: bitfield indicating SoC speedo ID mask
> -- opp-peak-kBps: peak bandwidth of the memory channel
> -
> -Example:
> - dfs_opp_table: opp-table {
> - compatible = "operating-points-v2";
> -
> - opp@12750000 {
> - opp-hz = /bits/ 64 <12750000>;
> - opp-supported-hw = <0x000F>;
> - opp-peak-kBps = <51000>;
> - };
> - ...
> - };
> -
> - actmon@6000c800 {
> - compatible = "nvidia,tegra124-actmon";
> - reg = <0x0 0x6000c800 0x0 0x400>;
> - interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
> - clocks = <&tegra_car TEGRA124_CLK_ACTMON>,
> - <&tegra_car TEGRA124_CLK_EMC>;
> - clock-names = "actmon", "emc";
> - resets = <&tegra_car 119>;
> - reset-names = "actmon";
> - operating-points-v2 = <&dfs_opp_table>;
> - interconnects = <&mc TEGRA124_MC_MPCORER &emc>;
> - interconnect-names = "cpu";
> - };
> diff --git a/Documentation/devicetree/bindings/devfreq/nvidia,tegra30-actmon.yaml b/Documentation/devicetree/bindings/devfreq/nvidia,tegra30-actmon.yaml
> new file mode 100644
> index 000000000000..2a940d5d7ab4
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/devfreq/nvidia,tegra30-actmon.yaml
> @@ -0,0 +1,121 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/devfreq/nvidia,tegra30-actmon.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: NVIDIA Tegra30 Activity Monitor
> +
> +maintainers:
> + - Dmitry Osipenko <digetx@xxxxxxxxx>
> + - Jon Hunter <jonathanh@xxxxxxxxxx>
> + - Thierry Reding <thierry.reding@xxxxxxxxx>
> +
> +description: |
> + The activity monitor block collects statistics about the behaviour of other
> + components in the system. This information can be used to derive the rate at
> + which the external memory needs to be clocked in order to serve all requests
> + from the monitored clients.
> +
> +properties:
> + compatible:
> + enum:
> + - nvidia,tegra30-actmon
> + - nvidia,tegra114-actmon
> + - nvidia,tegra124-actmon
> + - nvidia,tegra210-actmon
> +
> + reg:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 2
> +
> + clock-names:
> + items:
> + - const: actmon
> + - const: emc
> +
> + resets:
> + maxItems: 1
> +
> + reset-names:
> + items:
> + - const: actmon
> +
> + interrupts:
> + maxItems: 1
> +
> + interconnects:
> + minItems: 1
> + maxItems: 12
> +
> + interconnect-names:
> + minItems: 1
> + maxItems: 12
> + description:
> + Should include name of the interconnect path for each interconnect
> + entry. Consult TRM documentation for information about available
> + memory clients, see ACTIVITY MONITOR section.

This used to be "see MEMORY CONTROLLER section", so I looked at the TRM
to see if this was perhaps a fix for an earlier typo, but looking at the
TRM (v3) I can't find a section named "ACTIVITY MONITOR".

Should this be changed back to "MEMORY CONTROLLER"?

Thierry

Attachment: signature.asc
Description: PGP signature