All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hans de Goede <hansg@kernel.org>
To: Thierry Chatard <tchatard@gmail.com>, linux-kernel@vger.kernel.org
Cc: linux-media@vger.kernel.org, platform-driver-x86@vger.kernel.org,
	lee@kernel.org, djrscally@gmail.com,
	ilpo.jarvinen@linux.intel.com, mchehab@kernel.org,
	sakari.ailus@linux.intel.com, jacopo.mondi@ideasonboard.com,
	nicholas@rothemail.net
Subject: Re: [PATCH v2 0/5] Enable dual cameras on Dell Latitude 5285 2-in-1
Date: Mon, 13 Apr 2026 11:45:54 +0200	[thread overview]
Message-ID: <25fd6ad5-0da9-485b-b507-9d1dc080cc86@kernel.org> (raw)
In-Reply-To: <20260324214129.17300-1-tchatard@gmail.com>

Hi Thierry,

Thank you for your work on this.

On 24-Mar-26 10:41 PM, Thierry Chatard wrote:
> Changes in v2:
> - patch 2: split trailing statements in aml_parse_int() onto separate
>   lines (checkpatch); add kernel-doc @param descriptions to
>   aml_parse_int(), dell5285_gnvs_from_table(), and dell5285_gnvs_find()
>   (kernel test robot); add Reported-by/Closes tags
> - patch 3: wrap long lines in commit message (checkpatch)
> 
> The Dell Latitude 5285 2-in-1 has two cameras (OV5670 front, OV8858
> rear) connected through a TPS68470 PMIC/clock/GPIO hub. All five patches
> are required for a working system; each is self-contained and
> bisect-safe.
> 
> Hardware topology
> -----------------
>   Front camera:  OV5670 (ACPI INT3479), I2C4 / INT3446
>   Rear camera:   OV8858 (ACPI INT3477), I2C2 / i2c_designware.3
>   PMIC:          TPS68470 (ACPI INT3472:05), addr 0x4D, on I2C2
>   ISP:           Intel IPU3 (ipu3_cio2 + ipu3-imgu)
> 
> The OV8858 is daisy-chained behind the TPS68470 S_I2C passthrough port.
> The TPS68470 VSIO regulator controls S_I2C_CTL (reg 0x43); marking it
> always_on keeps the passthrough active from boot so OV8858 is reachable
> on I2C2 at probe time.
> > Four problems must be fixed in combination:

Hmm, it is unfortunate that this 2-in-1 requires the first 2 workarounds,
especially the second workaround.

Patches 3-5 look fine at a quick glance.

> patch 1/5 - intel_lpss: The BIOS claims the same MMIO region for both
>   GEXP and INT3446 (I2C4). Without this quirk the kernel rejects INT3446
>   as a resource conflict and the front camera's I2C bus never comes up.

This one is a bit unfortunate but this is a known issue on similar
(Microsoft Surface Go series) devices with an IPU3 camera like here,
with a pre-existing quirk mechanism to deal with this, so I guess this is
acceptable.

> patch 2/5 - GNVS fixup: With I2C4 available, ipu_bridge still does not
>   create the front camera client because _DEP on INT3479 returns the
>   root PCI bus instead of the INT3472 handle. Root cause: BIOS leaves
>   GNVS fields C0TP, L0CL, L1CL at zero. Fix: scan DSDT/SSDTs for the
>   GNVS OperationRegion at TPS68470 probe time and write 0x02 (19.2 MHz)
>   into all three fields before ipu_bridge evaluates _DEP.

This one really is nasty. I'll reply in detail to the patch itself.

Regards,

Hans



> patch 3/5 - TPS68470 board data: No board data existed for this machine,
>   so no PMIC regulators or GPIOs were configured for either sensor.
> 
> patch 4/5 - ipu-bridge: INT3477 (OV8858) was unknown to ipu_bridge, so
>   it was skipped at CSI-2 enumeration.
> 
> patch 5/5 - ov8858 driver: No ACPI match for INT3477, and the driver did
>   not request the vsio supply needed by the S_I2C passthrough.
> 
> Tested on Dell Latitude 5285 2-in-1, Ubuntu 25.10, kernel 6.17.0-19.
> Both cameras appear in libcamera and are usable in applications.
> Note: the IPU3 IMGU can only run one pipeline at a time, so front and
> rear camera use is mutually exclusive.
> 
> Thierry Chatard (5):
>   platform/x86: intel_lpss: add resource conflict quirk for Dell
>     Latitude 5285
>   platform/x86: int3472: tps68470: fix GNVS clock fields 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 and vsio power supply
> 
>  drivers/mfd/intel-lpss-acpi.c                 |  32 +++
>  drivers/media/i2c/ov8858.c                    |  10 +-
>  drivers/media/pci/intel/ipu-bridge.c          |   2 ++
>  drivers/platform/x86/intel/int3472/tps68470.c | 201 ++++++++++++++++++
>  .../x86/intel/int3472/tps68470_board_data.c   | 163 ++++++++++++++
>  5 files changed, 407 insertions(+), 1 deletion(-)
> 
> base-commit: 6de23f81a4be5ee86a4df4fde0ca0c7bf67aecd1
> --
> 2.51.0
> 


      parent reply	other threads:[~2026-04-13  9:45 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-20  0:09 [PATCH 0/5] Enable dual cameras on Dell Latitude 5285 2-in-1 Thierry Chatard
2026-03-20  0:09 ` [PATCH 1/5] platform/x86: intel_lpss: add resource conflict quirk for Dell Latitude 5285 Thierry Chatard
2026-04-29  9:29   ` Andy Shevchenko
2026-03-20  0:09 ` [PATCH 2/5] platform/x86: int3472: tps68470: fix GNVS clock fields " Thierry Chatard
2026-03-21  9:44   ` kernel test robot
2026-03-20  0:09 ` [PATCH 3/5] platform/x86: int3472: tps68470: add board data " Thierry Chatard
2026-03-20  0:09 ` [PATCH 4/5] media: ipu-bridge: add sensor configuration for OV8858 (INT3477) Thierry Chatard
2026-03-20  0:09 ` [PATCH 5/5] media: ov8858: add ACPI device ID INT3477 and vsio power supply Thierry Chatard
2026-03-24 21:41 ` [PATCH v2 0/5] Enable dual cameras on Dell Latitude 5285 2-in-1 Thierry Chatard
2026-03-24 21:41   ` [PATCH v2 1/3] platform/x86: intel_lpss: add resource conflict quirk for Dell Latitude 5285 Thierry Chatard
2026-04-13  9:48     ` Hans de Goede
2026-03-24 21:41   ` [PATCH v2 2/3] platform/x86: int3472: tps68470: fix GNVS clock fields " Thierry Chatard
2026-04-13 11:02     ` Hans de Goede
2026-04-17 16:32       ` [PATCH v3 0/5] Enable cameras on Dell Latitude 5285 2-in-1 Thierry Chatard
2026-04-17 16:32         ` [PATCH v3 1/5] platform/x86: intel_lpss: add resource conflict quirk for Dell Latitude 5285 Thierry Chatard
2026-04-17 17:35           ` Hans de Goede
2026-04-18  6:31           ` Sakari Ailus
2026-04-17 16:32         ` [PATCH v3 2/5] platform/x86: int3472: tps68470: fix clock consumer registration " Thierry Chatard
2026-04-17 17:40           ` Hans de Goede
2026-04-18  6:29           ` Sakari Ailus
2026-04-17 16:32         ` [PATCH v3 3/5] platform/x86: int3472: tps68470: add board data " Thierry Chatard
2026-04-17 18:54           ` Hans de Goede
2026-04-18  7:16             ` Sakari Ailus
2026-04-21 22:52               ` [PATCH v4 0/5] Enable cameras on Dell Latitude 5285 2-in-1 Thierry Chatard
2026-04-21 22:52                 ` [PATCH v4 1/5] platform/x86: intel_lpss: add resource conflict quirk for Dell Latitude 5285 Thierry Chatard
2026-04-22  6:54                   ` Sakari Ailus
2026-04-21 22:52                 ` [PATCH v4 2/5] platform/x86: int3472: tps68470: fix clock consumer registration " Thierry Chatard
2026-04-22  7:07                   ` Sakari Ailus
2026-04-25  5:13                     ` [PATCH v5 0/5] Enable cameras on Dell Latitude 5285 2-in-1 Thierry Chatard
2026-04-25  5:13                       ` [PATCH v5 1/5] platform/x86: intel_lpss: add resource conflict quirk for Dell Latitude 5285 Thierry Chatard
2026-04-25  5:13                       ` [PATCH v5 2/5] platform/x86: int3472: tps68470: fix clock consumer registration " Thierry Chatard
2026-04-25  5:13                       ` [PATCH v5 3/5] platform/x86: int3472: tps68470: add board data " Thierry Chatard
2026-04-25  5:13                       ` [PATCH v5 4/5] media: ipu-bridge: add sensor configuration for OV8858 (INT3477) Thierry Chatard
2026-04-25  5:13                       ` [PATCH v5 5/5] media: ov8858: add ACPI device ID INT3477 Thierry Chatard
2026-04-25 16:31                     ` [PATCH v6 0/5] Enable cameras on Dell Latitude 5285 2-in-1 Thierry Chatard
2026-04-25 16:31                       ` [PATCH v6 1/5] platform/x86: intel_lpss: add resource conflict quirk for Dell Latitude 5285 Thierry Chatard
2026-04-25 16:31                       ` [PATCH v6 2/5] platform/x86: int3472: tps68470: fix clock consumer registration " Thierry Chatard
2026-04-27  7:48                         ` Sakari Ailus
2026-04-25 16:31                       ` [PATCH v6 3/5] platform/x86: int3472: tps68470: add board data " Thierry Chatard
2026-04-25 16:31                       ` [PATCH v6 4/5] media: ipu-bridge: add sensor configuration for OV8858 (INT3477) Thierry Chatard
2026-04-25 16:31                       ` [PATCH v6 5/5] media: ov8858: add ACPI device ID INT3477 Thierry Chatard
2026-04-27  7:49                         ` Sakari Ailus
2026-04-27 12:06                         ` Hans de Goede
2026-04-21 22:52                 ` [PATCH v4 3/5] platform/x86: int3472: tps68470: add board data for Dell Latitude 5285 Thierry Chatard
2026-04-22  7:11                   ` Sakari Ailus
2026-04-22  7:13                     ` Sakari Ailus
2026-04-21 22:52                 ` [PATCH v4 4/5] media: ipu-bridge: add sensor configuration for OV8858 (INT3477) Thierry Chatard
2026-04-21 22:52                 ` [PATCH v4 5/5] media: ov8858: add ACPI device ID INT3477 Thierry Chatard
2026-04-22  7:15                   ` Sakari Ailus
2026-04-17 16:32         ` [PATCH v3 4/5] media: ipu-bridge: add sensor configuration for OV8858 (INT3477) Thierry Chatard
2026-04-17 18:56           ` Hans de Goede
2026-04-18  7:18           ` Sakari Ailus
2026-04-17 16:32         ` [PATCH v3 5/5] media: ov8858: add ACPI device ID INT3477 and vsio power supply Thierry Chatard
2026-04-17 18:59           ` Hans de Goede
2026-04-17 16:35       ` [PATCH v2 2/3] platform/x86: int3472: tps68470: fix GNVS clock fields for Dell Latitude 5285 tchatard
2026-03-24 21:41   ` [PATCH v2 3/3] platform/x86: int3472: tps68470: add board data " Thierry Chatard
2026-03-24 21:41   ` [PATCH v2 4/5] media: ipu-bridge: add sensor configuration for OV8858 (INT3477) Thierry Chatard
2026-03-24 21:41   ` [PATCH v2 5/5] media: ov8858: add ACPI device ID INT3477 and vsio power supply Thierry Chatard
2026-04-13  9:45   ` Hans de Goede [this message]

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=25fd6ad5-0da9-485b-b507-9d1dc080cc86@kernel.org \
    --to=hansg@kernel.org \
    --cc=djrscally@gmail.com \
    --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=tchatard@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 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.