From: Thierry Chatard <tchatard@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: hansg@kernel.org, lee@kernel.org,
platform-driver-x86@vger.kernel.org,
ilpo.jarvinen@linux.intel.com, djrscally@gmail.com,
linux-media@vger.kernel.org, mchehab@kernel.org,
sakari.ailus@linux.intel.com, jacopo.mondi@ideasonboard.com,
nicholas@rothemail.net, andriy.shevchenko@intel.com,
v.vitovt@gmail.com, Thierry Chatard <tchatard@gmail.com>
Subject: [PATCH v8 0/6] Enable cameras on Dell Latitude 5285 2-in-1
Date: Wed, 26 Aug 2026 13:24:45 +0200 [thread overview]
Message-ID: <20260826112452.13539-1-tchatard@gmail.com> (raw)
This series enables the front (OV5670/INT3479) and rear (OV8858/INT3477)
cameras on the Dell Latitude 5285 2-in-1 under Linux.
Per Documentation/process/coding-assistants.rst: this work was developed
with significant help from an AI coding assistant (Claude Code, by
Anthropic). I used it to help reverse-engineer the ACPI/TPS68470 bring-up,
iterate on the board data, and draft these patches. I have reviewed and
tested all of it on the actual hardware and take full responsibility for
the result.
The series spans two trees: patches 1-4 target platform-drivers-x86 and
patches 5-6 target linux-media. All six are needed for a working system.
Changes since v7 (addressing Andy Shevchenko's review):
- Patch 1 (intel_lpss): rework the quirk to be data-driven. Match the
machine by DMI and the device (INT3446) by ACPI ID, carry
QUIRK_IGNORE_RESOURCE_CONFLICTS in the ACPI match data, and apply it to
the per-device info in probe, mirroring the PCI counterpart. Drop the
duplicate spt_i2c_info_ignore_conflicts struct and the machine-specific
dev_info(). Fix the include ordering.
- New patch 2 (int3472: tps68470): split the int -> unsigned int loop
counter change out of the clock-consumer patch into its own cleanup.
- Patch 3 (int3472: tps68470, was patch 2): trim the commit message; no
code change beyond the counter split above.
- Patch 6 (ov8858, was patch 5): use a C99 initialiser for the ACPI match
entry and drop the comma after the sentinel.
On the open question from the review: I kept the per-table
gpiod_add_lookup_table() loop rather than switching to
gpiod_add_lookup_tables(). There is no gpiod_remove_lookup_tables()
counterpart for the error-unwind path, the board data uses a counted (not
NULL-terminated) array, and the singular form is what the rest of the tree
uses, including int3472/discrete.c.
Earlier changelogs (v2-v7) are in the v7 posting:
https://lore.kernel.org/all/20260819140107.1329091-1-tchatard@gmail.com/
Tested on Ubuntu 25.10 (kernel 6.17.0-22-generic) and Ubuntu 26.04
(kernel 7.0.0-30-generic). Both cameras working in Zoom, Chrome, and GNOME
Camera via PipeWire. Also independently tested on the closely-related Dell
Latitude 5290 2-in-1 (same IPU3/TPS68470/OV5670/OV8858/DW9714 stack) by
Vitalii Tytskyi:
https://github.com/vitovt/dell-5290-camera-kernel/tree/master/patches
Thierry Chatard (6):
platform/x86: intel_lpss: add resource conflict quirk for Dell Latitude 5285
platform/x86: int3472: tps68470: use unsigned int for GPIO lookup loop counters
platform/x86: int3472: tps68470: fix clock consumer registration for Dell Latitude 5285
platform/x86: int3472: tps68470: add board data for Dell Latitude 5285
media: ipu-bridge: add sensor configuration for OV8858 (INT3477)
media: ov8858: add ACPI device ID INT3477
next reply other threads:[~2026-08-26 11:25 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-26 11:24 Thierry Chatard [this message]
2026-08-26 11:24 ` [PATCH v8 1/6] platform/x86: intel_lpss: add resource conflict quirk for Dell Latitude 5285 Thierry Chatard
2026-08-26 11:24 ` [PATCH v8 2/6] platform/x86: int3472: tps68470: use unsigned int for GPIO lookup loop counters Thierry Chatard
2026-08-26 11:24 ` [PATCH v8 3/6] platform/x86: int3472: tps68470: fix clock consumer registration for Dell Latitude 5285 Thierry Chatard
2026-08-26 11:24 ` [PATCH v8 4/6] platform/x86: int3472: tps68470: add board data " Thierry Chatard
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=20260826112452.13539-1-tchatard@gmail.com \
--to=tchatard@gmail.com \
--cc=andriy.shevchenko@intel.com \
--cc=djrscally@gmail.com \
--cc=hansg@kernel.org \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=jacopo.mondi@ideasonboard.com \
--cc=lee@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=nicholas@rothemail.net \
--cc=platform-driver-x86@vger.kernel.org \
--cc=sakari.ailus@linux.intel.com \
--cc=v.vitovt@gmail.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