# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/hwmon/moortec,mr75203.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Moortec Semiconductor MR75203 PVT Controller

maintainers:
  - Rahul Tanwar <rtanwar@maxlinear.com>

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 (mr75203) 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.

  Some of the units have number of series, each series can have slightly
  different characteristics.

  The mr75203 binding describes configuration for the controller unit, but also
  for some of the analog IPs.

properties:
  compatible:
    const: moortec,mr75203

  reg:
    items:
      - description: PVT common registers
      - description: PVT temperature sensor registers
      - description: PVT process detector registers
      - description: PVT voltage monitor registers

  reg-names:
    items:
      - const: common
      - const: ts
      - const: pd
      - const: vm

  intel,vm-map:
    description:
      PVT controller has 5 VM (voltage monitor) sensors.
      vm-map defines CPU core to VM instance mapping. A
      value of 0xff means that VM sensor is unused.
    $ref: /schemas/types.yaml#/definitions/uint8-array
    maxItems: 5

  clocks:
    maxItems: 1

  resets:
    maxItems: 1

  "#thermal-sensor-cells":
    const: 1

  moortec,vm-active-channels:
    description:
      Defines the number of channels per VM that are actually used and are
      connected to some input source.
      Maximum number of items - number of VMs.
      Maximum value of each item - number of channels.
      Minimum value of each item - 0 (which means entire VM sensor is not used).
    $ref: /schemas/types.yaml#/definitions/uint8-array

  moortec,vm-pre-scaler-x2:
    description:
      Defines the channels that use a mr76006 pre-scaler to divide the input
      source by 2.
      The pre-scaler is used for input sources that exceed the VM input range.
      The driver uses this information to present to the user with the actual
      value of the voltage source.
      For channels that are not listed, no pre-scaler is assumed.
      Maximum number of items - total number of channels in all VMs.
      Each channel should not appear more than once.
    $ref: /schemas/types.yaml#/definitions/uint8-array

  moortec,ts-series:
    description:
      Definition of the temperature equation and coefficients that shall be
      used to convert the digital output to value in milli-Celsius.
    minimum: 5
    maximum: 6
    default: 5
    $ref: /schemas/types.yaml#/definitions/uint32

  moortec,ts-coeff-g:
    description:
      G coefficient for temperature equation.
      Default for series 5 = 60000
      Default for series 6 = 57400
    multipleOf: 100
    minimum: 1000
    $ref: /schemas/types.yaml#/definitions/uint32

  moortec,ts-coeff-h:
    description:
      H coefficient for temperature equation.
      Default for series 5 = 200000
      Default for series 6 = 249400
    multipleOf: 100
    minimum: 1000
    $ref: /schemas/types.yaml#/definitions/uint32

  moortec,ts-coeff-cal5:
    description:
      cal5 coefficient for temperature equation.
      Default for series 5 = 4094
      Default for series 6 = 4096
    minimum: 1
    $ref: /schemas/types.yaml#/definitions/uint32

  moortec,ts-coeff-j:
    description:
      J coefficient for temperature equation.
      Default for series 5 = -100
      Default for series 6 = 0
    multipleOf: 100
    maximum: 0
    $ref: /schemas/types.yaml#/definitions/int32

required:
  - compatible
  - reg
  - reg-names
  - clocks
  - "#thermal-sensor-cells"

additionalProperties: false

examples:
  - |
    pvt: pvt@e0680000 {
        compatible = "moortec,mr75203";
        reg = <0xe0680000 0x80>,
              <0xe0680080 0x180>,
              <0xe0680200 0x200>,
              <0xe0680400 0xc00>;
        reg-names = "common", "ts", "pd", "vm";
        intel,vm-map = [03 01 04 ff ff];
        clocks = <&osc0>;
        resets = <&rcu0 0x40 7>;
        moortec,vm-active-channels = /bits/ 8 <0x10 0x05>;
        moortec,vm-pre-scaler-x2 = /bits/ 8 <5 6 20>;
        moortec,ts-coeff-g = <61400>;
        moortec,ts-coeff-h = <253700>;
        #thermal-sensor-cells = <1>;
    };
