2022-08-30 19:24:31

by Farber, Eliav

[permalink] [raw]
Subject: [PATCH v3 14/19] dt-bindings: hwmon: (mr75203) add "moortec,ts-series" property

Add optional "moortec,ts-series" property to define the temperature
equation and coefficients that shall be used to convert the digital
output to value in milli-Celsius.
Supported series: 5 (default) and 6.

Series 5:
T = G + H * (n / cal5 - 0.5) + J * F
Where: G = 60, H = 200, cal5 = 4094, J = -0.1, F = frequency clock in MHz

Series 6:
T = G + H * (n / cal5 - 0.5)
Where: G = 57.4, H = 249.4, cal5 = 4096

Signed-off-by: Eliav Farber <[email protected]>
---
V3 -> V2:
- New patch to introduce "moortec,ts-series" property.

.../devicetree/bindings/hwmon/moortec,mr75203.yaml | 10 ++++++++++
1 file changed, 10 insertions(+)

diff --git a/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml b/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml
index 4c983d8f8fe7..ec2dbe7da9c2 100644
--- a/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml
+++ b/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml
@@ -64,6 +64,16 @@ properties:
default: 1
$ref: /schemas/types.yaml#definitions/uint8-array

+ moortec,ts-series:
+ description:
+ moortec,ts-series defines the temperature equation and coefficients that
+ shall be used to convert the digital output to value in milli-Celsius.
+ Supported series are 5 and 6.
+ minimum: 5
+ maximum: 6
+ default: 5
+ $ref: /schemas/types.yaml#definitions/uint32
+
required:
- compatible
- reg
--
2.37.1


2022-08-31 08:35:43

by Philipp Zabel

[permalink] [raw]
Subject: Re: [PATCH v3 14/19] dt-bindings: hwmon: (mr75203) add "moortec,ts-series" property

On Di, 2022-08-30 at 19:22 +0000, Eliav Farber wrote:
> Add optional "moortec,ts-series" property to define the temperature
> equation and coefficients that shall be used to convert the digital
> output to value in milli-Celsius.
> Supported series: 5 (default) and 6.

Is this the difference between mr75xxx and mr76xxx series?
If so, should be a compatible "moortec,mr76006" instead?
If the temperature equation could be derived from the compatible, this
property would not be necessary.

regards
Philipp

2022-08-31 09:53:38

by Farber, Eliav

[permalink] [raw]
Subject: Re: [PATCH v3 14/19] dt-bindings: hwmon: (mr75203) add "moortec, ts-series" property

On 8/31/2022 11:23 AM, Philipp Zabel wrote:
> On Di, 2022-08-30 at 19:22 +0000, Eliav Farber wrote:
>> Add optional "moortec,ts-series" property to define the temperature
>> equation and coefficients that shall be used to convert the digital
>> output to value in milli-Celsius.
>> Supported series: 5 (default) and 6.
>
> Is this the difference between mr75xxx and mr76xxx series?
> If so, should be a compatible "moortec,mr76006" instead?
> If the temperature equation could be derived from the compatible, this
> property would not be necessary.
The PVT (Process, Voltage, Temperature) monitoring logic can be
constructed from many different sub-blocks:
*) CONTROLLER (mr75203) - controlling TS, PD and VM.
*) TS (mr74137) - for measuring temperature in ring.
*) PD (mr74139) - for measuring IO based transistors.
*) VM (mr74138) - for measuring voltage rails across the SoC.
*) Ring oscillators (mr76007/mr76008)
*) Pre-scalers (mr76006)

Besides mr75203 which is digital all other IPs are analog.
There is a single mr75203 and there can be several or none of the other
units.

The kernel driver is only for the controller (mr75203).
The series 5 or 6 is relevant for the TS (mr74137) and not for the
controller (mr75203).
Each of the analog units can have a different series number (for example
we use series 3 of the VM).

That is why I didn't change the compatible of mr75203, and instead added
a TS-series parameter.

--
Regards, Eliav

2022-08-31 10:41:01

by Philipp Zabel

[permalink] [raw]
Subject: Re: [PATCH v3 14/19] dt-bindings: hwmon: (mr75203) add "moortec, ts-series" property

On Mi, 2022-08-31 at 12:23 +0300, Farber, Eliav wrote:
> On 8/31/2022 11:23 AM, Philipp Zabel wrote:
> > On Di, 2022-08-30 at 19:22 +0000, Eliav Farber wrote:
> > > Add optional "moortec,ts-series" property to define the temperature
> > > equation and coefficients that shall be used to convert the digital
> > > output to value in milli-Celsius.
> > > Supported series: 5 (default) and 6.
> >
> > Is this the difference between mr75xxx and mr76xxx series?
> > If so, should be a compatible "moortec,mr76006" instead?
> > If the temperature equation could be derived from the compatible, this
> > property would not be necessary.
> The PVT (Process, Voltage, Temperature) monitoring logic can be
> constructed from many different sub-blocks:
> *) CONTROLLER (mr75203) - controlling TS, PD and VM.
> *) TS (mr74137) - for measuring temperature in ring.
> *) PD (mr74139) - for measuring IO based transistors.
> *) VM (mr74138) - for measuring voltage rails across the SoC.
> *) Ring oscillators (mr76007/mr76008)
> *) Pre-scalers (mr76006)
>
> Besides mr75203 which is digital all other IPs are analog.
> There is a single mr75203 and there can be several or none of the other
> units.

Thank you for the explanation, I think this information would be nice
to have in a description in moortec,mr75203.yaml.

> The kernel driver is only for the controller (mr75203).
> The series 5 or 6 is relevant for the TS (mr74137) and not for the
> controller (mr75203).
> Each of the analog units can have a different series number (for example
> we use series 3 of the VM).
>
> That is why I didn't change the compatible of mr75203, and instead added
> a TS-series parameter.

I see, I mistakenly assumed mr76006 referred to a new controller
version. This also invalidates my comment on patch 4.

regards
Philipp

2022-09-02 13:57:41

by Farber, Eliav

[permalink] [raw]
Subject: Re: [PATCH v3 14/19] dt-bindings: hwmon: (mr75203) add "moortec, ts-series" property

On 8/31/2022 12:42 PM, Philipp Zabel wrote:
> On Mi, 2022-08-31 at 12:23 +0300, Farber, Eliav wrote:
>> On 8/31/2022 11:23 AM, Philipp Zabel wrote:
>> > On Di, 2022-08-30 at 19:22 +0000, Eliav Farber wrote:
>> > > Add optional "moortec,ts-series" property to define the temperature
>> > > equation and coefficients that shall be used to convert the digital
>> > > output to value in milli-Celsius.
>> > > Supported series: 5 (default) and 6.
>> >
>> > Is this the difference between mr75xxx and mr76xxx series?
>> > If so, should be a compatible "moortec,mr76006" instead?
>> > If the temperature equation could be derived from the compatible, this
>> > property would not be necessary.
>> The PVT (Process, Voltage, Temperature) monitoring logic can be
>> constructed from many different sub-blocks:
>> *) CONTROLLER (mr75203) - controlling TS, PD and VM.
>> *) TS (mr74137) - for measuring temperature in ring.
>> *) PD (mr74139) - for measuring IO based transistors.
>> *) VM (mr74138) - for measuring voltage rails across the SoC.
>> *) Ring oscillators (mr76007/mr76008)
>> *) Pre-scalers (mr76006)
>>
>> Besides mr75203 which is digital all other IPs are analog.
>> There is a single mr75203 and there can be several or none of the other
>> units.
>
> Thank you for the explanation, I think this information would be nice
> to have in a description in moortec,mr75203.yaml.

For v4 I added a new patch which adds this description in
moortec,mr75203.yaml:

description: |
  A Moortec PVT (Process, Voltage, Temperature) monitoring logic design can
  include many different units.
  Such a design will usually consists of several Moortec's embedded
analog IPs,
  and a single Moortec controller to configure and control the IPs.

  Some of the Moortec's analog hard IPs that can be used in a design:
  *) Temperature Sensor (TS) - used to monitor core temperature (e.g.
mr74137).
  *) Voltage Monitor (VM) - used to monitor voltage levels (e.g. mr74138).
  *) Process Detector (PD) - used to assess silicon speed (e.g. mr74139).
  *) Delay Chain - ring oscillator connected to the PD, used to measure IO
     based transistors (e.g. mr76008 ring oscillator at 1.1V, mr76007 ring
     oscillator at 1.8V).
  *) Pre Scaler - provides divide-by-X scaling of input voltage, which
can then
     be presented for VM for measurement within its range (e.g. mr76006 -
     divide by 2 pre-scaler).

  TS, VM & PD also include a digital interface, which consists of
configuration
  inputs and measurement outputs.
  The mr75203 binding describes configuration for the controller unit,
but also
  for some of the analog IPs.

--
Regards, Eliav

2022-09-02 20:01:35

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH v3 14/19] dt-bindings: hwmon: (mr75203) add "moortec,ts-series" property

On Tue, Aug 30, 2022 at 07:22:07PM +0000, Eliav Farber wrote:
> Add optional "moortec,ts-series" property to define the temperature
> equation and coefficients that shall be used to convert the digital
> output to value in milli-Celsius.
> Supported series: 5 (default) and 6.
>
> Series 5:
> T = G + H * (n / cal5 - 0.5) + J * F
> Where: G = 60, H = 200, cal5 = 4094, J = -0.1, F = frequency clock in MHz
>
> Series 6:
> T = G + H * (n / cal5 - 0.5)
> Where: G = 57.4, H = 249.4, cal5 = 4096
>
> Signed-off-by: Eliav Farber <[email protected]>
> ---
> V3 -> V2:
> - New patch to introduce "moortec,ts-series" property.
>
> .../devicetree/bindings/hwmon/moortec,mr75203.yaml | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml b/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml
> index 4c983d8f8fe7..ec2dbe7da9c2 100644
> --- a/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml
> +++ b/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml
> @@ -64,6 +64,16 @@ properties:
> default: 1
> $ref: /schemas/types.yaml#definitions/uint8-array
>
> + moortec,ts-series:
> + description:
> + moortec,ts-series defines the temperature equation and coefficients that
> + shall be used to convert the digital output to value in milli-Celsius.
> + Supported series are 5 and 6.

No need to state constraints in free-form text descriptions.

> + minimum: 5
> + maximum: 6
> + default: 5
> + $ref: /schemas/types.yaml#definitions/uint32
> +
> required:
> - compatible
> - reg
> --
> 2.37.1
>
>

2022-09-03 20:23:19

by Farber, Eliav

[permalink] [raw]
Subject: Re: [PATCH v3 14/19] dt-bindings: hwmon: (mr75203) add "moortec, ts-series" property

On 9/2/2022 10:59 PM, Rob Herring wrote:
> On Tue, Aug 30, 2022 at 07:22:07PM +0000, Eliav Farber wrote:
>> Add optional "moortec,ts-series" property to define the temperature
>> equation and coefficients that shall be used to convert the digital
>> output to value in milli-Celsius.
>> Supported series: 5 (default) and 6.
>>
>> Series 5:
>>   T = G + H * (n / cal5 - 0.5) + J * F
>> Where: G = 60, H = 200, cal5 = 4094, J = -0.1, F = frequency clock in
>> MHz
>>
>> Series 6:
>>    T = G + H * (n / cal5 - 0.5)
>> Where: G = 57.4, H = 249.4, cal5 = 4096
>>
>> Signed-off-by: Eliav Farber <[email protected]>
>> ---
>> V3 -> V2:
>> - New patch to introduce "moortec,ts-series" property.
>>
>>  .../devicetree/bindings/hwmon/moortec,mr75203.yaml     | 10 ++++++++++
>>  1 file changed, 10 insertions(+)
>>
>> diff --git
>> a/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml
>> b/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml
>> index 4c983d8f8fe7..ec2dbe7da9c2 100644
>> --- a/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml
>> +++ b/Documentation/devicetree/bindings/hwmon/moortec,mr75203.yaml
>> @@ -64,6 +64,16 @@ properties:
>>      default: 1
>>      $ref: /schemas/types.yaml#definitions/uint8-array
>>
>> +  moortec,ts-series:
>> +    description:
>> +      moortec,ts-series defines the temperature equation and
>> coefficients that
>> +      shall be used to convert the digital output to value in
>> milli-Celsius.
>> +      Supported series are 5 and 6.
>
> No need to state constraints in free-form text descriptions.

Fixed in v4.