Public bug reported:

On a Dell Latitude 7450, the internal IPU6 MIPI camera does not work with the
Ubuntu `7.0.0-15-generic` USBIO module stack because the USBIO auxiliary GPIO
and I2C devices are not associated with the platform's MTL-CVF ACPI nodes:

- USBIO GPIO provider: `INTC10D1` / `_UID VGPO`
- USBIO I2C adapters: `INTC10D2` / `_UID VIC0` and `INTC10D2` / `_UID VIC1`

Without that binding, `int3472-discrete` cannot resolve the GPIO provider for
the camera power resources and the OV02E10 sensor path does not probe
correctly.

## Affected System

- Hardware: Dell Latitude 7450
- OS: Ubuntu 26.04 LTS
- Kernel tested: `7.0.0-15-generic`
- USBIO bridge: `2ac1:20c9 SLS Lattice AI USB 2.0`
- Sensor path: `OVTI02E1:00` / `ov02e10`
- ACPI nodes observed:
  - `/sys/bus/acpi/devices/INTC10D1:00`
  - `/sys/bus/acpi/devices/INTC10D2:00`
  - `/sys/bus/acpi/devices/INTC10D2:01`

## Failure Mode

Before the USBIO binding fix, the kernel logs contained:

```text
intel-ipu6 0000:00:05.0: Found supported sensor OVTI02E1:00
intel-ipu6 0000:00:05.0: Connected 1 cameras
int3472-discrete INT3472:01: cannot find GPIO chip INTC10D1:00, deferring
int3472-discrete INT3472:0c: cannot find GPIO chip INTC10D1:00, deferring
```

After partial USBIO I2C work, the OV02E10 client existed but probe still failed
without the complete binding/power path:

```text
ov02e10 i2c-OVTI02E1:00: Error writing reg 0x00fd: -6
ov02e10 i2c-OVTI02E1:00: failed to find sensor: -6
```

The media graph lacked an `ov02e10` entity and `/dev/video0` did not produce
usable frames.

## Fix

The attached patch is a reduced USBIO backport candidate for Ubuntu's
`intel-usbio-dkms_0~git202510282139.ee221eca-0ubuntu1` source.

It does the following:

- adds `INTC10D1` to the USBIO GPIO ACPI HID table,
- adds `INTC10D2` to the USBIO I2C ACPI HID table,
- sets `gpio_chip.fwnode = dev_fwnode(dev)` for ACPI GPIO lookup,
- changes `usbio_client_acpi_bind()` to search ACPI children under the USBIO
  auxiliary device's parent device chain, so matching remains scoped to this
  physical USBIO bridge rather than using a global HID lookup.

The patch intentionally excludes local debug instrumentation and dead-end
experiments.

## Test Case

1. Boot the affected kernel without the patch.
2. Check:

```bash
sudo journalctl -b -k --no-pager -g 
'INTC10D1|INTC10D2|INT3472|OVTI02E1|ov02e10|usbio|ipu'
tools/v4l-utils/usr/bin/media-ctl -p
timeout 20s gst-launch-1.0 -v v4l2src device=/dev/video0 num-buffers=30 ! 
fakesink
```

Expected broken result:

- `int3472-discrete` cannot find GPIO chip `INTC10D1:00`, or
- `ov02e10` fails probing with `failed to find sensor: -6`, and
- no usable video stream from `/dev/video0`.

3. Build and boot with the attached USBIO patch.
4. Check the same commands.

Expected fixed result:

- USBIO GPIO chip is associated with `INTC10D1:00`,
- `OVTI02E1:00` binds to `ov02e10`,
- media graph contains an `ov02e10` entity linked to `Intel IPU6 CSI2 1`,
- `/dev/video0` streams successfully.

Validated locally after the reduced binding and related already-upstream power
support were present:

```text
ov02e10 16-0010 media entity present
gst-device-monitor-1.0 Video/Source reports Intel MIPI Camera (V4L2)
gst-launch-1.0 -v v4l2src device=/dev/video0 num-buffers=30 ! fakesink completes
captured frames at 1280x960 show usable video once the physical shutter is open
```

## Regression Potential

Low to moderate.

The patch adds new ACPI HIDs for MTL-CVF USBIO GPIO/I2C devices and adjusts the
existing USBIO ACPI binding helper to search ACPI companions up the current USB
device's parent chain. It deliberately avoids a global 
`acpi_dev_get_first_match_dev()`
fallback, so systems with multiple USBIO bridges or multiple `INTC10D2` islands
should not bind to an unrelated ACPI node.

The GPIO fwnode assignment is required for ACPI GPIO lookup by consumers such
as INT3472.

** Affects: linux (Ubuntu)
     Importance: Undecided
         Status: New

** Attachment added: "0001-usbio-bind-dell-mtl-cvf-acpi-nodes.patch"
   
https://bugs.launchpad.net/bugs/2154140/+attachment/5973223/+files/0001-usbio-bind-dell-mtl-cvf-acpi-nodes.patch

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2154140

Title:
  USBIO MTL-CVF ACPI binding missing for Dell Latitude 7450 IPU6 camera

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2154140/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to