* Texas Instruments - lm3532 White LED driver with ambient light sensing
capability.

The LM3532 provides the 3 high-voltage, low-side current sinks. The device is
programmable over an I2C-compatible interface and has independent
current control for all three channels. The adaptive current regulation
method allows for different LED currents in each current sink thus allowing
for a wide variety of backlight and keypad applications.

The main features of the LM3532 include dual ambient light sensor inputs
each with 32 internal voltage setting resistors, 8-bit logarithmic and linear
brightness control, dual external PWM brightness control inputs, and up to
1000:1 dimming ratio with programmable fade in and fade out settings.

Required properties:
	- compatible : "ti,lm3532"
	- reg : I2C slave address
	- #address-cells : 1
	- #size-cells : 0

Optional properties:
	- enable-gpios : gpio pin to enable (active high)/disable the device.
	- ramp-up-us - The Run time ramp rates/step are from one current
		       set-point to another after the device has reached its
		       initial target set point from turn-on
	- ramp-down-us - The Run time ramp rates/step are from one current
			 set-point to another after the device has reached its
			 initial target set point from turn-on
	Range for ramp settings: 8us - 65536us

Optional properties if ALS mode is used:
	- ti,als-vmin - Minimum ALS voltage defined in Volts
	- ti,als-vmax - Maximum ALS voltage defined in Volts
	Per the data sheet the max ALS voltage is 2V and the min is 0V

	- ti,als1-imp-sel - ALS1 impedance resistor selection in Ohms
	- ti,als2-imp-sel - ALS2 impedance resistor selection in Ohms
	Range for impedance select: 37000 Ohms - 1190 Ohms
	Values above 37kohms will be set to the "High Impedance" setting

	- ti,als-avrg-time-us - Determines the length of time the device needs to
			  average the two ALS inputs.  This is only used if
			  the input mode is LM3532_ALS_INPUT_AVRG.
			     Range: 17920us - 2293760us
	- ti,als-input-mode - Determines how the device uses the attached ALS
			   devices.
			   0x00 - ALS1 and ALS2 input average
			   0x01 - ALS1 Input
			   0x02 - ALS2 Input
			   0x03 - Max of ALS1 and ALS2

Required child properties:
	- reg : Indicates control bank the LED string is controlled by
	- led-sources : see Documentation/devicetree/bindings/leds/common.txt
	- ti,led-mode : Defines if the LED strings are manually controlled or
			if the LED strings are controlled by the ALS.
			0x00 - LED strings are I2C controlled via full scale
			       brightness control register
			0x01 - LED strings are ALS controlled

Optional LED child properties:
	- label : see Documentation/devicetree/bindings/leds/common.txt
	- linux,default-trigger :
	   see Documentation/devicetree/bindings/leds/common.txt
	- led-max-microamp : Defines the full scale current value for each control
			  bank.  The range is from 5000uA-29800uA in increments
			  of 800uA.

Example:
led-controller@38 {
	compatible = "ti,lm3532";
	#address-cells = <1>;
	#size-cells = <0>;
	reg = <0x38>;

	enable-gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>;
	ramp-up-us = <1024>;
	ramp-down-us = <65536>;

	ti,als-vmin = <0>;
	ti,als-vmax = <2000>;
	ti,als1-imp-sel = <4110>;
	ti,als2-imp-sel = <2180>;
	ti,als-avrg-time-us = <17920>;
	ti,als-input-mode = <0x00>;

	led@0 {
		reg = <0>;
		led-sources = <2>;
		ti,led-mode = <1>;
		led-max-microamp = <21800>;
		label = ":backlight";
		linux,default-trigger = "backlight";
	};

	led@1 {
		reg = <1>;
		led-sources = <1>;
		ti,led-mode = <0>;
		label = ":kbd_backlight";
	};
};

For more product information please see the links below:
https://www.ti.com/product/LM3532
