[PATCH v8 0/6] Enable cameras on Dell Latitude 5285 2-in-1
From: Thierry Chatard
Date: Wed Aug 26 2026 - 07:26:12 EST
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@xxxxxxxxx/
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