diff mbox series

[v6,1/4] dt-bindings: nvmem: convert mtk-efuse.txt to YAML schema

Message ID 20220617093132.22578-1-chunfeng.yun@mediatek.com (mailing list archive)
State New, archived
Headers show
Series [v6,1/4] dt-bindings: nvmem: convert mtk-efuse.txt to YAML schema | expand

Commit Message

Chunfeng Yun (云春峰) June 17, 2022, 9:31 a.m. UTC
Convert mtk-efuse.txt to YAML schema mediatek,efuse.yaml

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
---
v6: no changes, based on kernel 5.19-rc1

v5: 
sync with the series:
https://patchwork.kernel.org/project/linux-mediatek/list/?series=640196
   1. change title suggested by Krzysztof;
   2. No need drop 'reviewed-by Rob' suggested by Krzysztof
   3. add maintainer Lala who maintain efuse driver now;

v4: fix duplicated unit-address in example;
    drop reviewed-by Rob, due to changes;

v3: add reviewed-by Rob

v2:
   1. remove description of subnodes which is covered by nvmem.yaml
suggested by Rob
   2. change the example which is commoner than mt8173's
---
 .../bindings/nvmem/mediatek,efuse.yaml        | 87 +++++++++++++++++++
 .../devicetree/bindings/nvmem/mtk-efuse.txt   | 43 ---------
 2 files changed, 87 insertions(+), 43 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
 delete mode 100644 Documentation/devicetree/bindings/nvmem/mtk-efuse.txt

Comments

Srinivas Kandagatla June 17, 2022, 7:41 p.m. UTC | #1
On 17/06/2022 02:31, Chunfeng Yun wrote:
> Convert mtk-efuse.txt to YAML schema mediatek,efuse.yaml
> 
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Reviewed-by: Rob Herring <robh@kernel.org>
> Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
> ---

Applied 1/4 and 2/4, dts patches need to go via SoC maintainer.


thanks,
-srini


> v6: no changes, based on kernel 5.19-rc1
> 
> v5:
> sync with the series:
> https://patchwork.kernel.org/project/linux-mediatek/list/?series=640196
>     1. change title suggested by Krzysztof;
>     2. No need drop 'reviewed-by Rob' suggested by Krzysztof
>     3. add maintainer Lala who maintain efuse driver now;
> 
> v4: fix duplicated unit-address in example;
>      drop reviewed-by Rob, due to changes;
> 
> v3: add reviewed-by Rob
> 
> v2:
>     1. remove description of subnodes which is covered by nvmem.yaml
> suggested by Rob
>     2. change the example which is commoner than mt8173's
> ---
>   .../bindings/nvmem/mediatek,efuse.yaml        | 87 +++++++++++++++++++
>   .../devicetree/bindings/nvmem/mtk-efuse.txt   | 43 ---------
>   2 files changed, 87 insertions(+), 43 deletions(-)
>   create mode 100644 Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
>   delete mode 100644 Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
> 
> diff --git a/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
> new file mode 100644
> index 000000000000..f6e01ddb7499
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
> @@ -0,0 +1,87 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/nvmem/mediatek,efuse.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: MediaTek efuse
> +
> +description: |
> +  MediaTek's efuse is used for storing calibration data, it can be accessed
> +  on ARM devices usiong I/O mapped memory.
> +
> +maintainers:
> +  - Andrew-CT Chen <andrew-ct.chen@mediatek.com>
> +  - Lala Lin <lala.lin@mediatek.com>
> +
> +allOf:
> +  - $ref: "nvmem.yaml#"
> +
> +properties:
> +  $nodename:
> +    pattern: "^efuse@[0-9a-f]+$"
> +
> +  compatible:
> +    oneOf:
> +      - items:
> +          - enum:
> +              - mediatek,mt7622-efuse
> +              - mediatek,mt7623-efuse
> +              - mediatek,mt8173-efuse
> +              - mediatek,mt8192-efuse
> +              - mediatek,mt8195-efuse
> +              - mediatek,mt8516-efuse
> +          - const: mediatek,efuse
> +      - const: mediatek,mt8173-efuse
> +        deprecated: true
> +
> +  reg:
> +    maxItems: 1
> +
> +required:
> +  - compatible
> +  - reg
> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +    efuse@11c10000 {
> +        compatible = "mediatek,mt8195-efuse", "mediatek,efuse";
> +        reg = <0x11c10000 0x1000>;
> +        #address-cells = <1>;
> +        #size-cells = <1>;
> +
> +        u3_tx_imp_p0: usb3-tx-imp@184,1 {
> +            reg = <0x184 0x1>;
> +            bits = <0 5>;
> +        };
> +        u3_rx_imp_p0: usb3-rx-imp@184,2 {
> +            reg = <0x184 0x2>;
> +            bits = <5 5>;
> +        };
> +        u3_intr_p0: usb3-intr@185 {
> +            reg = <0x185 0x1>;
> +            bits = <2 6>;
> +        };
> +        comb_tx_imp_p1: usb3-tx-imp@186,1 {
> +            reg = <0x186 0x1>;
> +            bits = <0 5>;
> +        };
> +        comb_rx_imp_p1: usb3-rx-imp@186,2 {
> +            reg = <0x186 0x2>;
> +            bits = <5 5>;
> +        };
> +        comb_intr_p1: usb3-intr@187 {
> +            reg = <0x187 0x1>;
> +            bits = <2 6>;
> +        };
> +        u2_intr_p0: usb2-intr-p0@188,1 {
> +            reg = <0x188 0x1>;
> +            bits = <0 5>;
> +        };
> +        u2_intr_p1: usb2-intr-p1@188,2 {
> +            reg = <0x188 0x2>;
> +            bits = <5 5>;
> +        };
> +    };
> diff --git a/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt b/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
> deleted file mode 100644
> index 39d529599444..000000000000
> --- a/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
> +++ /dev/null
> @@ -1,43 +0,0 @@
> -= Mediatek MTK-EFUSE device tree bindings =
> -
> -This binding is intended to represent MTK-EFUSE which is found in most Mediatek SOCs.
> -
> -Required properties:
> -- compatible: should be
> -	      "mediatek,mt7622-efuse", "mediatek,efuse": for MT7622
> -	      "mediatek,mt7623-efuse", "mediatek,efuse": for MT7623
> -	      "mediatek,mt8173-efuse" or "mediatek,efuse": for MT8173
> -	      "mediatek,mt8192-efuse", "mediatek,efuse": for MT8192
> -	      "mediatek,mt8195-efuse", "mediatek,efuse": for MT8195
> -	      "mediatek,mt8516-efuse", "mediatek,efuse": for MT8516
> -- reg: Should contain registers location and length
> -- bits: contain the bits range by offset and size
> -
> -= Data cells =
> -Are child nodes of MTK-EFUSE, bindings of which as described in
> -bindings/nvmem/nvmem.txt
> -
> -Example:
> -
> -	efuse: efuse@10206000 {
> -		compatible = "mediatek,mt8173-efuse";
> -		reg	   = <0 0x10206000 0 0x1000>;
> -		#address-cells = <1>;
> -		#size-cells = <1>;
> -
> -		/* Data cells */
> -		thermal_calibration: calib@528 {
> -			reg = <0x528 0xc>;
> -		};
> -	};
> -
> -= Data consumers =
> -Are device nodes which consume nvmem data cells.
> -
> -For example:
> -
> -	thermal {
> -		...
> -		nvmem-cells = <&thermal_calibration>;
> -		nvmem-cell-names = "calibration";
> -	};
Chunfeng Yun (云春峰) June 20, 2022, 7:11 a.m. UTC | #2
Hi Matthias,

On Fri, 2022-06-17 at 12:41 -0700, Srinivas Kandagatla wrote:
> 
> On 17/06/2022 02:31, Chunfeng Yun wrote:
> > Convert mtk-efuse.txt to YAML schema mediatek,efuse.yaml
> > 
> > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> > Reviewed-by: Rob Herring <robh@kernel.org>
> > Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
> > ---
> 
> Applied 1/4 and 2/4, dts patches need to go via SoC maintainer.
Could you please help to pick up 3/4, 4/4?

thanks

> 
> 
> thanks,
> -srini
> 
> 
> > v6: no changes, based on kernel 5.19-rc1
> > 
> > v5:
> > sync with the series:
> > 
https://patchwork.kernel.org/project/linux-mediatek/list/?series=640196
> >     1. change title suggested by Krzysztof;
> >     2. No need drop 'reviewed-by Rob' suggested by Krzysztof
> >     3. add maintainer Lala who maintain efuse driver now;
> > 
> > v4: fix duplicated unit-address in example;
> >      drop reviewed-by Rob, due to changes;
> > 
> > v3: add reviewed-by Rob
> > 
> > v2:
> >     1. remove description of subnodes which is covered by
> > nvmem.yaml
> > suggested by Rob
> >     2. change the example which is commoner than mt8173's
> > ---
> >   .../bindings/nvmem/mediatek,efuse.yaml        | 87
> > +++++++++++++++++++
> >   .../devicetree/bindings/nvmem/mtk-efuse.txt   | 43 ---------
> >   2 files changed, 87 insertions(+), 43 deletions(-)
> >   create mode 100644
> > Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
> >   delete mode 100644 Documentation/devicetree/bindings/nvmem/mtk-
> > efuse.txt
> > 
> > diff --git
> > a/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
> > b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
> > new file mode 100644
> > index 000000000000..f6e01ddb7499
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
> > @@ -0,0 +1,87 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/nvmem/mediatek,efuse.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: MediaTek efuse
> > +
> > +description: |
> > +  MediaTek's efuse is used for storing calibration data, it can be
> > accessed
> > +  on ARM devices usiong I/O mapped memory.
> > +
> > +maintainers:
> > +  - Andrew-CT Chen <andrew-ct.chen@mediatek.com>
> > +  - Lala Lin <lala.lin@mediatek.com>
> > +
> > +allOf:
> > +  - $ref: "nvmem.yaml#"
> > +
> > +properties:
> > +  $nodename:
> > +    pattern: "^efuse@[0-9a-f]+$"
> > +
> > +  compatible:
> > +    oneOf:
> > +      - items:
> > +          - enum:
> > +              - mediatek,mt7622-efuse
> > +              - mediatek,mt7623-efuse
> > +              - mediatek,mt8173-efuse
> > +              - mediatek,mt8192-efuse
> > +              - mediatek,mt8195-efuse
> > +              - mediatek,mt8516-efuse
> > +          - const: mediatek,efuse
> > +      - const: mediatek,mt8173-efuse
> > +        deprecated: true
> > +
> > +  reg:
> > +    maxItems: 1
> > +
> > +required:
> > +  - compatible
> > +  - reg
> > +
> > +unevaluatedProperties: false
> > +
> > +examples:
> > +  - |
> > +    efuse@11c10000 {
> > +        compatible = "mediatek,mt8195-efuse", "mediatek,efuse";
> > +        reg = <0x11c10000 0x1000>;
> > +        #address-cells = <1>;
> > +        #size-cells = <1>;
> > +
> > +        u3_tx_imp_p0: usb3-tx-imp@184,1 {
> > +            reg = <0x184 0x1>;
> > +            bits = <0 5>;
> > +        };
> > +        u3_rx_imp_p0: usb3-rx-imp@184,2 {
> > +            reg = <0x184 0x2>;
> > +            bits = <5 5>;
> > +        };
> > +        u3_intr_p0: usb3-intr@185 {
> > +            reg = <0x185 0x1>;
> > +            bits = <2 6>;
> > +        };
> > +        comb_tx_imp_p1: usb3-tx-imp@186,1 {
> > +            reg = <0x186 0x1>;
> > +            bits = <0 5>;
> > +        };
> > +        comb_rx_imp_p1: usb3-rx-imp@186,2 {
> > +            reg = <0x186 0x2>;
> > +            bits = <5 5>;
> > +        };
> > +        comb_intr_p1: usb3-intr@187 {
> > +            reg = <0x187 0x1>;
> > +            bits = <2 6>;
> > +        };
> > +        u2_intr_p0: usb2-intr-p0@188,1 {
> > +            reg = <0x188 0x1>;
> > +            bits = <0 5>;
> > +        };
> > +        u2_intr_p1: usb2-intr-p1@188,2 {
> > +            reg = <0x188 0x2>;
> > +            bits = <5 5>;
> > +        };
> > +    };
> > diff --git a/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
> > b/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
> > deleted file mode 100644
> > index 39d529599444..000000000000
> > --- a/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
> > +++ /dev/null
> > @@ -1,43 +0,0 @@
> > -= Mediatek MTK-EFUSE device tree bindings =
> > -
> > -This binding is intended to represent MTK-EFUSE which is found in
> > most Mediatek SOCs.
> > -
> > -Required properties:
> > -- compatible: should be
> > -	      "mediatek,mt7622-efuse", "mediatek,efuse": for MT7622
> > -	      "mediatek,mt7623-efuse", "mediatek,efuse": for MT7623
> > -	      "mediatek,mt8173-efuse" or "mediatek,efuse": for MT8173
> > -	      "mediatek,mt8192-efuse", "mediatek,efuse": for MT8192
> > -	      "mediatek,mt8195-efuse", "mediatek,efuse": for MT8195
> > -	      "mediatek,mt8516-efuse", "mediatek,efuse": for MT8516
> > -- reg: Should contain registers location and length
> > -- bits: contain the bits range by offset and size
> > -
> > -= Data cells =
> > -Are child nodes of MTK-EFUSE, bindings of which as described in
> > -bindings/nvmem/nvmem.txt
> > -
> > -Example:
> > -
> > -	efuse: efuse@10206000 {
> > -		compatible = "mediatek,mt8173-efuse";
> > -		reg	   = <0 0x10206000 0 0x1000>;
> > -		#address-cells = <1>;
> > -		#size-cells = <1>;
> > -
> > -		/* Data cells */
> > -		thermal_calibration: calib@528 {
> > -			reg = <0x528 0xc>;
> > -		};
> > -	};
> > -
> > -= Data consumers =
> > -Are device nodes which consume nvmem data cells.
> > -
> > -For example:
> > -
> > -	thermal {
> > -		...
> > -		nvmem-cells = <&thermal_calibration>;
> > -		nvmem-cell-names = "calibration";
> > -	};
Matthias Brugger June 22, 2022, 2:10 p.m. UTC | #3
On 20/06/2022 09:11, Chunfeng Yun wrote:
> Hi Matthias,
> 
> On Fri, 2022-06-17 at 12:41 -0700, Srinivas Kandagatla wrote:
>>
>> On 17/06/2022 02:31, Chunfeng Yun wrote:
>>> Convert mtk-efuse.txt to YAML schema mediatek,efuse.yaml
>>>
>>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>>> Reviewed-by: Rob Herring <robh@kernel.org>
>>> Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
>>> ---
>>
>> Applied 1/4 and 2/4, dts patches need to go via SoC maintainer.
> Could you please help to pick up 3/4, 4/4?

Applied, thanks!

> 
> thanks
> 
>>
>>
>> thanks,
>> -srini
>>
>>
>>> v6: no changes, based on kernel 5.19-rc1
>>>
>>> v5:
>>> sync with the series:
>>>
> https://patchwork.kernel.org/project/linux-mediatek/list/?series=640196
>>>      1. change title suggested by Krzysztof;
>>>      2. No need drop 'reviewed-by Rob' suggested by Krzysztof
>>>      3. add maintainer Lala who maintain efuse driver now;
>>>
>>> v4: fix duplicated unit-address in example;
>>>       drop reviewed-by Rob, due to changes;
>>>
>>> v3: add reviewed-by Rob
>>>
>>> v2:
>>>      1. remove description of subnodes which is covered by
>>> nvmem.yaml
>>> suggested by Rob
>>>      2. change the example which is commoner than mt8173's
>>> ---
>>>    .../bindings/nvmem/mediatek,efuse.yaml        | 87
>>> +++++++++++++++++++
>>>    .../devicetree/bindings/nvmem/mtk-efuse.txt   | 43 ---------
>>>    2 files changed, 87 insertions(+), 43 deletions(-)
>>>    create mode 100644
>>> Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
>>>    delete mode 100644 Documentation/devicetree/bindings/nvmem/mtk-
>>> efuse.txt
>>>
>>> diff --git
>>> a/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
>>> b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
>>> new file mode 100644
>>> index 000000000000..f6e01ddb7499
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
>>> @@ -0,0 +1,87 @@
>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/nvmem/mediatek,efuse.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: MediaTek efuse
>>> +
>>> +description: |
>>> +  MediaTek's efuse is used for storing calibration data, it can be
>>> accessed
>>> +  on ARM devices usiong I/O mapped memory.
>>> +
>>> +maintainers:
>>> +  - Andrew-CT Chen <andrew-ct.chen@mediatek.com>
>>> +  - Lala Lin <lala.lin@mediatek.com>
>>> +
>>> +allOf:
>>> +  - $ref: "nvmem.yaml#"
>>> +
>>> +properties:
>>> +  $nodename:
>>> +    pattern: "^efuse@[0-9a-f]+$"
>>> +
>>> +  compatible:
>>> +    oneOf:
>>> +      - items:
>>> +          - enum:
>>> +              - mediatek,mt7622-efuse
>>> +              - mediatek,mt7623-efuse
>>> +              - mediatek,mt8173-efuse
>>> +              - mediatek,mt8192-efuse
>>> +              - mediatek,mt8195-efuse
>>> +              - mediatek,mt8516-efuse
>>> +          - const: mediatek,efuse
>>> +      - const: mediatek,mt8173-efuse
>>> +        deprecated: true
>>> +
>>> +  reg:
>>> +    maxItems: 1
>>> +
>>> +required:
>>> +  - compatible
>>> +  - reg
>>> +
>>> +unevaluatedProperties: false
>>> +
>>> +examples:
>>> +  - |
>>> +    efuse@11c10000 {
>>> +        compatible = "mediatek,mt8195-efuse", "mediatek,efuse";
>>> +        reg = <0x11c10000 0x1000>;
>>> +        #address-cells = <1>;
>>> +        #size-cells = <1>;
>>> +
>>> +        u3_tx_imp_p0: usb3-tx-imp@184,1 {
>>> +            reg = <0x184 0x1>;
>>> +            bits = <0 5>;
>>> +        };
>>> +        u3_rx_imp_p0: usb3-rx-imp@184,2 {
>>> +            reg = <0x184 0x2>;
>>> +            bits = <5 5>;
>>> +        };
>>> +        u3_intr_p0: usb3-intr@185 {
>>> +            reg = <0x185 0x1>;
>>> +            bits = <2 6>;
>>> +        };
>>> +        comb_tx_imp_p1: usb3-tx-imp@186,1 {
>>> +            reg = <0x186 0x1>;
>>> +            bits = <0 5>;
>>> +        };
>>> +        comb_rx_imp_p1: usb3-rx-imp@186,2 {
>>> +            reg = <0x186 0x2>;
>>> +            bits = <5 5>;
>>> +        };
>>> +        comb_intr_p1: usb3-intr@187 {
>>> +            reg = <0x187 0x1>;
>>> +            bits = <2 6>;
>>> +        };
>>> +        u2_intr_p0: usb2-intr-p0@188,1 {
>>> +            reg = <0x188 0x1>;
>>> +            bits = <0 5>;
>>> +        };
>>> +        u2_intr_p1: usb2-intr-p1@188,2 {
>>> +            reg = <0x188 0x2>;
>>> +            bits = <5 5>;
>>> +        };
>>> +    };
>>> diff --git a/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
>>> b/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
>>> deleted file mode 100644
>>> index 39d529599444..000000000000
>>> --- a/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
>>> +++ /dev/null
>>> @@ -1,43 +0,0 @@
>>> -= Mediatek MTK-EFUSE device tree bindings =
>>> -
>>> -This binding is intended to represent MTK-EFUSE which is found in
>>> most Mediatek SOCs.
>>> -
>>> -Required properties:
>>> -- compatible: should be
>>> -	      "mediatek,mt7622-efuse", "mediatek,efuse": for MT7622
>>> -	      "mediatek,mt7623-efuse", "mediatek,efuse": for MT7623
>>> -	      "mediatek,mt8173-efuse" or "mediatek,efuse": for MT8173
>>> -	      "mediatek,mt8192-efuse", "mediatek,efuse": for MT8192
>>> -	      "mediatek,mt8195-efuse", "mediatek,efuse": for MT8195
>>> -	      "mediatek,mt8516-efuse", "mediatek,efuse": for MT8516
>>> -- reg: Should contain registers location and length
>>> -- bits: contain the bits range by offset and size
>>> -
>>> -= Data cells =
>>> -Are child nodes of MTK-EFUSE, bindings of which as described in
>>> -bindings/nvmem/nvmem.txt
>>> -
>>> -Example:
>>> -
>>> -	efuse: efuse@10206000 {
>>> -		compatible = "mediatek,mt8173-efuse";
>>> -		reg	   = <0 0x10206000 0 0x1000>;
>>> -		#address-cells = <1>;
>>> -		#size-cells = <1>;
>>> -
>>> -		/* Data cells */
>>> -		thermal_calibration: calib@528 {
>>> -			reg = <0x528 0xc>;
>>> -		};
>>> -	};
>>> -
>>> -= Data consumers =
>>> -Are device nodes which consume nvmem data cells.
>>> -
>>> -For example:
>>> -
>>> -	thermal {
>>> -		...
>>> -		nvmem-cells = <&thermal_calibration>;
>>> -		nvmem-cell-names = "calibration";
>>> -	};
>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
new file mode 100644
index 000000000000..f6e01ddb7499
--- /dev/null
+++ b/Documentation/devicetree/bindings/nvmem/mediatek,efuse.yaml
@@ -0,0 +1,87 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/nvmem/mediatek,efuse.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: MediaTek efuse
+
+description: |
+  MediaTek's efuse is used for storing calibration data, it can be accessed
+  on ARM devices usiong I/O mapped memory.
+
+maintainers:
+  - Andrew-CT Chen <andrew-ct.chen@mediatek.com>
+  - Lala Lin <lala.lin@mediatek.com>
+
+allOf:
+  - $ref: "nvmem.yaml#"
+
+properties:
+  $nodename:
+    pattern: "^efuse@[0-9a-f]+$"
+
+  compatible:
+    oneOf:
+      - items:
+          - enum:
+              - mediatek,mt7622-efuse
+              - mediatek,mt7623-efuse
+              - mediatek,mt8173-efuse
+              - mediatek,mt8192-efuse
+              - mediatek,mt8195-efuse
+              - mediatek,mt8516-efuse
+          - const: mediatek,efuse
+      - const: mediatek,mt8173-efuse
+        deprecated: true
+
+  reg:
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    efuse@11c10000 {
+        compatible = "mediatek,mt8195-efuse", "mediatek,efuse";
+        reg = <0x11c10000 0x1000>;
+        #address-cells = <1>;
+        #size-cells = <1>;
+
+        u3_tx_imp_p0: usb3-tx-imp@184,1 {
+            reg = <0x184 0x1>;
+            bits = <0 5>;
+        };
+        u3_rx_imp_p0: usb3-rx-imp@184,2 {
+            reg = <0x184 0x2>;
+            bits = <5 5>;
+        };
+        u3_intr_p0: usb3-intr@185 {
+            reg = <0x185 0x1>;
+            bits = <2 6>;
+        };
+        comb_tx_imp_p1: usb3-tx-imp@186,1 {
+            reg = <0x186 0x1>;
+            bits = <0 5>;
+        };
+        comb_rx_imp_p1: usb3-rx-imp@186,2 {
+            reg = <0x186 0x2>;
+            bits = <5 5>;
+        };
+        comb_intr_p1: usb3-intr@187 {
+            reg = <0x187 0x1>;
+            bits = <2 6>;
+        };
+        u2_intr_p0: usb2-intr-p0@188,1 {
+            reg = <0x188 0x1>;
+            bits = <0 5>;
+        };
+        u2_intr_p1: usb2-intr-p1@188,2 {
+            reg = <0x188 0x2>;
+            bits = <5 5>;
+        };
+    };
diff --git a/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt b/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
deleted file mode 100644
index 39d529599444..000000000000
--- a/Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
+++ /dev/null
@@ -1,43 +0,0 @@ 
-= Mediatek MTK-EFUSE device tree bindings =
-
-This binding is intended to represent MTK-EFUSE which is found in most Mediatek SOCs.
-
-Required properties:
-- compatible: should be
-	      "mediatek,mt7622-efuse", "mediatek,efuse": for MT7622
-	      "mediatek,mt7623-efuse", "mediatek,efuse": for MT7623
-	      "mediatek,mt8173-efuse" or "mediatek,efuse": for MT8173
-	      "mediatek,mt8192-efuse", "mediatek,efuse": for MT8192
-	      "mediatek,mt8195-efuse", "mediatek,efuse": for MT8195
-	      "mediatek,mt8516-efuse", "mediatek,efuse": for MT8516
-- reg: Should contain registers location and length
-- bits: contain the bits range by offset and size
-
-= Data cells =
-Are child nodes of MTK-EFUSE, bindings of which as described in
-bindings/nvmem/nvmem.txt
-
-Example:
-
-	efuse: efuse@10206000 {
-		compatible = "mediatek,mt8173-efuse";
-		reg	   = <0 0x10206000 0 0x1000>;
-		#address-cells = <1>;
-		#size-cells = <1>;
-
-		/* Data cells */
-		thermal_calibration: calib@528 {
-			reg = <0x528 0xc>;
-		};
-	};
-
-= Data consumers =
-Are device nodes which consume nvmem data cells.
-
-For example:
-
-	thermal {
-		...
-		nvmem-cells = <&thermal_calibration>;
-		nvmem-cell-names = "calibration";
-	};