]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
DT: aat1290: Document handling external strobe sources
authorJacek Anaszewski <j.anaszewski@samsung.com>
Mon, 8 Jun 2015 09:02:21 +0000 (02:02 -0700)
committerBryan Wu <cooloney@gmail.com>
Mon, 22 Jun 2015 20:55:28 +0000 (13:55 -0700)
This patch adds documentation for a pinctrl-names property.
The property, when present, is used for switching the source
of the strobe signal for the device.

Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Bryan Wu <cooloney@gmail.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Cc: devicetree@vger.kernel.org
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Bryan Wu <cooloney@gmail.com>
Documentation/devicetree/bindings/leds/leds-aat1290.txt

index ef88b9c53e37045dddc89d6d755aafdacdb85cc6..c05ed91a4e42803abccc9769848a3d3fb16917b7 100644 (file)
@@ -2,7 +2,9 @@
 
 The device is controlled through two pins: FL_EN and EN_SET. The pins when,
 asserted high, enable flash strobe and movie mode (max 1/2 of flash current)
-respectively.
+respectively. In order to add a capability of selecting the strobe signal source
+(e.g. CPU or camera sensor) there is an additional switch required, independent
+of the flash chip. The switch is controlled with pin control.
 
 Required properties:
 
@@ -10,6 +12,13 @@ Required properties:
 - flen-gpios : Must be device tree identifier of the flash device FL_EN pin.
 - enset-gpios : Must be device tree identifier of the flash device EN_SET pin.
 
+Optional properties:
+- pinctrl-names : Must contain entries: "default", "host", "isp". Entries
+               "default" and "host" must refer to the same pin configuration
+               node, which sets the host as a strobe signal provider. Entry
+               "isp" must refer to the pin configuration node, which sets the
+               ISP as a strobe signal provider.
+
 A discrete LED element connected to the device must be represented by a child
 node - see Documentation/devicetree/bindings/leds/common.txt.
 
@@ -25,13 +34,22 @@ Required properties of the LED child node:
 Optional properties of the LED child node:
 - label : see Documentation/devicetree/bindings/leds/common.txt
 
-Example (by Ct = 220nF, Rset = 160kohm):
+Example (by Ct = 220nF, Rset = 160kohm and exynos4412-trats2 board with
+a switch that allows for routing strobe signal either from the host or from
+the camera sensor):
+
+#include "exynos4412.dtsi"
 
 aat1290 {
        compatible = "skyworks,aat1290";
        flen-gpios = <&gpj1 1 GPIO_ACTIVE_HIGH>;
        enset-gpios = <&gpj1 2 GPIO_ACTIVE_HIGH>;
 
+       pinctrl-names = "default", "host", "isp";
+       pinctrl-0 = <&camera_flash_host>;
+       pinctrl-1 = <&camera_flash_host>;
+       pinctrl-2 = <&camera_flash_isp>;
+
        camera_flash: flash-led {
                label = "aat1290-flash";
                led-max-microamp = <520833>;
@@ -39,3 +57,17 @@ aat1290 {
                flash-timeout-us = <1940000>;
        };
 };
+
+&pinctrl_0 {
+       camera_flash_host: camera-flash-host {
+               samsung,pins = "gpj1-0";
+               samsung,pin-function = <1>;
+               samsung,pin-val = <0>;
+       };
+
+       camera_flash_isp: camera-flash-isp {
+               samsung,pins = "gpj1-0";
+               samsung,pin-function = <1>;
+               samsung,pin-val = <1>;
+       };
+};