From nobody Mon Jun 15 05:38:18 2026 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [185.203.201.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3D2CF36075D for ; Wed, 8 Apr 2026 06:53:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.203.201.7 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775631184; cv=none; b=WbzekaI5SwN3JQXKeHvU8uvLzLpOpQCzBRofYJePEI5GpBCFgzt+w6tPQ1ZxlnlzNb47XTMd6oi4PTHx0uH8lC0FULoV3ZQJUre8rK7/z03GAdoQgRf9ypYv4rv4CifRIrtI5dQg7LGHUWP9GE/gkIOwzbHfgDXapkp2hS0NWR4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775631184; c=relaxed/simple; bh=HeuEeKb5UwovZWdE55gQ2L8XYl59tVQHoJ0inZe0Jn0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc; b=M32+kr2XpC6G9f5ht4PjzSaq5gpjSpt1Agz6jypow15wplXdZpHNhpdf+pLdPlt9SxCuE+EQvReXnSvBxAW11/uRi3nFNPMPnTTewmXVWoW1caSxGB8BIAgFh+dvGyrr8bo9CpMjAz8JKHmmFcFtqXYzKdjOnCfXIsXoSkd/16c= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de; spf=pass smtp.mailfrom=pengutronix.de; arc=none smtp.client-ip=185.203.201.7 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=pengutronix.de Received: from ptz.office.stw.pengutronix.de ([2a0a:edc0:0:900:1d::77] helo=ratatoskr.trumtrar.info) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1wAMmR-0005la-9Q; Wed, 08 Apr 2026 08:52:51 +0200 From: Steffen Trumtrar Date: Wed, 08 Apr 2026 08:51:10 +0200 Subject: [PATCH v3] leds: rgb: lp5860: add enable-gpio Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260408-v6-19-topic-ti-lp5860-enable-gpio-v3-1-da59a9005386@pengutronix.de> X-B4-Tracking: v=1; b=H4sIAN761WkC/5XPTW7DIBCG4atYrDsRP7ahVlX1HlUXGMYOUgwuE JQq8t3rkEWlZtMuv1m8j+ZKEkaHiQzNlUQsLrng9yGeGmKO2s8Izu6bcMp7ypmE0gN7hhxWZyA 7OK2d6img1+MJYV5dACUM7TtuRast2TtrxMldqvH+cd8RP887le9HsmBKulJD81KllooqtQ9SU cAAGZeoKCrZ6bcV/XzOMXh3OVh8vZGjTggmLIvLQ1PkgUI0jNzwo0s5xK/6b2FV/8drhQGFqUO FFsfOyvYXXonCf7KC0b9k+Z4VkzE9kxNSoR+y27Z9A/6ukayrAQAA X-Change-ID: 20260217-v6-19-topic-ti-lp5860-enable-gpio-83c0652d34ad To: Lee Jones , Pavel Machek , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Steffen Trumtrar Cc: linux-leds@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Steffen Trumtrar X-Mailer: b4 0.15.1 X-SA-Exim-Connect-IP: 2a0a:edc0:0:900:1d::77 X-SA-Exim-Mail-From: s.trumtrar@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org The VIO_EN pin can either be connected with VIO power supply or GPIO. Get the GPIO from DT if provided and set it on chip enable and disable. Signed-off-by: Steffen Trumtrar --- Changes in v3: - remove unnecessary validation checks - update dep to newer lp5860 series - Link to v2: https://lore.kernel.org/r/20260310-v6-19-topic-ti-lp5860-enab= le-gpio-v2-0-3fcc617fe03a@pengutronix.de Changes in v2: - add acked-by - updated deps to newer lp5860 series - rebased to v7.0-rc1 - Link to v1: https://lore.kernel.org/r/20260217-v6-19-topic-ti-lp5860-enab= le-gpio-v1-0-f5e8edeb5d74@pengutronix.de --- drivers/leds/rgb/leds-lp5860-core.c | 9 +++++++++ drivers/leds/rgb/leds-lp5860.h | 1 + 2 files changed, 10 insertions(+) diff --git a/drivers/leds/rgb/leds-lp5860-core.c b/drivers/leds/rgb/leds-lp= 5860-core.c index 31eebaf0269ab..5bccca47b20a1 100644 --- a/drivers/leds/rgb/leds-lp5860-core.c +++ b/drivers/leds/rgb/leds-lp5860-core.c @@ -5,6 +5,7 @@ * Author: Steffen Trumtrar */ =20 +#include #include #include #include @@ -59,6 +60,8 @@ static int lp5860_set_mc_brightness(struct led_classdev *= cdev, =20 static int lp5860_chip_enable(struct lp5860 *lp, bool enable) { + gpiod_direction_output(lp->enable_gpiod, enable); + return regmap_write(lp->regmap, LP5860_REG_CHIP_EN, enable); } =20 @@ -189,6 +192,12 @@ int lp5860_device_init(struct device *dev) struct lp5860 *lp =3D dev_get_drvdata(dev); int ret; =20 + lp->enable_gpiod =3D devm_gpiod_get_optional(lp->dev, "enable", GPIOD_ASI= S); + if (IS_ERR(lp->enable_gpiod)) + return PTR_ERR(lp->enable_gpiod); + + gpiod_set_consumer_name(lp->enable_gpiod, "LP5860 VIO enable"); + ret =3D lp5860_chip_enable(lp, LP5860_CHIP_ENABLE); if (ret) return ret; diff --git a/drivers/leds/rgb/leds-lp5860.h b/drivers/leds/rgb/leds-lp5860.h index b3ad8c46720cd..48a6afc4227d6 100644 --- a/drivers/leds/rgb/leds-lp5860.h +++ b/drivers/leds/rgb/leds-lp5860.h @@ -257,6 +257,7 @@ struct lp5860_led { struct lp5860 { struct device *dev; struct regmap *regmap; + struct gpio_desc *enable_gpiod; unsigned int leds_count; =20 DECLARE_FLEX_ARRAY(struct lp5860_led, leds); --- base-commit: 559f264e403e4d58d56a17595c60a1de011c5e20 change-id: 20260217-v6-19-topic-ti-lp5860-enable-gpio-83c0652d34ad prerequisite-message-id: <20260403-v6-14-topic-ti-lp5860-v8-1-e127e80e875a@= pengutronix.de> prerequisite-patch-id: 2fc7123c98bf6c53d946af75269ecb1a7b421f14 Best regards, -- =20 Steffen Trumtrar