Re: [PATCH 1/2] dt-bindings: hwmon: Add Baikal-T1 PVT sensor bindings

From: Rob Herring
Date: Thu Mar 12 2020 - 18:13:08 EST


On Fri, Mar 06, 2020 at 04:26:03PM +0300, Sergey.Semin@xxxxxxxxxxxxxxxxxxxx wrote:
> From: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx>
>
> Baikal-T1 SoC is equipped with an embedded process, voltage and
> temperature sensor to monitor the chip internal environment like
> temperature, supply voltage and transistors performance.
>
> This bindings describes the external Baikal-T1 PVT control interfaces
> like MMIO registers space, interrupt request number and clocks source.
> These are then used by the corresponding hwmon device driver to
> implement the sysfs files-based access to the sensors functionality.
>
> Signed-off-by: Maxim Kaurkin <maxim.kaurkin@xxxxxxxxxxxxxxxxxxxx>
> Signed-off-by: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx>
> Signed-off-by: Alexey Malahov <Alexey.Malahov@xxxxxxxxxxxxxxxxxxxx>
> Cc: Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx>
> Cc: Paul Burton <paulburton@xxxxxxxxxx>
> Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
> ---
> .../devicetree/bindings/hwmon/be,bt1-pvt.yaml | 100 ++++++++++++++++++
> 1 file changed, 100 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/hwmon/be,bt1-pvt.yaml
>
> diff --git a/Documentation/devicetree/bindings/hwmon/be,bt1-pvt.yaml b/Documentation/devicetree/bindings/hwmon/be,bt1-pvt.yaml
> new file mode 100644
> index 000000000000..d575d124d538
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/hwmon/be,bt1-pvt.yaml
> @@ -0,0 +1,100 @@
> +# SPDX-License-Identifier: GPL-2.0

Dual license

> +#
> +# Copyright (C) 2019 BAIKAL ELECTRONICS, JSC
> +#
> +# Baikal-T1 Process, Voltage, Temperature Sensor Device Tree Bindings.

drop

> +#
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/hwmon/be,bt1-pvt.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Baikal-T1 PVT Sensor Device Tree Bindings
> +
> +maintainers:
> + - Serge Semin <fancer.lancer@xxxxxxxxx>
> +
> +description: |
> + Baikal-T1 SoC provides an embedded process, voltage and temperature
> + sensor to monitor an internal SoC environment (chip temperature, supply
> + voltage and process monitor) and on time detect critical situations,
> + which may cause the system instability and even damages. The IP-block
> + is based on the Analog Bits PVT sensor, but is equipped with a dedicated
> + control wrapper, which provides a MMIO registers-based access to the
> + sensor core functionality (APB3-bus based) and exposes an additional
> + functions like thresholds/data ready interrupts, its status and masks,
> + measurements timeout. Its internal structure is depicted on the next
> + diagram:
> + Analog Bits core Bakal-T1 PVT control block
> + +--------------------+ +------------------------+
> + | Temperature sensor |-+ +------| Sensors control |
> + |--------------------| |<---En---| |------------------------|
> + | Voltage sensor |-|<--Mode--| +--->| Sampled data |
> + |--------------------| |<--Trim--+ | |------------------------|
> + | Low-Vt sensor |-| | +--| Thresholds comparator |
> + |--------------------| |---Data----| | |------------------------|
> + | High-Vt sensor |-| | +->| Interrupts status |
> + |--------------------| |--Valid--+-+ | |------------------------|
> + | Standard-Vt sensor |-+ +---+--| Interrupts mask |
> + +--------------------+ |------------------------|
> + ^ | Interrupts timeout |
> + | +------------------------+
> + | ^ ^
> + Rclk-----+----------------------------------------+ |
> + APB3-------------------------------------------------+
> +
> + This bindings describes the external Baikal-T1 PVT control interfaces
> + like MMIO registers space, interrupt request number and clocks source.
> + These are then used by the corresponding hwmon device driver to
> + implement the sysfs files-based access to the sensors functionality.
> +
> +properties:
> + compatible:
> + const: be,bt1-pvt
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + clocks:
> + items:
> + - description: PVT reference clock.
> + - description: APB3 interface clock.
> +
> + clock-names:
> + items:
> + - const: ref
> + - const: pclk
> +
> + "#thermal-sensor-cells":
> + description: Baikal-T1 can be referenced as the CPU thermal-sensor.
> + const: 0
> +
> +additionalProperties: false
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - clocks
> + - clock-names
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/mips-gic.h>
> + #include <dt-bindings/clock/bt1-ccu.h>
> +
> + pvt: pvt@1F200000 {

lowercase hex

> + compatible = "be,bt1-pvt";
> + reg = <0x1F200000 0x1000>;
> + #thermal-sensor-cells = <0>;
> +
> + interrupts = <GIC_SHARED 31 IRQ_TYPE_LEVEL_HIGH>;
> +
> + clocks = <&ccu_sys CCU_SYS_PVT_CLK>,
> + <&ccu_sys CCU_SYS_APB_CLK>;
> + clock-names = "ref", "pclk";
> + };
> +...
> --
> 2.25.1
>