From: Rillian Grant <rillian.grant@gmail.com>
To: Lee Jones <lee@kernel.org>, Pavel Machek <pavel@kernel.org>
Cc: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Ruslan Koreev <koreev.r@gmail.com>,
linux-leds@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
Rillian Grant <rillian.grant@gmail.com>
Subject: [PATCH v3 0/4] leds: flash: LM3643 dual LED flash driver
Date: Sun, 11 Oct 2026 20:09:42 +0100 [thread overview]
Message-ID: <20261011191026.149338-1-rillian.grant@gmail.com> (raw)
This series adds a flash LED driver for the Texas Instruments
LM3643. I wrote it to support the Windows Hello NIR illuminator on my
ThinkPad X9-15 Gen 1, which has a single LED connected to both current
sources. The driver has also been tested by Ruslan Koreev on a ThinkPad
X1 Carbon Gen 14.
On both ThinkPad models the chip is described by ACPI but has no _DSD.
The original RFC asked how to supply the missing child nodes. This
series includes DMI-matched software nodes for both laptop models.
1/4 DT binding
2/4 driver
3/4 DMI match table and values for the X1 Carbon
4/4 DMI entry for the X9-15 Gen 1
Changes in v3:
- dt-bindings: document the enable-gpios (HWEN), flash-gpios (STROBE)
and vin-supply (IN) connections (Krzysztof Kozlowski)
- dt-bindings: drop redundant minimum: 0, use led-controller as the node
name in the example and tidy formatting (Krzysztof Kozlowski)
- driver: enable the optional vin-supply and drive the optional HWEN
GPIO high at probe
- driver: reject an out-of-range max-brightness rather than clamping after
registration (previously LED core applied max-brightness exposing sysfs
before the clamp)
- driver: allow a torch output to be switched off while the device is
flashing (previously returned -EBUSY)
- driver: take the chip lock when claiming current outputs
- driver: fix indentation in lm3643_torch_get_brightness()
- 3/4, 4/4: use DMI_EXACT_MATCH for the DMI entries
- 3/4: log use of the DMI description with dev_dbg() instead of
dev_info()
Changes in v2:
- Rebased onto leds/for-leds-next
- dt-bindings: make flash-max-microamp, led-max-microamp and
flash-max-timeout-us required
- driver: return device to standby state when the last output is
switched off (squashed fix provided by Ruslan Koreev)
- New 3/4: DMI mechanism and entry for the X1 Carbon developed by
Ruslan. Plus a minor update to provide a reg property for consistency
with the DT bindings.
- New 4/4: DMI entry for the X9-15 Gen 1 and update struct names to be
model-specific.
v2: https://lore.kernel.org/all/20260928094302.86966-1-rillian.grant@gmail.com/
v1: https://lore.kernel.org/all/20260821083620.68324-1-rillian.grant@gmail.com/
Rillian Grant (3):
dt-bindings: leds: Document TI LM3643 dual LED flash driver
leds: flash: Add support for the TI LM3643 dual LED flash driver
leds: flash: lm3643: Describe the LED on the Lenovo ThinkPad X9-15 Gen
1
Ruslan Koreev (1):
leds: flash: lm3643: Describe the LED of ACPI boards without LED nodes
.../devicetree/bindings/leds/ti,lm3643.yaml | 143 +++
MAINTAINERS | 7 +
drivers/leds/flash/Kconfig | 12 +
drivers/leds/flash/Makefile | 1 +
drivers/leds/flash/leds-lm3643.c | 929 ++++++++++++++++++
5 files changed, 1092 insertions(+)
create mode 100644 Documentation/devicetree/bindings/leds/ti,lm3643.yaml
create mode 100644 drivers/leds/flash/leds-lm3643.c
base-commit: 05b4738b0078f7d6f154f68068a11c8a0635e9df
--
2.56.0
next reply other threads:[~2026-10-11 19:10 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-11 19:09 Rillian Grant [this message]
2026-10-11 19:09 ` [PATCH v3 1/4] dt-bindings: leds: Document TI LM3643 dual LED flash driver Rillian Grant
2026-10-11 19:14 ` sashiko-bot
2026-10-12 9:51 ` Krzysztof Kozlowski
2026-10-11 19:09 ` [PATCH v3 2/4] leds: flash: Add support for the " Rillian Grant
2026-10-11 19:20 ` sashiko-bot
2026-10-13 9:31 ` Rillian Grant
2026-10-11 19:09 ` [PATCH v3 3/4] leds: flash: lm3643: Describe the LED of ACPI boards without LED nodes Rillian Grant
2026-10-11 19:20 ` sashiko-bot
2026-10-13 9:38 ` Rillian Grant
2026-10-11 19:09 ` [PATCH v3 4/4] leds: flash: lm3643: Describe the LED on the Lenovo ThinkPad X9-15 Gen 1 Rillian Grant
2026-10-11 19:15 ` sashiko-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261011191026.149338-1-rillian.grant@gmail.com \
--to=rillian.grant@gmail.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=koreev.r@gmail.com \
--cc=krzk+dt@kernel.org \
--cc=lee@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-leds@vger.kernel.org \
--cc=pavel@kernel.org \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.