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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



31.05.2021 12:36, Thierry Reding пишет:
> 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"?

The "ACTIVITY MONITOR" is documented only in the T124/210 TRMs, the h/w
modules supported by ACTMON are enumerated there. Both "ACTIVITY
MONITOR" and "MEMORY CONTROLLER" could be mentioned for completeness.



[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux