Re: [PATCH] dt-bindings: nvmem: sprd-efuse: convert to YAML

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 13/07/2024 14:12, Stanislav Jakubek wrote:
> Convert the Spreadtrum eFuse bindings to DT schema. Since they are very
> similar, both of the existing Spreadtrum txt bindings were merged into
> one common binding document, named after the only in-tree user, SC2731.
> 
> Signed-off-by: Stanislav Jakubek <stano.jakubek@xxxxxxxxx>
> ---
>  .../bindings/nvmem/sc27xx-efuse.txt           | 52 -----------
>  .../bindings/nvmem/sprd,sc2731-efuse.yaml     | 88 +++++++++++++++++++
>  .../devicetree/bindings/nvmem/sprd-efuse.txt  | 39 --------
>  3 files changed, 88 insertions(+), 91 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/nvmem/sc27xx-efuse.txt
>  create mode 100644 Documentation/devicetree/bindings/nvmem/sprd,sc2731-efuse.yaml
>  delete mode 100644 Documentation/devicetree/bindings/nvmem/sprd-efuse.txt
> 
> diff --git a/Documentation/devicetree/bindings/nvmem/sc27xx-efuse.txt b/Documentation/devicetree/bindings/nvmem/sc27xx-efuse.txt
> deleted file mode 100644
> index 586c08286aa9..000000000000
> --- a/Documentation/devicetree/bindings/nvmem/sc27xx-efuse.txt
> +++ /dev/null
> @@ -1,52 +0,0 @@
> -= Spreadtrum SC27XX PMIC eFuse device tree bindings =
> -
> -Required properties:
> -- compatible: Should be one of the following.
> -	"sprd,sc2720-efuse"
> -	"sprd,sc2721-efuse"
> -	"sprd,sc2723-efuse"
> -	"sprd,sc2730-efuse"
> -	"sprd,sc2731-efuse"
> -- reg: Specify the address offset of efuse controller.
> -- hwlocks: Reference to a phandle of a hwlock provider node.
> -
> -= Data cells =
> -Are child nodes of eFuse, bindings of which as described in
> -bindings/nvmem/nvmem.txt
> -
> -Example:
> -
> -	sc2731_pmic: pmic@0 {
> -		compatible = "sprd,sc2731";
> -		reg = <0>;
> -		spi-max-frequency = <26000000>;
> -		interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
> -		interrupt-controller;
> -		#interrupt-cells = <2>;
> -		#address-cells = <1>;
> -		#size-cells = <0>;
> -
> -		efuse@380 {
> -			compatible = "sprd,sc2731-efuse";
> -			reg = <0x380>;
> -			#address-cells = <1>;
> -			#size-cells = <1>;
> -			hwlocks = <&hwlock 12>;
> -
> -			/* Data cells */
> -			thermal_calib: calib@10 {
> -				reg = <0x10 0x2>;
> -			};
> -		};
> -	};
> -
> -= Data consumers =
> -Are device nodes which consume nvmem data cells.
> -
> -Example:
> -
> -	thermal {
> -		...
> -		nvmem-cells = <&thermal_calib>;
> -		nvmem-cell-names = "calibration";
> -	};
> diff --git a/Documentation/devicetree/bindings/nvmem/sprd,sc2731-efuse.yaml b/Documentation/devicetree/bindings/nvmem/sprd,sc2731-efuse.yaml
> new file mode 100644
> index 000000000000..98d1400991d7
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/nvmem/sprd,sc2731-efuse.yaml
> @@ -0,0 +1,88 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/nvmem/sprd,sc2731-efuse.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Spreadtrum eFuse
> +
> +maintainers:
> +  - Orson Zhai <orsonzhai@xxxxxxxxx>
> +  - Baolin Wang <baolin.wang7@xxxxxxxxx>
> +  - Chunyan Zhang <zhang.lyra@xxxxxxxxx>
> +
> +properties:
> +  compatible:
> +    enum:
> +      - sprd,sc2720-efuse
> +      - sprd,sc2721-efuse
> +      - sprd,sc2723-efuse
> +      - sprd,sc2730-efuse
> +      - sprd,sc2731-efuse
> +      - sprd,ums312-efuse
> +
> +  reg:
> +    maxItems: 1
> +
> +  clocks:
> +    maxItems: 1
> +
> +  clock-names:
> +    const: enable
> +
> +  hwlocks:
> +    maxItems: 1
> +
> +required:
> +  - compatible
> +  - reg
> +  - hwlocks
> +
> +allOf:
> +  - $ref: nvmem.yaml#
> +  - $ref: nvmem-deprecated-cells.yaml#
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: sprd,ums312-efuse
> +    then:
> +      required:
> +        - clocks
> +        - clock-names
> +    else:
> +      properties:
> +        clocks: false
> +        clock-names: false

Half of the binding is this "if:", so I would say they are not that
similar. I think it would be easier to read them if these were split
into two bindings.

Best regards,
Krzysztof





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux