Thread (26 messages) 26 messages, 6 authors, 2020-09-15

Re: [PATCH v3 1/2] leds: mt6360: Add LED driver for MT6360

From: Gene Chen <hidden>
Date: 2020-09-10 07:49:55
Also in: linux-arm-kernel, linux-leds, linux-mediatek, lkml

Pavel Machek [off-list ref] 於 2020年9月9日 週三 上午6:25寫道:
Hi!
quoted
From: Gene Chen <redacted>

Add MT6360 LED driver include 2-channel Flash LED with torch/strobe mode,
and 4-channel RGB LED support Register/Flash/Breath Mode

Signed-off-by: Gene Chen <redacted>
---
 drivers/leds/Kconfig       |  11 +
 drivers/leds/Makefile      |   1 +
 drivers/leds/leds-mt6360.c | 681 +++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 693 insertions(+)
 create mode 100644 drivers/leds/leds-mt6360.c

+     help
+       This option enables support for dual Flash LED drivers found on
+       Mediatek MT6360 PMIC.
+       Independent current sources supply for each flash LED support torch and strobe mode.
+       Includes Low-VF and short protection.
+
80 columns. And perhaps user does not need to know about protections... and actually
about independend sources, either.
ACK
"Enable this for RGB LED and flash LED support on..."?
quoted
+static int mt6360_torch_brightness_set(struct led_classdev *lcdev, enum led_brightness level)
+{
+     struct mt6360_led *led = container_of(lcdev, struct mt6360_led, flash.led_cdev);
+     struct mt6360_priv *priv = led->priv;
+     u32 enable_mask = MT6360_TORCHEN_MASK | MT6360_FLCSEN_MASK(led->led_no);
+     u32 val = (level) ? MT6360_FLCSEN_MASK(led->led_no) : 0;
+     u32 prev = priv->fled_torch_used, curr;
+     int ret;
+
+     dev_dbg(lcdev->dev, "[%d] brightness %d\n", led->led_no, level);
+     if (priv->fled_strobe_used) {
+             dev_warn(lcdev->dev, "Please disable strobe first [%d]\n", priv->fled_strobe_used);
+             return -EINVAL;
+     }
So... how does its userland interface look like?
1. set FLED1 brightness
# echo 1 > /sys/class/leds/white:flash1/flash_brightness
2. enable FLED1 strobe
# echo 1 > /sys/class/leds/white:flash1/flash_strobe
3 . turn off FLED1 strobe (just used to gaurantee the strobe mode
flash leds must be turned off)
# echo 0 > /sys/class/leds/white:flash1/flash_strobe
Best regards,
                                                                        Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help