[PATCH] dt-bindings: nvmem: mediatek: Convert binding to YAML

Krzysztof Kozlowski krzysztof.kozlowski at linaro.org
Mon Apr 25 02:36:41 PDT 2022


On 22/04/2022 14:38, Allen-KH Cheng wrote:
> Convert Mediatek EFUSE devicetree binding to YAML.
> 
> Signed-off-by: Allen-KH Cheng <allen-kh.cheng at mediatek.com>
> ---
>  .../devicetree/bindings/nvmem/mtk-efuse.txt   | 43 ------------
>  .../devicetree/bindings/nvmem/mtk-efuse.yaml  | 69 +++++++++++++++++++

Same comments as usual, so "vendor,device-name", e.g. "mediatek,efuse"
if this is going to match all possible future MediaTek chips or
"mediatek,mt7622-efuse"


Folks in MediaTek: it would be useful if we did not have to repeat same
review to all of you for every patch. If you keep forcing the reviewers
to repeat the same and the same, eventually they become grumpier and
grumpier. :)

>  2 files changed, 69 insertions(+), 43 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/nvmem/mtk-efuse.txt
>  create mode 100644 Documentation/devicetree/bindings/nvmem/mtk-efuse.yaml
> 
> 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 at 10206000 {
> -		compatible = "mediatek,mt8173-efuse";
> -		reg	   = <0 0x10206000 0 0x1000>;
> -		#address-cells = <1>;
> -		#size-cells = <1>;
> -
> -		/* Data cells */
> -		thermal_calibration: calib at 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 --git a/Documentation/devicetree/bindings/nvmem/mtk-efuse.yaml b/Documentation/devicetree/bindings/nvmem/mtk-efuse.yaml
> new file mode 100644
> index 000000000000..307c05f69cb9
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/nvmem/mtk-efuse.yaml
> @@ -0,0 +1,69 @@
> +# SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/nvmem/mtk-efuse.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Mediatek eFuse device tree bindings

s/device tree bindings//

Folks in MediaTek: it would be useful if we did not have to repeat same
review to all of you for every patch.

> +
> +maintainers:
> +  - Lala Lin <lala.lin at mediatek.com>
> +  - Allen-KH Cheng <allen-kh.cheng at mediatek.com>
> +
> +allOf:
> +  - $ref: "nvmem.yaml#"
> +
> +properties:
> +  compatible:
> +    oneOf:
> +      - const: mediatek,efuse

1. Please add a comment for which compatible this is valid. Such generic
compatibles should not be used standalone. The binding was accepted
(without DT review), so it's done, but let's not spread it over new DTS.

Actually I would prefer to deprecate it in second patch.

2. Same comments as usual - this is enum.
Folks in MediaTek: it would be useful if we did not have to repeat same
review to all of you for every patch.

> +      - const: mediatek,mt8173-efuse
> +      - items:
> +          - enum:
> +              - mediatek,mt7622-efuse
> +              - mediatek,mt7623-efuse
> +              - mediatek,mt8183-efuse
> +              - mediatek,mt8192-efuse
> +              - mediatek,mt8195-efuse
> +              - mediatek,mt8516-efuse
> +          - const: mediatek,efuse
> +
> +  reg:
> +    maxItems: 1
> +
> +patternProperties:
> +  "^.*@[0-9a-f]+$":
> +    type: object

No need, it comes from nvmem.yaml.
> +
> +    properties:
> +      reg:
> +        maxItems: 1
> +        description:
> +          Offset and size in bytes within the storage device.
> +
> +    required:
> +      - reg
> +
> +    additionalProperties: false
> +
> +required:
> +  - compatible
> +  - reg
> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +

Unneeded blank line.

> +    efuse: efuse at 10206000 {
> +            compatible = "mediatek,mt8173-efuse";
> +            reg = <0x10206000 0x1000>;
> +            #address-cells = <1>;
> +            #size-cells = <1>;
> +
> +            /* Data cells */
> +            thermal_calibration: calib at 528 {
> +                reg = <0x528 0xc>;
> +            };
> +    };
> +...


Best regards,
Krzysztof



More information about the Linux-mediatek mailing list