Re: [PATCH 1/2] dt-bindings: hwmon: Add Baikal-T1 PVT sensor bindings
From: Sergey Semin
Date: Fri Mar 13 2020 - 17:37:39 EST
On Thu, Mar 12, 2020 at 05:13:04PM -0500, Rob Herring wrote:
> 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
>
Ok. I'll add BSD-2-Clause here.
> > +#
> > +# Copyright (C) 2019 BAIKAL ELECTRONICS, JSC
> > +#
> > +# Baikal-T1 Process, Voltage, Temperature Sensor Device Tree Bindings.
>
> drop
>
Ok.
> > +#
> > +%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
>
Ok. I'll also remove the bt1-ccu.h inclusion here, since that header
doesn't exist in the kernel source tree at the moment.
Regards,
-Sergey
> > + 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
> >