From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dl1-f45.google.com (mail-dl1-f45.google.com [74.125.82.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8366C3B6344 for ; Mon, 27 Apr 2026 14:44:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.45 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777301100; cv=none; b=BsPKKEf02f6x2EEZfPOBNEYF1W2ftG4Bc2UIpW3l/L/jS/CkgUozpq7O20aAAM/iiCoa/WkXROdjwk7F6RREMRbginAaql4B4oYuLumAmquJ2xBKdHWjsUxi+Txm5yDhcXoIZUAABz0VqwzDedUBfWpxrM+0YIQHjCrAn6vdEH8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777301100; c=relaxed/simple; bh=Wj2asEhQquK+fSwcH/j3WIHVOoV8HWt1sMZeo3rKa6A=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ZcyNesilAxHsB20USlmsCWuKEGY0vI0fyuFFW71qBSHWq7BsyMz6Kmah1OG6F2x0Pw096dtgFCx7yQFPcnBrRx9huUKndqBZuno3gPeBJvReGEpdymCWlVbbwk+7Usq78JD6eF33fUEHqDzCdE1T9UOLfyuE+vIGrRM3PePdI4g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=OT1aX2p5; arc=none smtp.client-ip=74.125.82.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="OT1aX2p5" Received: by mail-dl1-f45.google.com with SMTP id a92af1059eb24-12c637089ccso831164c88.1 for ; Mon, 27 Apr 2026 07:44:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777301097; x=1777905897; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ly1kTdTsdBgzdp71diysp7YHSBV9sCg3eeeHrpVV4BM=; b=OT1aX2p5MVzhqIk2M5I6GE/NJ6RXuJpZs7uqB0ymjAqlvzamJ1t44SC+7p5tRBGCr+ AwYxGbdncjUyNECTGe9gYkMAtnYSclbwrxN7SR5qqLYL/FUU9iddnwsxGgIFqBUPlJzo OhgT38PXVpScmCFXlL49NWGzEFvVleYPUtbxDdziBy8NoiA6oV8NGOKNfT3CjjB3Enf9 oxfKIjnnsP2htEQiX4pMOU16lFtuHoIMSsOrbAxcw9PGQ7Edab/OThj02Ll1a/JWGcAK WYhgwJ0OmyZitGrrCCOEhVPQs0XXb7yetRodty1nrHnqkA1Xb6YITxQU26W6r9ykTcFb YyUA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777301097; x=1777905897; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=ly1kTdTsdBgzdp71diysp7YHSBV9sCg3eeeHrpVV4BM=; b=g0fE/KNjXXTz6Nz5uztzFnySEDBFMegrA7c6Kv3TQZa1jjGEhBlzRQaJOESKpBo/22 oaZ8WziiZVoDbAlTnCRJ2HoSDTYSfG7HR2vkBLtLpiSjNvMUZ28nWz4gBGHCc1AQu7+K EoEnyOgNJovdHAxZYsTqvAAGa1bz2EjvEo3dNk2vAtMn5miQWOq3S4xjTd/4nAdNIB/j 9pZy/orJR8UUF2czdQmtSX3UYOSStD6MGsqfwG6dk0yASXC4Nml4JG5sJWgT9qXcCssI fFeVX/Laf5S6PW/U6RdbScdnbRQjSyZqPXWd93GvWsHSBZ+sVDg0APL+LZaKA7wbbFlP kMBg== X-Gm-Message-State: AOJu0YwAMRndMlo5A3wJGx3ey6hEoSfKk5/nixP7QIyOj4um3cmjP52A IjBt3MKA/x/L5Vj0+IMCixwCjN6+hG9C0w0rjnwg6akqDS3kMT9JmPPGWI65o7PB X-Gm-Gg: AeBDieuIT2OjWeEpRM6bDgcQmanq53BjWDuasWv7S89UWzWQq3GzXoKkSpWk0/k8fln vFev92FIJRPI98j3Z8vP0dLuT4s9/wqJsnwhOOi+NGvluG12vI/fbgGPcdDBi+z40lFwc8W+rjO FMvKmB7UeutaLGSojlckRvxDNku9Lem5nbjIbEE7qyhj4IqFVm2aYTSNgFnumZgappZ6P/RIHZa RC7ttMaZe0DigpgeLgaNeBZ4rrgZ+QglgaWncyFBY75bpHdOyfErosKjLIqPlUkD9wL/2RVC+rQ hEXJpw4MCXLziCYTEI1TdEqhzt108Efsph5OD61SdzLNZ8eTdnez1KuTAmakejCRwmVdogbUb32 /AdzyBSmW4w674/CefqYDK3HTbHnQPiCJv94vlcq0s8DjcOalBhI/pHr7CGbI0lN8H23ha+Poxz i4m1M9EBC50XxAtOrh8q+u3tRtxfwy5/A= X-Received: by 2002:a05:7022:f40b:b0:12d:ce36:892a with SMTP id a92af1059eb24-12dce3691famr5525396c88.9.1777301097432; Mon, 27 Apr 2026 07:44:57 -0700 (PDT) Received: from arch.localdomain ([2409:8a28:a53:1231::1002]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-12dcbe079c3sm11818592c88.2.2026.04.27.07.44.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Apr 2026 07:44:57 -0700 (PDT) From: Jun Yan To: linux-kernel@vger.kernel.org Cc: lee@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, luccafachinetti@gmail.com, pzalewski@thegoodpenguin.co.uk, daniel@zonque.org, Jun Yan Subject: [PATCH 4/5] leds: is31fl32xx: Add shutdown pin to exit hardware shutdown mode Date: Mon, 27 Apr 2026 22:43:39 +0800 Message-ID: <20260427144340.292952-5-jerrysteve1101@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260427144340.292952-1-jerrysteve1101@gmail.com> References: <20260427144340.292952-1-jerrysteve1101@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The IS31FL32XX series features an SDB shutdown pin. Driving it low (active low) places the chip into hardware shutdown mode for power saving, while all register contents are preserved and registers are not reset. Drive the pin logic low during probe() to exit hardware shutdown mode. Signed-off-by: Jun Yan --- drivers/leds/leds-is31fl32xx.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/leds/leds-is31fl32xx.c b/drivers/leds/leds-is31fl32xx.c index fe07acbb103a..d2be996dd4ea 100644 --- a/drivers/leds/leds-is31fl32xx.c +++ b/drivers/leds/leds-is31fl32xx.c @@ -60,6 +60,7 @@ struct is31fl32xx_led_data { struct is31fl32xx_priv { const struct is31fl32xx_chipdef *cdef; struct i2c_client *client; + struct gpio_desc *shutdown_gpio; unsigned int num_leds; struct is31fl32xx_led_data leds[]; }; @@ -421,6 +422,11 @@ static int is31fl32xx_parse_dt(struct device *dev, const struct is31fl32xx_chipdef *cdef = priv->cdef; int ret = 0; + priv->shutdown_gpio = devm_gpiod_get_optional(dev, "shutdown", GPIOD_OUT_LOW); + if (IS_ERR(priv->shutdown_gpio)) + return dev_err_probe(dev, PTR_ERR(priv->shutdown_gpio), + "Failed to get shutdown gpio\n"); + if ((cdef->output_frequency_setting_reg != IS31FL32XX_REG_NONE) && of_property_read_bool(dev_of_node(dev), "issi,22khz-pwm")) { -- 2.53.0