1* Skyworks Solutions, Inc. AAT1290 Current Regulator for Flash LEDs 2 3The device is controlled through two pins: FL_EN and EN_SET. The pins when, 4asserted high, enable flash strobe and movie mode (max 1/2 of flash current) 5respectively. In order to add a capability of selecting the strobe signal source 6(e.g. CPU or camera sensor) there is an additional switch required, independent 7of the flash chip. The switch is controlled with pin control. 8 9Required properties: 10 11- compatible : Must be "skyworks,aat1290". 12- flen-gpios : Must be device tree identifier of the flash device FL_EN pin. 13- enset-gpios : Must be device tree identifier of the flash device EN_SET pin. 14 15Optional properties: 16- pinctrl-names : Must contain entries: "default", "host", "isp". Entries 17 "default" and "host" must refer to the same pin configuration 18 node, which sets the host as a strobe signal provider. Entry 19 "isp" must refer to the pin configuration node, which sets the 20 ISP as a strobe signal provider. 21 22A discrete LED element connected to the device must be represented by a child 23node - see Documentation/devicetree/bindings/leds/common.txt. 24 25Required properties of the LED child node: 26- led-max-microamp : see Documentation/devicetree/bindings/leds/common.txt 27- flash-max-microamp : see Documentation/devicetree/bindings/leds/common.txt 28 Maximum flash LED supply current can be calculated using 29 following formula: I = 1A * 162kohm / Rset. 30- flash-max-timeout-us : see Documentation/devicetree/bindings/leds/common.txt 31 Maximum flash timeout can be calculated using following 32 formula: T = 8.82 * 10^9 * Ct. 33 34Optional properties of the LED child node: 35- function : see Documentation/devicetree/bindings/leds/common.txt 36- color : see Documentation/devicetree/bindings/leds/common.txt 37- label : see Documentation/devicetree/bindings/leds/common.txt (deprecated) 38 39Example (by Ct = 220nF, Rset = 160kohm and exynos4412-trats2 board with 40a switch that allows for routing strobe signal either from the host or from 41the camera sensor): 42 43#include "exynos4412.dtsi" 44#include <dt-bindings/leds/common.h> 45 46led-controller { 47 compatible = "skyworks,aat1290"; 48 flen-gpios = <&gpj1 1 GPIO_ACTIVE_HIGH>; 49 enset-gpios = <&gpj1 2 GPIO_ACTIVE_HIGH>; 50 51 pinctrl-names = "default", "host", "isp"; 52 pinctrl-0 = <&camera_flash_host>; 53 pinctrl-1 = <&camera_flash_host>; 54 pinctrl-2 = <&camera_flash_isp>; 55 56 camera_flash: led { 57 function = LED_FUNCTION_FLASH; 58 color = <LED_COLOR_ID_WHITE>; 59 led-max-microamp = <520833>; 60 flash-max-microamp = <1012500>; 61 flash-max-timeout-us = <1940000>; 62 }; 63}; 64 65&pinctrl_0 { 66 camera_flash_host: camera-flash-host { 67 samsung,pins = "gpj1-0"; 68 samsung,pin-function = <1>; 69 samsung,pin-val = <0>; 70 }; 71 72 camera_flash_isp: camera-flash-isp { 73 samsung,pins = "gpj1-0"; 74 samsung,pin-function = <1>; 75 samsung,pin-val = <1>; 76 }; 77}; 78