Commit 4d8d2177 authored by Ricardo Cañuelo's avatar Ricardo Cañuelo Committed by Rob Herring
Browse files

dt-bindings: nvmem: Convert rockchip-efuse bindings to yaml



Convert the existing rockchip-efuse binding to json-schema. No changes
were done to the binding except for small changes in the documentation
strings.

This deletes the rockchip-efuse.txt binding and replaces it with
rockchip-efuse.yaml.

Signed-off-by: default avatarRicardo Cañuelo <ricardo.canuelo@collabora.com>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
parent 02c625c5
Loading
Loading
Loading
Loading
+0 −54
Original line number Diff line number Diff line
= Rockchip eFuse device tree bindings =

Required properties:
- compatible: Should be one of the following.
  - "rockchip,rk3066a-efuse" - for RK3066a SoCs.
  - "rockchip,rk3188-efuse" - for RK3188 SoCs.
  - "rockchip,rk3228-efuse" - for RK3228 SoCs.
  - "rockchip,rk3288-efuse" - for RK3288 SoCs.
  - "rockchip,rk3328-efuse" - for RK3328 SoCs.
  - "rockchip,rk3368-efuse" - for RK3368 SoCs.
  - "rockchip,rk3399-efuse" - for RK3399 SoCs.
- reg: Should contain the registers location and exact eFuse size
- clocks: Should be the clock id of eFuse
- clock-names: Should be "pclk_efuse"

Optional properties:
- rockchip,efuse-size: Should be exact eFuse size in byte, the eFuse
  size in property <reg> will be invalid if define this property.

Deprecated properties:
- compatible: "rockchip,rockchip-efuse"
  Old efuse compatible value compatible to rk3066a, rk3188 and rk3288
  efuses

= Data cells =
Are child nodes of eFuse, bindings of which as described in
bindings/nvmem/nvmem.txt

Example:

	efuse: efuse@ffb40000 {
		compatible = "rockchip,rk3288-efuse";
		reg = <0xffb40000 0x20>;
		#address-cells = <1>;
		#size-cells = <1>;
		clocks = <&cru PCLK_EFUSE256>;
		clock-names = "pclk_efuse";

		/* Data cells */
		cpu_leakage: cpu_leakage {
			reg = <0x17 0x1>;
		};
	};

= Data consumers =
Are device nodes which consume nvmem data cells.

Example:

	cpu_leakage {
		...
		nvmem-cells = <&cpu_leakage>;
		nvmem-cell-names = "cpu_leakage";
	};
+70 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/nvmem/rockchip-efuse.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Rockchip eFuse device tree bindings

maintainers:
  - Heiko Stuebner <heiko@sntech.de>

allOf:
  - $ref: "nvmem.yaml#"

properties:
  compatible:
    enum:
      - rockchip,rk3066a-efuse
      - rockchip,rk3188-efuse
      - rockchip,rk3228-efuse
      - rockchip,rk3288-efuse
      - rockchip,rk3328-efuse
      - rockchip,rk3368-efuse
      - rockchip,rk3399-efuse

      # Deprecated: old compatible value for rk3066a, rk3188 and rk3288
      - rockchip,rockchip-efuse

  reg:
    description:
      Registers location and eFuse size.
    maxItems: 1

  clocks:
    description:
      eFuse clock id.
    maxItems: 1

  clock-names:
    const: pclk_efuse

  rockchip,efuse-size:
    description:
      eFuse size in bytes. The eFuse size in property <reg> will be invalid if
      this property is defined.
    $ref: /schemas/types.yaml#/definitions/uint32

required:
  - compatible
  - reg
  - clocks
  - clock-names

examples:
  - |
    #include <dt-bindings/clock/rk3288-cru.h>
    efuse: efuse@ffb40000 {
            compatible = "rockchip,rk3288-efuse";
            reg = <0xffb40000 0x20>;
            #address-cells = <1>;
            #size-cells = <1>;
            clocks = <&cru PCLK_EFUSE256>;
            clock-names = "pclk_efuse";

            /* Data cells */
            cpu_leakage: cpu_leakage@17 {
                    reg = <0x17 0x1>;
            };
    };
...