mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ruslan Koreev <koreev.r@gmail.com>
To: sakari.ailus@linux.intel.com, benjamin.mugnier@foss.st.com,
	sylvain.petinot@foss.st.com, dan.scally@ideasonboard.com
Cc: mchehab@kernel.org, hansg@kernel.org,
	ilpo.jarvinen@linux.intel.com, gregkh@linuxfoundation.org,
	linux-media@vger.kernel.org, platform-driver-x86@vger.kernel.org,
	linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
	Peter Marshall <pm@petermarshall.ca>,
	Ruslan Koreev <koreev.r@gmail.com>
Subject: [PATCH 0/4] Lenovo ThinkPad X1 Carbon Gen 14 IR camera: ST VD55G1 on Intel IPU7
Date: Thu, 24 Sep 2026 20:18:16 +0300	[thread overview]
Message-ID: <20260924171820.1179823-1-koreev.r@gmail.com> (raw)

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


             reply	other threads:[~2026-09-24 17:18 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-24 17:18 Ruslan Koreev [this message]
2026-09-24 17:18 ` [PATCH 1/4] platform/x86: int3472: Map the VD55G1 power enable GPIO to "vana" Ruslan Koreev
2026-09-24 17:18 ` [PATCH 2/4] media: ipu-bridge: Add the ST VD55G1 (TBE20A1) Ruslan Koreev
2026-09-24 17:18 ` [PATCH 3/4] media: i2c: vd55g1: Add ACPI support for the Lenovo TBE20A1 HID Ruslan Koreev
2026-09-24 17:18 ` [PATCH 4/4] media: staging/ipu7: Add monochrome pixel formats Ruslan Koreev

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=20260924171820.1179823-1-koreev.r@gmail.com \
    --to=koreev.r@gmail.com \
    --cc=benjamin.mugnier@foss.st.com \
    --cc=dan.scally@ideasonboard.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hansg@kernel.org \
    --cc=ilpo.jarvinen@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=mchehab@kernel.org \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=pm@petermarshall.ca \
    --cc=sakari.ailus@linux.intel.com \
    --cc=sylvain.petinot@foss.st.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®