summaryrefslogtreecommitdiff
path: root/drivers/leds/flash
diff options
context:
space:
mode:
authorDylan Van Assche <me@dylanvanassche.be>2023-05-07 19:29:41 +0200
committerLee Jones <lee@kernel.org>2023-05-25 12:16:20 +0100
commit91fe1bda4672c31aa93d018176e6cf62c6ccb657 (patch)
tree628d25278a4bb8e430cbec74a99c112f19b811fd /drivers/leds/flash
parent0ae8dc1a1a998c7b6b866cb83de83bea5740fb8e (diff)
leds: flash: leds-qcom-flash: Disable LED when changing brightness
The Qualcomm PMI8998 PMIC requires the LED to be disabled when configuring the brightness. Always disable the LED when setting the brightness and re-enable it afterwards. Signed-off-by: Dylan Van Assche <me@dylanvanassche.be> Link: https://lore.kernel.org/r/20230507172941.364852-3-me@dylanvanassche.be Signed-off-by: Lee Jones <lee@kernel.org>
Diffstat (limited to 'drivers/leds/flash')
-rw-r--r--drivers/leds/flash/leds-qcom-flash.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/leds/flash/leds-qcom-flash.c b/drivers/leds/flash/leds-qcom-flash.c
index 16045b5d89b1..c8d41a3caf38 100644
--- a/drivers/leds/flash/leds-qcom-flash.c
+++ b/drivers/leds/flash/leds-qcom-flash.c
@@ -417,6 +417,14 @@ static int qcom_flash_led_brightness_set(struct led_classdev *led_cdev,
bool enable = !!brightness;
int rc;
+ rc = set_flash_strobe(led, SW_STROBE, false);
+ if (rc)
+ return rc;
+
+ rc = set_flash_module_en(led, false);
+ if (rc)
+ return rc;
+
rc = set_flash_current(led, current_ma, TORCH_MODE);
if (rc)
return rc;