[PATCH 0/4] Lenovo ThinkPad X1 Carbon Gen 14 IR camera: ST VD55G1 on Intel IPU7
From: Ruslan Koreev
Date: Thu Sep 24 2026 - 14:27:31 EST
The ThinkPad X1 Carbon Gen 14 (Panther Lake, Intel IPU7) has a second
MIPI camera for Windows Hello: an ST VD55G1 monochrome global-shutter
sensor, enumerated by ACPI as TBE20A1, with one CSI-2 lane, powered
through an INT3472 discrete device that provides a power enable GPIO, a
reset GPIO, a privacy LED and a 19.2 MHz clock. The RGB camera of the
same laptop (Sony IMX471, TBE20A0) is already supported.
Patches 1 to 3 wire the sensor up on ACPI: the INT3472 supply mapping,
the ipu-bridge entry and ACPI matching in the vd55g1 driver, which also
has to defer its probe while the bridge has not attached the endpoint
yet. Patch 4 adds monochrome pixel formats to the IPU7 ISYS, which only
offered Bayer, YUV and RGB formats, so that a mono sensor can stream at
all, and keeps the mono codes out of the Bayer order conversion in the
CSI-2 cropping path, which warns about them otherwise.
Tested on that laptop with Fedora 44 (kernel 7.2.5 with these changes
carried as out-of-tree modules): the sensor probes, libcamera negotiates
Y8 and streams 804x704 at 58 fps, Y10 and Y10P stream with plain V4L2,
and with the IR illuminator on the frames are good enough for face
authentication with howdy.
Peter Marshall's series "media: i2c: st-vd55g1: Genericize driver and
add VD55G0 support" (v2 on linux-media, 18 September 2026) adds the
VD55G0 (SMO55F0) to the same places: its patches 3 and 4 add entries
next to the ipu-bridge and INT3472 lines added here, patch 6 drops the
endpoint check in vd55g1 in favour of the deferral done by
v4l2_fwnode_endpoint_parse(), and patch 11 adds an ACPI match table.
The overlap is a few adjacent lines either way; if that series lands
first, patch 3 here reduces to adding TBE20A1 to its table. Patches 1,
2 and 4 do not depend on it.
Ruslan Koreev (4):
platform/x86: int3472: Map the VD55G1 power enable GPIO to "vana"
media: ipu-bridge: Add the ST VD55G1 (TBE20A1)
media: i2c: vd55g1: Add ACPI support for the Lenovo TBE20A1 HID
media: staging/ipu7: Add monochrome pixel formats
drivers/media/i2c/vd55g1.c | 15 +++++++++++----
drivers/media/pci/intel/ipu-bridge.c | 2 ++
drivers/platform/x86/intel/int3472/discrete.c | 1 +
drivers/staging/media/ipu7/ipu7-isys-csi2.c | 1 +
drivers/staging/media/ipu7/ipu7-isys-subdev.c | 5 +++++
drivers/staging/media/ipu7/ipu7-isys-video.c | 6 ++++++
6 files changed, 26 insertions(+), 4 deletions(-)
base-commit: 62f4c998b297cf233997a2b4cd6fc2d2df0319c9
--
2.55.0