Kernel-4.18.0-80.el8_rockchip-efuse

= 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 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";
};