leds: pm8058: add device tree bindings
authorLinus Walleij <linus.walleij@linaro.org>
Tue, 16 Aug 2016 09:25:02 +0000 (11:25 +0200)
committerJacek Anaszewski <j.anaszewski@samsung.com>
Tue, 16 Aug 2016 20:37:20 +0000 (22:37 +0200)
This adds the device tree bindings for the PM8058 LEDs.

Cc: devicetree@vger.kernel.org
Cc: linux-arm-msm@vger.kernel.org
Cc: Andy Gross <andy.gross@linaro.org>
Cc: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
Documentation/devicetree/bindings/leds/leds-pm8058.txt [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/leds/leds-pm8058.txt b/Documentation/devicetree/bindings/leds/leds-pm8058.txt
new file mode 100644 (file)
index 0000000..89584c4
--- /dev/null
@@ -0,0 +1,67 @@
+Qualcomm PM8058 LED driver
+
+The Qualcomm PM8058 is a multi-functional device which contains
+an LED driver block for up to six LEDs: three normal LEDs, two
+"flash" LEDs and one "keypad backlight" LED. The names are
+quoted because sometimes these LED drivers are used for wildly
+different things than flash or keypad backlight: their names
+are more of a suggestion than a hard-wired usecase.
+
+Hardware-wise the different LEDs support slightly different
+output currents. The "flash" LEDs do not need to charge nor
+do they support external triggers. They are just powerful LED
+drivers.
+
+The LEDs appear as children to the PM8058 device, with the
+proper compatible string. For the PM8058 bindings see:
+mfd/qcom-pm8xxx.txt.
+
+Each LED is represented as a sub-node of the syscon device. Each
+node's name represents the name of the corresponding LED.
+
+LED sub-node properties:
+
+Required properties:
+- compatible: one of
+  "qcom,pm8058-led" (for the normal LEDs at 0x131, 0x132 and 0x133)
+  "qcom,pm8058-keypad-led" (for the "keypad" LED at 0x48)
+  "qcom,pm8058-flash-led" (for the "flash" LEDs at 0x49 and 0xFB)
+
+Optional properties:
+- label: see Documentation/devicetree/bindings/leds/common.txt
+- default-state: see Documentation/devicetree/bindings/leds/common.txt
+- linux,default-trigger: see Documentation/devicetree/bindings/leds/common.txt
+
+Example:
+
+qcom,ssbi@500000 {
+       pmicintc: pmic@0 {
+               compatible = "qcom,pm8058";
+               led@48 {
+                       compatible = "qcom,pm8058-keypad-led";
+                       reg = <0x48>;
+                       label = "pm8050:white:keypad";
+                       default-state = "off";
+               };
+               led@131 {
+                       compatible = "qcom,pm8058-led";
+                       reg = <0x131>;
+                       label = "pm8058:red";
+                       default-state = "off";
+               };
+               led@132 {
+                       compatible = "qcom,pm8058-led";
+                       reg = <0x132>;
+                       label = "pm8058:yellow";
+                       default-state = "off";
+                       linux,default-trigger = "mmc0";
+               };
+               led@133 {
+                       compatible = "qcom,pm8058-led";
+                       reg = <0x133>;
+                       label = "pm8058:green";
+                       default-state = "on";
+                       linux,default-trigger = "heartbeat";
+               };
+       };
+};