diff mbox series

[v2,2/3] dt-bindings: thermal: Convert loongson2 to json-schema

Message ID 20220921015605.17078-2-zhuyinbo@loongson.cn
State New
Headers show
Series None | expand

Commit Message

Yinbo Zhu Sept. 21, 2022, 1:56 a.m. UTC
Convert the loongson2 thermal binding to DT schema format using
json-schema.

Signed-off-by: Yinbo Zhu <zhuyinbo@loongson.cn>
---
Change in v2:
		1. Add description and type about the "id".	
		2. Make the filename was based on compatible.

 .../bindings/thermal/loongson2-thermal.yaml   | 52 +++++++++++++++++++
 1 file changed, 52 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml

Comments

Krzysztof Kozlowski Sept. 22, 2022, 6:25 a.m. UTC | #1
On 22/09/2022 03:39, 朱银波 wrote:
> 
> 
> 
>> -----原始邮件-----
>> 发件人: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>
>> 发送时间:2022-09-21 17:31:11 (星期三)
>> 收件人: "朱银波" <zhuyinbo@loongson.cn>
>> 抄送: "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, zhanghongchen <zhanghongchen@loongson.cn>
>> 主题: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
>>
>> On 21/09/2022 11:22, 朱银波 wrote:
>>>> -----原始邮件-----
>>>> 发件人: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>
>>>> 发送时间:2022-09-21 15:05:00 (星期三)
>>>> 收件人: "Yinbo Zhu" <zhuyinbo@loongson.cn>, "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, "Rob Herring" <robh+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
>>>> 抄送: zhanghongchen <zhanghongchen@loongson.cn>
>>>> 主题: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
>>>>
>>>> On 21/09/2022 03:56, Yinbo Zhu wrote:
>>>>> Convert the loongson2 thermal binding to DT schema format using
>>>>> json-schema.
>>>>
>>>> Incorrect subject and incorrect commit msg. There is no conversion here.
>>> Our soc architecture is the loongson2 series, so we will modify it accordingly.
>>
>> How the soc architecture is related to my comment that you do not
>> perform conversion?
> I got it, and I will aad a conversion.
>>
>>>
>>>>
>>>>>
>>>>> Signed-off-by: Yinbo Zhu <c>
>>>>> ---
>>>>> Change in v2:
>>>>> 		1. Add description and type about the "id".	
>>>>> 		2. Make the filename was based on compatible.
>>>>>
>>>>>  .../bindings/thermal/loongson2-thermal.yaml   | 52 +++++++++++++++++++
>>>>>  1 file changed, 52 insertions(+)
>>>>>  create mode 100644 Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
>>>>>
>>>>> diff --git a/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml b/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
>>>>> new file mode 100644
>>>>> index 000000000000..2994ae3a56aa
>>>>> --- /dev/null
>>>>> +++ b/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
>>>>
>>>>
>>>> No improvements here. You ignore my comments, so I am going to NAK it.
>>> I don't get your point, that dts compatible is "loongson,loongson2-thermal", so this driver file name is named
>>> loongson2-thermal that according what you said about "Filename based on compatible."
>>> If what I understand is not what you expect, please tell me how to modify it.
>>
>>
>> Filename must match the compatible, so: loongson,loongson2-thermal.yaml
> I got it, and I will add a conversion.
>>
>>>>
>>>>
>>>>> @@ -0,0 +1,52 @@
>>>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>>>> +%YAML 1.2
>>>>> +---
>>>>> +$id: http://devicetree.org/schemas/thermal/loongson2-thermal.yaml#
>>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>>>> +
>>>>> +title: Thermal sensors on loongson2 SoCs
>>>>> +
>>>>> +maintainers:
>>>>> +  - zhanghongchen <zhanghongchen@loongson.cn>
>>>>> +  - Yinbo Zhu <zhuyinbo@loongson.cn>
>>>>> +
>>>>> +properties:
>>>>> +  compatible:
>>>>> +    const: loongson,loongson2-thermal
>>>>> +
>>>>> +  reg:
>>>>> +    maxItems: 1
>>>>> +
>>>>> +  id:
>>>>> +    $ref: '//schemas/types.yaml#/definitions/uint32'
>>>>
>>>> No improvements here, so let me be specific - you need to really justify
>>>> such property or it cannot go to schema.
>>> The loongson2_thermal.c driver need parse this "id" property.
>>
>> This is not reason to add properties to DT. DT describes the hardware,
>> not driver behavior.
>>
>> Why hardware needs arbitrary, additional addressing number instead of
>> standard unit address?
> The loongson2 series soc supports up to four sensors, but the 2K1000 has only one sensor, so the ID must be 0. 
> For the 2K1000, in order to distinguish the differences between different hardware in the Loongson2 SoC series,
> the ID is added to the dts

That's not an explanation at all. All other SoCs have multiple sensors
and we do not have such "id" fields.

>>
>>>>
>>>>> +    description: |
>>>>> +      Specify the thermal sensor id.
>>>>> +    minimum: 0
>>>>> +    maximum: 3
>>>>> +
>>>>> +  interrupts:
>>>>> +    maxItems: 1
>>>>> +
>>>>> +  "#thermal-sensor-cells":
>>>>> +    const: 1
>>>>> +
>>>>> +required:
>>>>> +  - compatible
>>>>> +  - reg
>>>>> +  - id
>>>>> +  - interrupt-parent
>>>>
>>>> Why?
>>> The interrupts of our dts do not specify an interrupt parent,
>>> eg. interrupts = <7 IRQ_TYPE_LEVEL_LOW>
>>> so we need to add an interrupt parent property.
>>
>> You can add but I am asking why is it required?
> Since there is more than one interrupt controller in the Loongson2 series soc, that need to specify the interrupt 
> controller in the dts, that is, the interrupt parent.   If different interrupt parents are used in dts, the interrupt 
> numbers are different.

You describe now the overall SoC, but this is a schema for a device, not
entire SoC. I still do not see why interrupt-parent is necessary for
this device.

> This email and its attachments contain confidential information from Loongson Technology , which is intended only for the person or entity whose address is listed above. Any use of the information contained herein in any way (including, but not limited to, total or partial disclosure, reproduction or dissemination) by persons other than the intended recipient(s) is prohibited. If you receive this email in error, please notify the sender by phone or email immediately and delete it. 

You keep ignoring this one.

Best regards,
Krzysztof
Rob Herring Sept. 24, 2022, 5:42 p.m. UTC | #2
On Thu, Sep 22, 2022 at 09:39:30AM +0800, 朱银波 wrote:
> 
> 
> 
> > -----原始邮件-----
> > 发件人: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>
> > 发送时间:2022-09-21 17:31:11 (星期三)
> > 收件人: "朱银波" <zhuyinbo@loongson.cn>
> > 抄送: "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, zhanghongchen <zhanghongchen@loongson.cn>
> > 主题: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
> > 
> > On 21/09/2022 11:22, 朱银波 wrote:
> > >> -----原始邮件-----
> > >> 发件人: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>
> > >> 发送时间:2022-09-21 15:05:00 (星期三)
> > >> 收件人: "Yinbo Zhu" <zhuyinbo@loongson.cn>, "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, "Rob Herring" <robh+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
> > >> 抄送: zhanghongchen <zhanghongchen@loongson.cn>
> > >> 主题: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
> > >>
> > >> On 21/09/2022 03:56, Yinbo Zhu wrote:
> > >>> Convert the loongson2 thermal binding to DT schema format using
> > >>> json-schema.
> > >>
> > >> Incorrect subject and incorrect commit msg. There is no conversion here.
> > > Our soc architecture is the loongson2 series, so we will modify it accordingly.
> > 
> > How the soc architecture is related to my comment that you do not
> > perform conversion?
> I got it, and I will aad a conversion.
> > 
> > > 
> > >>
> > >>>
> > >>> Signed-off-by: Yinbo Zhu <c>
> > >>> ---
> > >>> Change in v2:
> > >>> 		1. Add description and type about the "id".	
> > >>> 		2. Make the filename was based on compatible.
> > >>>
> > >>>  .../bindings/thermal/loongson2-thermal.yaml   | 52 +++++++++++++++++++
> > >>>  1 file changed, 52 insertions(+)
> > >>>  create mode 100644 Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
> > >>>
> > >>> diff --git a/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml b/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
> > >>> new file mode 100644
> > >>> index 000000000000..2994ae3a56aa
> > >>> --- /dev/null
> > >>> +++ b/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
> > >>
> > >>
> > >> No improvements here. You ignore my comments, so I am going to NAK it.
> > > I don't get your point, that dts compatible is "loongson,loongson2-thermal", so this driver file name is named
> > > loongson2-thermal that according what you said about "Filename based on compatible."
> > > If what I understand is not what you expect, please tell me how to modify it.
> > 
> > 
> > Filename must match the compatible, so: loongson,loongson2-thermal.yaml
> I got it, and I will add a conversion.
> > 
> > >>
> > >>
> > >>> @@ -0,0 +1,52 @@
> > >>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > >>> +%YAML 1.2
> > >>> +---
> > >>> +$id: http://devicetree.org/schemas/thermal/loongson2-thermal.yaml#
> > >>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > >>> +
> > >>> +title: Thermal sensors on loongson2 SoCs
> > >>> +
> > >>> +maintainers:
> > >>> +  - zhanghongchen <zhanghongchen@loongson.cn>
> > >>> +  - Yinbo Zhu <zhuyinbo@loongson.cn>
> > >>> +
> > >>> +properties:
> > >>> +  compatible:
> > >>> +    const: loongson,loongson2-thermal
> > >>> +
> > >>> +  reg:
> > >>> +    maxItems: 1
> > >>> +
> > >>> +  id:
> > >>> +    $ref: '//schemas/types.yaml#/definitions/uint32'
> > >>
> > >> No improvements here, so let me be specific - you need to really justify
> > >> such property or it cannot go to schema.
> > > The loongson2_thermal.c driver need parse this "id" property.
> > 
> > This is not reason to add properties to DT. DT describes the hardware,
> > not driver behavior.
> > 
> > Why hardware needs arbitrary, additional addressing number instead of
> > standard unit address?
> The loongson2 series soc supports up to four sensors, but the 2K1000 has only one sensor, so the ID must be 0. 
> For the 2K1000, in order to distinguish the differences between different hardware in the Loongson2 SoC series,
> the ID is added to the dts

Differences in SoCs is what 'compatible' is for. If 'loongson2' is not a 
specific SoC, then your compatible string is not specific enough.

> > 
> > >>
> > >>> +    description: |
> > >>> +      Specify the thermal sensor id.
> > >>> +    minimum: 0
> > >>> +    maximum: 3
> > >>> +
> > >>> +  interrupts:
> > >>> +    maxItems: 1
> > >>> +
> > >>> +  "#thermal-sensor-cells":
> > >>> +    const: 1

If one SoC only has 1 sensor, then this could be 0. However, you don't 
have to do that, but it's another way to distinguish differences.

> > >>> +
> > >>> +required:
> > >>> +  - compatible
> > >>> +  - reg
> > >>> +  - id
> > >>> +  - interrupt-parent
> > >>
> > >> Why?
> > > The interrupts of our dts do not specify an interrupt parent,
> > > eg. interrupts = <7 IRQ_TYPE_LEVEL_LOW>
> > > so we need to add an interrupt parent property.
> > 
> > You can add but I am asking why is it required?
> Since there is more than one interrupt controller in the Loongson2 series soc, that need to specify the interrupt 
> controller in the dts, that is, the interrupt parent.   If different interrupt parents are used in dts, the interrupt 
> numbers are different.

It is perfectly valid for the 'interrupt-parent' to be in *any* parent 
node. So it is never required by any binding.

Rob
Yinbo Zhu Sept. 26, 2022, 8:38 a.m. UTC | #3
> -----原始邮件-----
> 发件人: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>
> 发送时间:2022-09-26 14:21:41 (星期一)
> 收件人: "Yinbo Zhu" <zhuyinbo@loongson.cn>, "Rob Herring" <robh@kernel.org>
> 抄送: "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, zhanghongchen <zhanghongchen@loongson.cn>, "刘佩宝" <liupeibao@loongson.cn>
> 主题: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
> 
> On 26/09/2022 06:00, Yinbo Zhu wrote:
> > 
> > 
> > 
> >> -----原始邮件-----
> >> 发件人: "Rob Herring" <robh@kernel.org>
> >> 发送时间:2022-09-25 01:42:58 (星期日)
> >> 收件人: "朱银波" <zhuyinbo@loongson.cn>
> >> 抄送: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>, "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, zhanghongchen <zhanghongchen@loongson.cn>
> >> 主题: Re: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
> >>
> >> On Thu, Sep 22, 2022 at 09:39:30AM +0800, 朱银波 wrote:
> >>>
> >>>
> >>>
> >>>> -----原始邮件-----
> >>>> 发件人: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>
> >>>> 发送时间:2022-09-21 17:31:11 (星期三)
> >>>> 收件人: "朱银波" <zhuyinbo@loongson.cn>
> >>>> 抄送: "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, zhanghongchen <zhanghongchen@loongson.cn>
> >>>> 主题: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
> >>>>
> >>>> On 21/09/2022 11:22, 朱银波 wrote:
> >>>>>> -----原始邮件-----
> >>>>>> 发件人: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>
> >>>>>> 发送时间:2022-09-21 15:05:00 (星期三)
> >>>>>> 收件人: "Yinbo Zhu" <zhuyinbo@loongson.cn>, "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, "Rob Herring" <robh+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
> >>>>>> 抄送: zhanghongchen <zhanghongchen@loongson.cn>
> >>>>>> 主题: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
> >>>>>>
> >>>>>> On 21/09/2022 03:56, Yinbo Zhu wrote:
> >>>>>>> Convert the loongson2 thermal binding to DT schema format using
> >>>>>>> json-schema.
> >>>>>>
> >>>>>> Incorrect subject and incorrect commit msg. There is no conversion here.
> >>>>> Our soc architecture is the loongson2 series, so we will modify it accordingly.
> >>>>
> >>>> How the soc architecture is related to my comment that you do not
> >>>> perform conversion?
> >>> I got it, and I will aad a conversion.
> >>>>
> >>>>>
> >>>>>>
> >>>>>>>
> >>>>>>> Signed-off-by: Yinbo Zhu <c>
> >>>>>>> ---
> >>>>>>> Change in v2:
> >>>>>>> 		1. Add description and type about the "id".	
> >>>>>>> 		2. Make the filename was based on compatible.
> >>>>>>>
> >>>>>>>  .../bindings/thermal/loongson2-thermal.yaml   | 52 +++++++++++++++++++
> >>>>>>>  1 file changed, 52 insertions(+)
> >>>>>>>  create mode 100644 Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
> >>>>>>>
> >>>>>>> diff --git a/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml b/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
> >>>>>>> new file mode 100644
> >>>>>>> index 000000000000..2994ae3a56aa
> >>>>>>> --- /dev/null
> >>>>>>> +++ b/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
> >>>>>>
> >>>>>>
> >>>>>> No improvements here. You ignore my comments, so I am going to NAK it.
> >>>>> I don't get your point, that dts compatible is "loongson,loongson2-thermal", so this driver file name is named
> >>>>> loongson2-thermal that according what you said about "Filename based on compatible."
> >>>>> If what I understand is not what you expect, please tell me how to modify it.
> >>>>
> >>>>
> >>>> Filename must match the compatible, so: loongson,loongson2-thermal.yaml
> >>> I got it, and I will add a conversion.
> >>>>
> >>>>>>
> >>>>>>
> >>>>>>> @@ -0,0 +1,52 @@
> >>>>>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> >>>>>>> +%YAML 1.2
> >>>>>>> +---
> >>>>>>> +$id: http://devicetree.org/schemas/thermal/loongson2-thermal.yaml#
> >>>>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >>>>>>> +
> >>>>>>> +title: Thermal sensors on loongson2 SoCs
> >>>>>>> +
> >>>>>>> +maintainers:
> >>>>>>> +  - zhanghongchen <zhanghongchen@loongson.cn>
> >>>>>>> +  - Yinbo Zhu <zhuyinbo@loongson.cn>
> >>>>>>> +
> >>>>>>> +properties:
> >>>>>>> +  compatible:
> >>>>>>> +    const: loongson,loongson2-thermal
> >>>>>>> +
> >>>>>>> +  reg:
> >>>>>>> +    maxItems: 1
> >>>>>>> +
> >>>>>>> +  id:
> >>>>>>> +    $ref: '//schemas/types.yaml#/definitions/uint32'
> >>>>>>
> >>>>>> No improvements here, so let me be specific - you need to really justify
> >>>>>> such property or it cannot go to schema.
> >>>>> The loongson2_thermal.c driver need parse this "id" property.
> >>>>
> >>>> This is not reason to add properties to DT. DT describes the hardware,
> >>>> not driver behavior.
> >>>>
> >>>> Why hardware needs arbitrary, additional addressing number instead of
> >>>> standard unit address?
> >>> The loongson2 series soc supports up to four sensors, but the 2K1000 has only one sensor, so the ID must be 0. 
> >>> For the 2K1000, in order to distinguish the differences between different hardware in the Loongson2 SoC series,
> >>> the ID is added to the dts
> >>
> >> Differences in SoCs is what 'compatible' is for. If 'loongson2' is not a 
> >> specific SoC, then your compatible string is not specific enough.
> > If other loongson2 platforms are different from the thermal sensor, I will add compatible
> > "loongson,loongson2-thermal-xxx", please you note.
> 
> No, this compatible looks wrong then. What is your SoC model number? You
> called loongson2 a "series", so that's not appropriate. Compatible
> should be specific.

Must it be strict here? I have a look about other platforms are similar to this one, eg.
examples:
  - | 
    tmu@f0000 {
        compatible = "fsl,qoriq-tmu";
the qoriq series soc include ls1046a/ls1043/ls1088a/...

and the compatible was "loongson,loongson2-xxx" is internal rules, we hope that code can as the rules
to upstream.

> 
> > 
> >>
> >>>>
> >>>>>>
> >>>>>>> +    description: |
> >>>>>>> +      Specify the thermal sensor id.
> >>>>>>> +    minimum: 0
> >>>>>>> +    maximum: 3
> >>>>>>> +
> >>>>>>> +  interrupts:
> >>>>>>> +    maxItems: 1
> >>>>>>> +
> >>>>>>> +  "#thermal-sensor-cells":
> >>>>>>> +    const: 1
> >>
> >> If one SoC only has 1 sensor, then this could be 0. However, you don't 
> >> have to do that, but it's another way to distinguish differences.
> > okay ,I got it.
> >>
> >>>>>>> +
> >>>>>>> +required:
> >>>>>>> +  - compatible
> >>>>>>> +  - reg
> >>>>>>> +  - id
> >>>>>>> +  - interrupt-parent
> >>>>>>
> >>>>>> Why?
> >>>>> The interrupts of our dts do not specify an interrupt parent,
> >>>>> eg. interrupts = <7 IRQ_TYPE_LEVEL_LOW>
> >>>>> so we need to add an interrupt parent property.
> >>>>
> >>>> You can add but I am asking why is it required?
> >>> Since there is more than one interrupt controller in the Loongson2 series soc, that need to specify the interrupt 
> >>> controller in the dts, that is, the interrupt parent.   If different interrupt parents are used in dts, the interrupt 
> >>> numbers are different.
> >>
> >> It is perfectly valid for the 'interrupt-parent' to be in *any* parent 
> >> node. So it is never required by any binding.
> > I don't get your meaning, You mean I can add it in the dts, but I don't need to add it in the binding file, right?
> 
> You should not add it to the binding because it is not related to the
> device itself.
okay, I got it.
> 
> >>
> >> Rob
> > 
> > 
> 
> Don't include such footers. We cannot talk over confidential emails and
> you clearly state that here.
> 
> Best regards,
> Krzysztof


本邮件及其附件含有龙芯中科的商业秘密信息,仅限于发送给上面地址中列出的个人或群组。禁止任何其他人以任何形式使用(包括但不限于全部或部分地泄露、复制或散发)本邮件及其附件中的信息。如果您错收本邮件,请您立即电话或邮件通知发件人并删除本邮件。 
This email and its attachments contain confidential information from Loongson Technology , which is intended only for the person or entity whose address is listed above. Any use of the information contained herein in any way (including, but not limited to, total or partial disclosure, reproduction or dissemination) by persons other than the intended recipient(s) is prohibited. If you receive this email in error, please notify the sender by phone or email immediately and delete it.
Yinbo Zhu Sept. 27, 2022, 6:39 a.m. UTC | #4
在 2022/9/26 下午4:38, Yinbo Zhu 写道:
>
>
>> -----原始邮件-----
>> 发件人: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>
>> 发送时间:2022-09-26 14:21:41 (星期一)
>> 收件人: "Yinbo Zhu" <zhuyinbo@loongson.cn>, "Rob Herring" <robh@kernel.org>
>> 抄送: "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, zhanghongchen <zhanghongchen@loongson.cn>, "刘佩宝" <liupeibao@loongson.cn>
>> 主题: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
>>
>> On 26/09/2022 06:00, Yinbo Zhu wrote:
>>>
>>>
>>>> -----原始邮件-----
>>>> 发件人: "Rob Herring" <robh@kernel.org>
>>>> 发送时间:2022-09-25 01:42:58 (星期日)
>>>> 收件人: "朱银波" <zhuyinbo@loongson.cn>
>>>> 抄送: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>, "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, zhanghongchen <zhanghongchen@loongson.cn>
>>>> 主题: Re: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
>>>>
>>>> On Thu, Sep 22, 2022 at 09:39:30AM +0800, 朱银波 wrote:
>>>>>
>>>>>
>>>>>> -----原始邮件-----
>>>>>> 发件人: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>
>>>>>> 发送时间:2022-09-21 17:31:11 (星期三)
>>>>>> 收件人: "朱银波" <zhuyinbo@loongson.cn>
>>>>>> 抄送: "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, zhanghongchen <zhanghongchen@loongson.cn>
>>>>>> 主题: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
>>>>>>
>>>>>> On 21/09/2022 11:22, 朱银波 wrote:
>>>>>>>> -----原始邮件-----
>>>>>>>> 发件人: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>
>>>>>>>> 发送时间:2022-09-21 15:05:00 (星期三)
>>>>>>>> 收件人: "Yinbo Zhu" <zhuyinbo@loongson.cn>, "Rafael J . Wysocki" <rafael@kernel.org>, "Daniel Lezcano" <daniel.lezcano@linaro.org>, "Amit Kucheria" <amitk@kernel.org>, "Zhang Rui" <rui.zhang@intel.com>, "Rob Herring" <robh+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
>>>>>>>> 抄送: zhanghongchen <zhanghongchen@loongson.cn>
>>>>>>>> 主题: Re: [PATCH v2 2/3] dt-bindings: thermal: Convert loongson2 to json-schema
>>>>>>>>
>>>>>>>> On 21/09/2022 03:56, Yinbo Zhu wrote:
>>>>>>>>> Convert the loongson2 thermal binding to DT schema format using
>>>>>>>>> json-schema.
>>>>>>>> Incorrect subject and incorrect commit msg. There is no conversion here.
>>>>>>> Our soc architecture is the loongson2 series, so we will modify it accordingly.
>>>>>> How the soc architecture is related to my comment that you do not
>>>>>> perform conversion?
>>>>> I got it, and I will aad a conversion.
>>>>>>>>> Signed-off-by: Yinbo Zhu <c>
>>>>>>>>> ---
>>>>>>>>> Change in v2:
>>>>>>>>> 		1. Add description and type about the "id".	
>>>>>>>>> 		2. Make the filename was based on compatible.
>>>>>>>>>
>>>>>>>>>   .../bindings/thermal/loongson2-thermal.yaml   | 52 +++++++++++++++++++
>>>>>>>>>   1 file changed, 52 insertions(+)
>>>>>>>>>   create mode 100644 Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
>>>>>>>>>
>>>>>>>>> diff --git a/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml b/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
>>>>>>>>> new file mode 100644
>>>>>>>>> index 000000000000..2994ae3a56aa
>>>>>>>>> --- /dev/null
>>>>>>>>> +++ b/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
>>>>>>>>
>>>>>>>> No improvements here. You ignore my comments, so I am going to NAK it.
>>>>>>> I don't get your point, that dts compatible is "loongson,loongson2-thermal", so this driver file name is named
>>>>>>> loongson2-thermal that according what you said about "Filename based on compatible."
>>>>>>> If what I understand is not what you expect, please tell me how to modify it.
>>>>>>
>>>>>> Filename must match the compatible, so: loongson,loongson2-thermal.yaml
>>>>> I got it, and I will add a conversion.
>>>>>>>>
>>>>>>>>> @@ -0,0 +1,52 @@
>>>>>>>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>>>>>>>> +%YAML 1.2
>>>>>>>>> +---
>>>>>>>>> +$id: http://devicetree.org/schemas/thermal/loongson2-thermal.yaml#
>>>>>>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>>>>>>>> +
>>>>>>>>> +title: Thermal sensors on loongson2 SoCs
>>>>>>>>> +
>>>>>>>>> +maintainers:
>>>>>>>>> +  - zhanghongchen <zhanghongchen@loongson.cn>
>>>>>>>>> +  - Yinbo Zhu <zhuyinbo@loongson.cn>
>>>>>>>>> +
>>>>>>>>> +properties:
>>>>>>>>> +  compatible:
>>>>>>>>> +    const: loongson,loongson2-thermal
>>>>>>>>> +
>>>>>>>>> +  reg:
>>>>>>>>> +    maxItems: 1
>>>>>>>>> +
>>>>>>>>> +  id:
>>>>>>>>> +    $ref: '//schemas/types.yaml#/definitions/uint32'
>>>>>>>> No improvements here, so let me be specific - you need to really justify
>>>>>>>> such property or it cannot go to schema.
>>>>>>> The loongson2_thermal.c driver need parse this "id" property.
>>>>>> This is not reason to add properties to DT. DT describes the hardware,
>>>>>> not driver behavior.
>>>>>>
>>>>>> Why hardware needs arbitrary, additional addressing number instead of
>>>>>> standard unit address?
>>>>> The loongson2 series soc supports up to four sensors, but the 2K1000 has only one sensor, so the ID must be 0.
>>>>> For the 2K1000, in order to distinguish the differences between different hardware in the Loongson2 SoC series,
>>>>> the ID is added to the dts
>>>> Differences in SoCs is what 'compatible' is for. If 'loongson2' is not a
>>>> specific SoC, then your compatible string is not specific enough.
>>> If other loongson2 platforms are different from the thermal sensor, I will add compatible
>>> "loongson,loongson2-thermal-xxx", please you note.
>> No, this compatible looks wrong then. What is your SoC model number? You
>> called loongson2 a "series", so that's not appropriate. Compatible
>> should be specific.
> Must it be strict here? I have a look about other platforms are similar to this one, eg.
> examples:
>    - |
>      tmu@f0000 {
>          compatible = "fsl,qoriq-tmu";
> the qoriq series soc include ls1046a/ls1043/ls1088a/...
>
> and the compatible was "loongson,loongson2-xxx" is internal rules, we hope that code can as the rules
> to upstream.
>
>>>>>>>>> +    description: |
>>>>>>>>> +      Specify the thermal sensor id.
>>>>>>>>> +    minimum: 0
>>>>>>>>> +    maximum: 3
>>>>>>>>> +
>>>>>>>>> +  interrupts:
>>>>>>>>> +    maxItems: 1
>>>>>>>>> +
>>>>>>>>> +  "#thermal-sensor-cells":
>>>>>>>>> +    const: 1
>>>> If one SoC only has 1 sensor, then this could be 0. However, you don't
>>>> have to do that, but it's another way to distinguish differences.
>>> okay ,I got it.
>>>>>>>>> +
>>>>>>>>> +required:
>>>>>>>>> +  - compatible
>>>>>>>>> +  - reg
>>>>>>>>> +  - id
>>>>>>>>> +  - interrupt-parent
>>>>>>>> Why?
>>>>>>> The interrupts of our dts do not specify an interrupt parent,
>>>>>>> eg. interrupts = <7 IRQ_TYPE_LEVEL_LOW>
>>>>>>> so we need to add an interrupt parent property.
>>>>>> You can add but I am asking why is it required?
>>>>> Since there is more than one interrupt controller in the Loongson2 series soc, that need to specify the interrupt
>>>>> controller in the dts, that is, the interrupt parent.   If different interrupt parents are used in dts, the interrupt
>>>>> numbers are different.
>>>> It is perfectly valid for the 'interrupt-parent' to be in *any* parent
>>>> node. So it is never required by any binding.
>>> I don't get your meaning, You mean I can add it in the dts, but I don't need to add it in the binding file, right?
>> You should not add it to the binding because it is not related to the
>> device itself.
> okay, I got it.
>>>> Rob
>>>
>> Don't include such footers. We cannot talk over confidential emails and
>> you clearly state that here.
>>
>> Best regards,
>> Krzysztof

I'm sorry to add this footers,  this is a problem with my website 
mailbox. Later, I use my local mailbox to send emails,

there will be no footprints in my local mailbox.


TKs,

BRs

Yinbo Zhu.

>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml b/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
new file mode 100644
index 000000000000..2994ae3a56aa
--- /dev/null
+++ b/Documentation/devicetree/bindings/thermal/loongson2-thermal.yaml
@@ -0,0 +1,52 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/thermal/loongson2-thermal.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Thermal sensors on loongson2 SoCs
+
+maintainers:
+  - zhanghongchen <zhanghongchen@loongson.cn>
+  - Yinbo Zhu <zhuyinbo@loongson.cn>
+
+properties:
+  compatible:
+    const: loongson,loongson2-thermal
+
+  reg:
+    maxItems: 1
+
+  id:
+    $ref: '//schemas/types.yaml#/definitions/uint32'
+    description: |
+      Specify the thermal sensor id.
+    minimum: 0
+    maximum: 3
+
+  interrupts:
+    maxItems: 1
+
+  "#thermal-sensor-cells":
+    const: 1
+
+required:
+  - compatible
+  - reg
+  - id
+  - interrupt-parent
+  - interrupts
+  - '#thermal-sensor-cells'
+
+additionalProperties: false
+
+examples:
+  - |
+    thermal: thermal@1fe01500 {
+        compatible = "loongson,loongson2-thermal";
+        reg = <0 0x1fe01500 0 0x30>;
+        id = <0>;
+        interrupt-parent = <&icu>;
+        interrupts = <7>;
+        #thermal-sensor-cells = <1>;
+    };