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