RE: [PATCH] dt-bindings: thermal: Convert i.MX8MM to json-schema

From: Anson Huang
Date: Thu Apr 09 2020 - 10:22:55 EST


Hi, Amit

> Subject: Re: [PATCH] dt-bindings: thermal: Convert i.MX8MM to json-schema
>
> Hi Anson,
>
> On Thu, Apr 9, 2020 at 8:56 AM Anson Huang <Anson.Huang@xxxxxxx>
> wrote:
> >
> > Convert the i.MX8MM thermal binding to DT schema format using
> > json-schema
>
> Would it be possible to have a single yaml file for all i.MX thermal sensors by
> playing with required and optional properties ?

i.MX SoCs have many different thermal sensor IP and hence different thermal driver
is used, and different i.MX thermal drivers have different DT bindings, so is it good to
put all of them into single yaml file? For example, imx_thermal.c is for i.MX6/7 SoCs which
do NOT use of_thermal framework, imx8mm_thermal.c is for i.MX8MM/i.MX8MP which
use of_thermal framework.

If putting all of them into 1 yaml file, it will be almost like just putting 2 files together, I
Personally don't think it is a good idea.

>
> > Signed-off-by: Anson Huang <Anson.Huang@xxxxxxx>
> > ---
> > .../devicetree/bindings/thermal/imx8mm-thermal.txt | 15 ------
> > .../bindings/thermal/imx8mm-thermal.yaml | 53
> ++++++++++++++++++++++
> > 2 files changed, 53 insertions(+), 15 deletions(-) delete mode
> > 100644 Documentation/devicetree/bindings/thermal/imx8mm-thermal.txt
> > create mode 100644
> > Documentation/devicetree/bindings/thermal/imx8mm-thermal.yaml
> >
> > diff --git
> > a/Documentation/devicetree/bindings/thermal/imx8mm-thermal.txt
> > b/Documentation/devicetree/bindings/thermal/imx8mm-thermal.txt
> > deleted file mode 100644
> > index 3629d3c..0000000
> > --- a/Documentation/devicetree/bindings/thermal/imx8mm-thermal.txt
> > +++ /dev/null
> > @@ -1,15 +0,0 @@
> > -* Thermal Monitoring Unit (TMU) on Freescale i.MX8MM SoC
> > -
> > -Required properties:
> > -- compatible : Must be "fsl,imx8mm-tmu" or "fsl,imx8mp-tmu".
> > -- reg : Address range of TMU registers.
> > -- clocks : TMU's clock source.
> > -- #thermal-sensor-cells : Should be 0 or 1. See ./thermal.txt for a description.
> > -
> > -Example:
> > -tmu: tmu@30260000 {
> > - compatible = "fsl,imx8mm-tmu";
> > - reg = <0x30260000 0x10000>;
> > - clocks = <&clk IMX8MM_CLK_TMU_ROOT>;
> > - #thermal-sensor-cells = <0>;
> > -};
> > diff --git
> > a/Documentation/devicetree/bindings/thermal/imx8mm-thermal.yaml
> > b/Documentation/devicetree/bindings/thermal/imx8mm-thermal.yaml
> > new file mode 100644
> > index 0000000..53a42b3
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/thermal/imx8mm-thermal.yaml
> > @@ -0,0 +1,53 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +%YAML 1.2
> > +---
> > +$id:
> > +https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdevi
> >
> +cetree.org%2Fschemas%2Fthermal%2Fimx8mm-thermal.yaml%23&amp;data
> =02%7
> >
> +C01%7CAnson.Huang%40nxp.com%7Cb190e049130e49e0750d08d7dc8e48
> a3%7C686e
> >
> +a1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637220375963888457&am
> p;sdata=s
> >
> +S8%2FR2j%2BT1UmDqXFIPPzPgWs26lMiwW3saTq4qlZAUs%3D&amp;reserve
> d=0
> > +$schema:
> > +https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdevi
> >
> +cetree.org%2Fmeta-schemas%2Fcore.yaml%23&amp;data=02%7C01%7CAns
> on.Hua
> >
> +ng%40nxp.com%7Cb190e049130e49e0750d08d7dc8e48a3%7C686ea1d3bc
> 2b4c6fa92
> >
> +cd99c5c301635%7C0%7C0%7C637220375963898454&amp;sdata=tXIh9d%
> 2BszcExH0
> > +7ic7s%2BqJyUdbE0aHM3tH%2BwkWgnbhQ%3D&amp;reserved=0
> > +
> > +title: NXP i.MX8M Mini Thermal Binding
> > +
> > +maintainers:
> > + - Anson Huang <Anson.Huang@xxxxxxx>
> > +
> > +properties:
> > + compatible:
> > + oneOf:
> > + - items:
> > + - enum:
> > + - fsl,imx8mm-tmu
> > + - fsl,imx8mp-tmu
> > + reg:
> > + description: |
> > + Address range of TMU registers.
> > + maxItems: 1
> > + clocks:
> > + description: |
> > + TMU's clock source.
> > + maxItems: 1
> > +
> > + # See ./thermal.txt for details
>
> Don't point to thermal.txt anymore. thermal.txt will be replaced by
> thermal-*.yaml files at some point soon.

OK, will remove it.

>
> > + "#thermal-sensor-cells":
> > + enum:
> > + - 0
>
> Don't you have multiple sensors connected to this controller? In that case, 0
> won't be a valid value.

imx8mm_thermal driver is for i.MX8MM and i.MX8MP, i.MX8MM ONLY has 1 sensor,
while i.MX8MP has 2 sensors, that is why I put both 0 and 1 here.

Thanks,
Anson