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

lp855x bindings

Required properties:
  - compatible: "ti,lp8550", "ti,lp8551", "ti,lp8552", "ti,lp8553",
                "ti,lp8555", "ti,lp8556", "ti,lp8557"
  - reg: I2C slave address (u8)
  - dev-ctrl: Value of DEVICE CONTROL register (u8). It depends on the device.

Optional properties:
  - bl-name: Backlight device name (string)
  - init-brt: Initial value of backlight brightness (u8)
  - pwm-period: PWM period value. Set only PWM input mode used (u32)
  - rom-addr: Register address of ROM area to be updated (u8)
  - rom-val: Register value to be updated (u8)
  - power-supply: Regulator which controls the 3V rail
  - enable-supply: Regulator which controls the EN/VDDIO input

Example:

	/* LP8555 */
	backlight@2c {
		compatible = "ti,lp8555";
		reg = <0x2c>;

		dev-ctrl = /bits/ 8 <0x00>;
		pwm-period = <10000>;

		/* 4V OV, 4 output LED0 string enabled */
		rom_14h {
			rom-addr = /bits/ 8 <0x14>;
			rom-val = /bits/ 8 <0xcf>;
		};

		/* Heavy smoothing, 24ms ramp time step */
		rom_15h {
			rom-addr = /bits/ 8 <0x15>;
			rom-val = /bits/ 8 <0xc7>;
		};

		/* 4 output LED1 string enabled */
		rom_19h {
			rom-addr = /bits/ 8 <0x19>;
			rom-val = /bits/ 8 <0x0f>;
		};
	};

	/* LP8556 */
	backlight@2c {
		compatible = "ti,lp8556";
		reg = <0x2c>;

		bl-name = "lcd-bl";
		dev-ctrl = /bits/ 8 <0x85>;
		init-brt = /bits/ 8 <0x10>;
	};

	/* LP8557 */
	backlight@2c {
		compatible = "ti,lp8557";
		reg = <0x2c>;
		enable-supply = <&backlight_vddio>;
		power-supply = <&backlight_vdd>;

		dev-ctrl = /bits/ 8 <0x41>;
		init-brt = /bits/ 8 <0x0a>;

		/* 4V OV, 4 output LED string enabled */
		rom_14h {
			rom-addr = /bits/ 8 <0x14>;
			rom-val = /bits/ 8 <0xcf>;
		};
	};