Re: [PATCH 3/3] arm64: dts: qcom: sm7225-fairphone-fp4: configure flash LED

From: Luca Weiss
Date: Mon Dec 12 2022 - 08:59:21 EST


On Sat Dec 10, 2022 at 6:16 PM CET, Pavel Machek wrote:
> Hi!
>
> > Configure the pm6150l flash node for the dual flash LEDs found on FP4.
>
> > +&pm6150l_flash {
> > + status = "okay";
> > +
> > + led-0 {
> > + function = LED_FUNCTION_FLASH;
> > + color = <LED_COLOR_ID_YELLOW>;
> > + led-sources = <1>;
> > + led-max-microamp = <180000>;
> > + flash-max-microamp = <1000000>;
> > + flash-max-timeout-us = <1280000>;
> > + };

Hi Pavel,

>
> I'm pretty sure the flash is not yellow.

The marketing term is Dual LED flash or Dual-tone flash, one LED is a
blue-ish white and one is a yellow-ish white, but from what I can tell,
in the original code it's always referred to as white and yellow so I
also followed that here.

Also the LEDs are right next to each other so in practise for torch just
both go on, and for camera flash I cannot really tell you but I guess
it's doing something there with the camera tuning.

See also this picture:
https://shop.fairphone.com/media/catalog/product/cache/b752d78484639b19641a8560800d919d/p/_/p_5b_main_camera_back.jpg

>
> Plus, how is the node in /sys/class/leds called? Can you make an entry
> in Documentation/leds/well-known-leds.txt and ensure the name stays
> consistent across devices?

/ # ls -al /sys/class/leds/white:flash/
total 0
drwxr-xr-x 3 0 0 0 Jan 1 00:00 .
drwxr-xr-x 4 0 0 0 Jan 1 00:00 ..
-rw-r--r-- 1 0 0 4096 Jan 1 00:00 brightness
lrwxrwxrwx 1 0 0 0 Jan 1 00:00 device -> ../../../c440000.spmi:pmic@5:led-controller@d300
-rw-r--r-- 1 0 0 4096 Jan 1 00:00 flash_brightness
-r--r--r-- 1 0 0 4096 Jan 1 00:00 flash_fault
-rw-r--r-- 1 0 0 4096 Jan 1 00:00 flash_strobe
-rw-r--r-- 1 0 0 4096 Jan 1 00:00 flash_timeout
-r--r--r-- 1 0 0 4096 Jan 1 00:00 max_brightness
-r--r--r-- 1 0 0 4096 Jan 1 00:00 max_flash_brightness
-r--r--r-- 1 0 0 4096 Jan 1 00:00 max_flash_timeout
drwxr-xr-x 2 0 0 0 Jan 1 00:00 power
lrwxrwxrwx 1 0 0 0 Jan 1 00:00 subsystem -> ../../../../../../../../../class/leds
-rw-r--r-- 1 0 0 4096 Jan 1 00:00 uevent
/ # ls -al /sys/class/leds/yellow:flash/
total 0
drwxr-xr-x 3 0 0 0 Jan 1 00:00 .
drwxr-xr-x 4 0 0 0 Jan 1 00:00 ..
-rw-r--r-- 1 0 0 4096 Jan 1 00:00 brightness
lrwxrwxrwx 1 0 0 0 Jan 1 00:00 device -> ../../../c440000.spmi:pmic@5:led-controller@d300
-rw-r--r-- 1 0 0 4096 Jan 1 00:00 flash_brightness
-r--r--r-- 1 0 0 4096 Jan 1 00:00 flash_fault
-rw-r--r-- 1 0 0 4096 Jan 1 00:00 flash_strobe
-rw-r--r-- 1 0 0 4096 Jan 1 00:00 flash_timeout
-r--r--r-- 1 0 0 4096 Jan 1 00:00 max_brightness
-r--r--r-- 1 0 0 4096 Jan 1 00:00 max_flash_brightness
-r--r--r-- 1 0 0 4096 Jan 1 00:00 max_flash_timeout
drwxr-xr-x 2 0 0 0 Jan 1 00:00 power
lrwxrwxrwx 1 0 0 0 Jan 1 00:00 subsystem -> ../../../../../../../../../class/leds
-rw-r--r-- 1 0 0 4096 Jan 1 00:00 uevent

There's also already flash LED on PinePhone and some MSM8916 devices,
but I think they also have white:flash based on the dt.

>
> Best regards,
> Pavel
> --
> People of Russia, stop Putin before his war on Ukraine escalates.