On 2020/9/29 21:52, Rob Herring wrote: > On Tue, Sep 29, 2020 at 8:25 AM Leizhen (ThunderTown) > <thunder.leizhen@xxxxxxxxxx> wrote: >> >> >> >> On 2020/9/29 17:21, Leizhen (ThunderTown) wrote: >>> >>> >>> On 2020/9/29 11:18, Leizhen (ThunderTown) wrote: >>>> >>>> >>>> On 2020/9/29 3:14, Rob Herring wrote: >>>>> On Mon, Sep 28, 2020 at 11:13:16PM +0800, Zhen Lei wrote: >>>>>> Convert the Hisilicon Hi3798CV200 Peripheral Controller binding to DT >>>>>> schema format using json-schema. >>>>>> >>>>>> Signed-off-by: Zhen Lei <thunder.leizhen@xxxxxxxxxx> >>>>>> --- >>>>>> .../controller/hisilicon,hi3798cv200-perictrl.txt | 21 ---------- >>>>>> .../controller/hisilicon,hi3798cv200-perictrl.yaml | 45 ++++++++++++++++++++++ >>>>>> 2 files changed, 45 insertions(+), 21 deletions(-) >>>>>> delete mode 100644 Documentation/devicetree/bindings/arm/hisilicon/controller/hisilicon,hi3798cv200-perictrl.txt >>>>>> create mode 100644 Documentation/devicetree/bindings/arm/hisilicon/controller/hisilicon,hi3798cv200-perictrl.yaml >>>>>> >>>>>> diff --git a/Documentation/devicetree/bindings/arm/hisilicon/controller/hisilicon,hi3798cv200-perictrl.txt b/Documentation/devicetree/bindings/arm/hisilicon/controller/hisilicon,hi3798cv200-perictrl.txt >>>>>> deleted file mode 100644 >>>>>> index 0d5282f4670658d..000000000000000 >>>>>> --- a/Documentation/devicetree/bindings/arm/hisilicon/controller/hisilicon,hi3798cv200-perictrl.txt >>>>>> +++ /dev/null >>>>>> @@ -1,21 +0,0 @@ >>>>>> -Hisilicon Hi3798CV200 Peripheral Controller >>>>>> - >>>>>> -The Hi3798CV200 Peripheral Controller controls peripherals, queries >>>>>> -their status, and configures some functions of peripherals. >>>>>> - >>>>>> -Required properties: >>>>>> -- compatible: Should contain "hisilicon,hi3798cv200-perictrl", "syscon" >>>>>> - and "simple-mfd". >>>>>> -- reg: Register address and size of Peripheral Controller. >>>>>> -- #address-cells: Should be 1. >>>>>> -- #size-cells: Should be 1. >>>>>> - >>>>>> -Examples: >>>>>> - >>>>>> - perictrl: peripheral-controller@8a20000 { >>>>>> - compatible = "hisilicon,hi3798cv200-perictrl", "syscon", >>>>>> - "simple-mfd"; >>>>>> - reg = <0x8a20000 0x1000>; >>>>>> - #address-cells = <1>; >>>>>> - #size-cells = <1>; >>>>>> - }; >>>>>> diff --git a/Documentation/devicetree/bindings/arm/hisilicon/controller/hisilicon,hi3798cv200-perictrl.yaml b/Documentation/devicetree/bindings/arm/hisilicon/controller/hisilicon,hi3798cv200-perictrl.yaml >>>>>> new file mode 100644 >>>>>> index 000000000000000..4e547017e368393 >>>>>> --- /dev/null >>>>>> +++ b/Documentation/devicetree/bindings/arm/hisilicon/controller/hisilicon,hi3798cv200-perictrl.yaml >>>>>> @@ -0,0 +1,45 @@ >>>>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >>>>>> +%YAML 1.2 >>>>>> +--- >>>>>> +$id: http://devicetree.org/schemas/arm/hisilicon/controller/hisilicon,hi3798cv200-perictrl.yaml# >>>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>>>>> + >>>>>> +title: Hisilicon Hi3798CV200 Peripheral Controller >>>>>> + >>>>>> +maintainers: >>>>>> + - Wei Xu <xuwei5@xxxxxxxxxxxxx> >>>>>> + >>>>>> +description: | >>>>>> + The Hi3798CV200 Peripheral Controller controls peripherals, queries >>>>>> + their status, and configures some functions of peripherals. >>>>>> + >>>>>> +properties: >>>>>> + compatible: >>>>>> + items: >>>>>> + - const: hisilicon,hi3798cv200-perictrl >>>>>> + - const: syscon >>>>>> + - const: simple-mfd >>>>>> + >>>>>> + reg: >>>>>> + description: Register address and size >>>>>> + maxItems: 1 >>>>>> + >>>>>> + '#address-cells': >>>>>> + const: 1 >>>>>> + >>>>>> + '#size-cells': >>>>>> + const: 1 >>>>> >>>>> That implies child nodes. You need some sort of schema for them. >>>> >>>> OK, I will drop #address-cells and #size-cells in this binding. >>> >>> I think I misunderstood. I shoud describe child nodes here. >>> >>> It's National Day the day after tomorrow, total eight days off. It's so hurry. >>> I'll give up this patch! And do it for v5.11 >> >> I searched the dtsi, these two properties are required by property "ranges", so >> I will add it. > > 'ranges' also implies there are child nodes as does 'simple-mfd', so > whatever child nodes you have are missing and need to be documented > too. Also, 'ranges' implies the child nodes are memory-mapped, but > 'simple-mfd' implies they are not. 'simple-bus' is what should be used > for memory-mapped children. Sorry, The reason for the jet lag, I went straight home after I sent the version 5 of these patches last night after 10 p.m. I saw you had applied the new one. Thanks for the information you showed me here. > > Rob > > . >