nvmem: rockchip-efuse: add support for rk3328-efuse
[firefly-linux-kernel-4.4.55.git] / Documentation / devicetree / bindings / nvmem / rockchip-efuse.txt
1 = Rockchip eFuse device tree bindings =
2
3 Required properties:
4 - compatible: Should be one of the following.
5   - "rockchip,rk3066a-efuse" - for RK3066a SoCs.
6   - "rockchip,rk3188-efuse" - for RK3188 SoCs.
7   - "rockchip,rk3288-efuse" - for RK3288 SoCs.
8   - "rockchip,rk3288-secure-efuse" - for RK3288 SoCs.
9   - "rockchip,rk3328-efuse" - for RK3328 SoCs.
10   - "rockchip,rk3366-efuse" - for RK3366 SoCs.
11   - "rockchip,rk3368-efuse" - for RK3368 SoCs.
12   - "rockchip,rk3399-efuse" - for RK3399 SoCs.
13 - reg: Should contain the registers location and exact eFuse size
14 - clocks: Should be the clock id of eFuse
15 - clock-names: Should be "pclk_efuse"
16
17 Optional properties:
18 - rockchip,efuse-size: Should be exact eFuse size in byte, the eFuse
19   size in property <reg> will be invalid if define this property.
20
21 Deprecated properties:
22 - compatible: "rockchip,rockchip-efuse"
23   Old efuse compatible value compatible to rk3066a, rk3188 and rk3288
24   efuses
25
26 = Data cells =
27 Are child nodes of eFuse, bindings of which as described in
28 bindings/nvmem/nvmem.txt
29
30 Example:
31
32         efuse: efuse@ffb40000 {
33                 compatible = "rockchip,rk3288-efuse";
34                 reg = <0xffb40000 0x20>;
35                 #address-cells = <1>;
36                 #size-cells = <1>;
37                 clocks = <&cru PCLK_EFUSE256>;
38                 clock-names = "pclk_efuse";
39
40                 /* Data cells */
41                 cpu_leakage: cpu_leakage {
42                         reg = <0x17 0x1>;
43                 };
44         };
45
46 = Data consumers =
47 Are device nodes which consume nvmem data cells.
48
49 Example:
50
51         cpu_leakage {
52                 ...
53                 nvmem-cells = <&cpu_leakage>;
54                 nvmem-cell-names = "cpu_leakage";
55         };