* [PATCH] platform/x86: int3472: Add TPS68470 board data for Dell Latitude 7275
@ 2026-09-04 6:20 D. Manresa
2026-09-04 7:04 ` Sakari Ailus
2026-09-08 16:14 ` [PATCH v2] " D. Manresa
0 siblings, 2 replies; 4+ messages in thread
From: D. Manresa @ 2026-09-04 6:20 UTC (permalink / raw)
To: Daniel Scally, Sakari Ailus
Cc: Hans de Goede, Ilpo Järvinen, platform-driver-x86,
linux-kernel, D . Manresa
The Dell Latitude 7275 2-in-1 has the same camera design as the Latitude
7212 Rugged Extreme Tablet: an OmniVision OV5670 front sensor (ACPI
INT3479) powered by a TI TPS68470 PMIC, with GPIO 3 as reset and GPIO 4 as
powerdown and the same regulator voltages. The only difference is that the
PMIC ACPI node enumerates as INT3472:04 instead of INT3472:05, so the
existing board data is not matched and the driver fails with "No
board-data found for this model".
Add a board data entry for the Latitude 7275 reusing the 7212 regulator
and GPIO tables with the right device name.
Tested on a Latitude 7275 (BIOS 1.18.0): the PMIC probes, the OV5670
binds and libcamera streams from the IPU3.
Note: on this machine the sensor sits on the I2C4 controller (INT3446),
whose MMIO region overlaps an ACPI OperationRegion (\_SB.PCI0.GEXP.BAR0),
so the intel-lpss driver only binds with acpi_enforce_resources=lax.
Signed-off-by: D. Manresa <dmanresa@gmail.com>
---
--- a/drivers/platform/x86/intel/int3472/tps68470_board_data.c
+++ b/drivers/platform/x86/intel/int3472/tps68470_board_data.c
@@ -449,6 +449,15 @@
},
};
+static const struct int3472_tps68470_board_data dell_7275_tps68470_board_data = {
+ .dev_name = "i2c-INT3472:04",
+ .tps68470_regulator_pdata = &dell_7212_tps68470_pdata,
+ .n_gpiod_lookups = 1,
+ .tps68470_gpio_lookup_tables = {
+ &dell_7212_int3479_gpios,
+ },
+};
+
static const struct int3472_tps68470_board_data msi_prestige_ai_evo_tps68470_board_data = {
.dev_name = "i2c-INT3472:06",
.tps68470_regulator_pdata = &msi_prestige_ai_evo_tps68470_pdata,
@@ -500,6 +509,13 @@
},
{
.matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Latitude 7275"),
+ },
+ .driver_data = (void *)&dell_7275_tps68470_board_data,
+ },
+ {
+ .matches = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Micro-Star International Co., Ltd."),
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Prestige 13 AI+ Evo A2VMG"),
DMI_EXACT_MATCH(DMI_BOARD_NAME, "MS-13Q3"),
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] platform/x86: int3472: Add TPS68470 board data for Dell Latitude 7275
2026-09-04 6:20 [PATCH] platform/x86: int3472: Add TPS68470 board data for Dell Latitude 7275 D. Manresa
@ 2026-09-04 7:04 ` Sakari Ailus
2026-09-08 16:13 ` D. Manresa
2026-09-08 16:14 ` [PATCH v2] " D. Manresa
1 sibling, 1 reply; 4+ messages in thread
From: Sakari Ailus @ 2026-09-04 7:04 UTC (permalink / raw)
To: D. Manresa
Cc: Daniel Scally, Hans de Goede, Ilpo Järvinen,
platform-driver-x86, linux-kernel
Hi D.,
On Fri, Sep 04, 2026 at 08:20:06AM +0200, D. Manresa wrote:
> The Dell Latitude 7275 2-in-1 has the same camera design as the Latitude
> 7212 Rugged Extreme Tablet: an OmniVision OV5670 front sensor (ACPI
> INT3479) powered by a TI TPS68470 PMIC, with GPIO 3 as reset and GPIO 4 as
> powerdown and the same regulator voltages. The only difference is that the
> PMIC ACPI node enumerates as INT3472:04 instead of INT3472:05, so the
> existing board data is not matched and the driver fails with "No
> board-data found for this model".
>
> Add a board data entry for the Latitude 7275 reusing the 7212 regulator
> and GPIO tables with the right device name.
What's below would better fit after the '---' line.
>
> Tested on a Latitude 7275 (BIOS 1.18.0): the PMIC probes, the OV5670
> binds and libcamera streams from the IPU3.
>
> Note: on this machine the sensor sits on the I2C4 controller (INT3446),
> whose MMIO region overlaps an ACPI OperationRegion (\_SB.PCI0.GEXP.BAR0),
> so the intel-lpss driver only binds with acpi_enforce_resources=lax.
Is this the same issue than for Latutude 5285 here
<URL:https://lore.kernel.org/linux-media/20260831160754.9857-1-tchatard@gmail.com/>?
>
> Signed-off-by: D. Manresa <dmanresa@gmail.com>
> ---
> --- a/drivers/platform/x86/intel/int3472/tps68470_board_data.c
> +++ b/drivers/platform/x86/intel/int3472/tps68470_board_data.c
> @@ -449,6 +449,15 @@
> },
> };
>
> +static const struct int3472_tps68470_board_data dell_7275_tps68470_board_data = {
> + .dev_name = "i2c-INT3472:04",
> + .tps68470_regulator_pdata = &dell_7212_tps68470_pdata,
> + .n_gpiod_lookups = 1,
> + .tps68470_gpio_lookup_tables = {
> + &dell_7212_int3479_gpios,
> + },
> +};
> +
> static const struct int3472_tps68470_board_data msi_prestige_ai_evo_tps68470_board_data = {
> .dev_name = "i2c-INT3472:06",
> .tps68470_regulator_pdata = &msi_prestige_ai_evo_tps68470_pdata,
> @@ -500,6 +509,13 @@
> },
> {
> .matches = {
> + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Latitude 7275"),
> + },
> + .driver_data = (void *)&dell_7275_tps68470_board_data,
> + },
> + {
> + .matches = {
> DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Micro-Star International Co., Ltd."),
> DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Prestige 13 AI+ Evo A2VMG"),
> DMI_EXACT_MATCH(DMI_BOARD_NAME, "MS-13Q3"),
--
Regards,
Sakari Ailus
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] platform/x86: int3472: Add TPS68470 board data for Dell Latitude 7275
2026-09-04 7:04 ` Sakari Ailus
@ 2026-09-08 16:13 ` D. Manresa
0 siblings, 0 replies; 4+ messages in thread
From: D. Manresa @ 2026-09-08 16:13 UTC (permalink / raw)
To: Sakari Ailus
Cc: Daniel Scally, Hans de Goede, Ilpo Järvinen, Thierry Chatard,
platform-driver-x86, linux-kernel
Hi Sakari,
On Fri, 4 Sep 2026, Sakari Ailus wrote:
> What's below would better fit after the '---' line.
Will do in v2.
> Is this the same issue than for Latutude 5285 here
> <URL:https://lore.kernel.org/linux-media/20260831160754.9857-1-tchatard@gmail.com/>?
Yes, exactly the same. On the 7275 the GEXP device declares
OperationRegion (BAR0, SystemMemory, SB04, 0x0208)
and the I2C4 controller (INT3446) builds its _CRS from the same SB04
variable, so intel_lpss_acpi fails with -EBUSY unless
acpi_enforce_resources=lax is given. Thierry's patch 1/8 fixes it here
too once a "Latitude 7275" entry is added to intel_lpss_quirk_dmi[]. I'll
send that as a small patch on top of his series; Thierry, if you would
rather fold it into v11, I'm happy to provide a Tested-by.
The other 5285 quirk, the static clock consumer list for the broken
INT3479 _DEP, is not needed on the 7275: tps68470-clk already lists
i2c-INT3479:00 as a consumer in clk_summary.
Thanks,
D.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v2] platform/x86: int3472: Add TPS68470 board data for Dell Latitude 7275
2026-09-04 6:20 [PATCH] platform/x86: int3472: Add TPS68470 board data for Dell Latitude 7275 D. Manresa
2026-09-04 7:04 ` Sakari Ailus
@ 2026-09-08 16:14 ` D. Manresa
1 sibling, 0 replies; 4+ messages in thread
From: D. Manresa @ 2026-09-08 16:14 UTC (permalink / raw)
To: Daniel Scally, Sakari Ailus
Cc: Hans de Goede, Ilpo Järvinen, Thierry Chatard,
platform-driver-x86, linux-kernel
The Dell Latitude 7275 2-in-1 has the same camera design as the Latitude
7212 Rugged Extreme Tablet: an OmniVision OV5670 front sensor (ACPI
INT3479) powered by a TI TPS68470 PMIC, with GPIO 3 as reset and GPIO 4 as
powerdown and the same regulator voltages. The only difference is that the
PMIC ACPI node enumerates as INT3472:04 instead of INT3472:05, so the
existing board data is not matched and the driver fails with "No
board-data found for this model".
Add a board data entry for the Latitude 7275 reusing the 7212 regulator
and GPIO tables with the right device name.
Assisted-by: Claude Code:claude-fable-5-1
Signed-off-by: D. Manresa <dmanresa@gmail.com>
---
Tested on a Latitude 7275 (BIOS 1.18.0): the PMIC probes, the OV5670
binds and libcamera streams from the IPU3.
The sensor sits on the I2C4 controller (INT3446), whose MMIO region
overlaps the ACPI OperationRegion \_SB.PCI0.GEXP.BAR0 (both use the
GNVS variable SB04), so intel_lpss_acpi only binds with
acpi_enforce_resources=lax. This is the same BIOS bug as on the Latitude
5285, fixed by Thierry Chatard's "mfd: intel-lpss: add resource conflict
quirk for Dell Latitude 5285" [1]; a follow-up patch adds the 7275 to
that quirk's DMI table.
[1] https://lore.kernel.org/linux-media/20260831160754.9857-2-tchatard@gmail.com/
Changes in v2:
- Move the test notes and the I2C4/GEXP remark below the '---' line
(Sakari).
- Point at the Latitude 5285 intel-lpss quirk for the resource conflict.
- Add an Assisted-by tag.
--- a/drivers/platform/x86/intel/int3472/tps68470_board_data.c
+++ b/drivers/platform/x86/intel/int3472/tps68470_board_data.c
@@ -449,6 +449,15 @@
},
};
+static const struct int3472_tps68470_board_data dell_7275_tps68470_board_data = {
+ .dev_name = "i2c-INT3472:04",
+ .tps68470_regulator_pdata = &dell_7212_tps68470_pdata,
+ .n_gpiod_lookups = 1,
+ .tps68470_gpio_lookup_tables = {
+ &dell_7212_int3479_gpios,
+ },
+};
+
static const struct int3472_tps68470_board_data msi_prestige_ai_evo_tps68470_board_data = {
.dev_name = "i2c-INT3472:06",
.tps68470_regulator_pdata = &msi_prestige_ai_evo_tps68470_pdata,
@@ -500,6 +509,13 @@
},
{
.matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Latitude 7275"),
+ },
+ .driver_data = (void *)&dell_7275_tps68470_board_data,
+ },
+ {
+ .matches = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Micro-Star International Co., Ltd."),
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Prestige 13 AI+ Evo A2VMG"),
DMI_EXACT_MATCH(DMI_BOARD_NAME, "MS-13Q3"),
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-09-08 16:14 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-04 6:20 [PATCH] platform/x86: int3472: Add TPS68470 board data for Dell Latitude 7275 D. Manresa
2026-09-04 7:04 ` Sakari Ailus
2026-09-08 16:13 ` D. Manresa
2026-09-08 16:14 ` [PATCH v2] " D. Manresa
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox