97d48d1e34
[ci:skip-build]: already built successfully in CI
41 lines
1.8 KiB
Diff
41 lines
1.8 KiB
Diff
From 0f3fc1e0f46c0a02e049e3500220d156630bcfc8 Mon Sep 17 00:00:00 2001
|
|
From: Merlijn Wajer <merlijn@wizzup.org>
|
|
Date: Sun, 12 Dec 2021 15:18:59 +0100
|
|
Subject: [PATCH] leds: lp55xx: initialise output direction from dts
|
|
|
|
Commit a5d3d1adc95f ("leds: lp55xx: Initialize enable GPIO direction to
|
|
output") attempts to fix this, but the fix did not work since at least
|
|
for the Nokia N900 the value needs to be set to HIGH, per the device
|
|
tree. So rather than hardcoding the value to a potentially invalid value
|
|
for some devices, let's set direction in lp55xx_init_device.
|
|
|
|
Fixes: a5d3d1adc95f ("leds: lp55xx: Initialize enable GPIO direction to output")
|
|
Fixes: 92a81562e695 ("leds: lp55xx: Add multicolor framework support to lp55xx")
|
|
Fixes: ac219bf3c9bd ("leds: lp55xx: Convert to use GPIO descriptors")
|
|
Signed-off-by: Merlijn Wajer <merlijn@wizzup.org>
|
|
---
|
|
drivers/leds/leds-lp55xx-common.c | 4 +++-
|
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/drivers/leds/leds-lp55xx-common.c b/drivers/leds/leds-lp55xx-common.c
|
|
index d1657c46ee2f..9fdfc1b9a1a0 100644
|
|
--- a/drivers/leds/leds-lp55xx-common.c
|
|
+++ b/drivers/leds/leds-lp55xx-common.c
|
|
@@ -439,6 +439,8 @@ int lp55xx_init_device(struct lp55xx_chip *chip)
|
|
return -EINVAL;
|
|
|
|
if (pdata->enable_gpiod) {
|
|
+ gpiod_direction_output(pdata->enable_gpiod, 0);
|
|
+
|
|
gpiod_set_consumer_name(pdata->enable_gpiod, "LP55xx enable");
|
|
gpiod_set_value(pdata->enable_gpiod, 0);
|
|
usleep_range(1000, 2000); /* Keep enable down at least 1ms */
|
|
@@ -694,7 +696,7 @@ struct lp55xx_platform_data *lp55xx_of_populate_pdata(struct device *dev,
|
|
of_property_read_u8(np, "clock-mode", &pdata->clock_mode);
|
|
|
|
pdata->enable_gpiod = devm_gpiod_get_optional(dev, "enable",
|
|
- GPIOD_OUT_LOW);
|
|
+ GPIOD_ASIS);
|
|
if (IS_ERR(pdata->enable_gpiod))
|
|
return ERR_CAST(pdata->enable_gpiod);
|
|
|