Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

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