Skip to content

[BUG] IPU6 stack completely broken on Arch, Latitude 7450 (Meteor Lake) with ov02e10 sensor #457

Description

@RobotLeopard86

Hi,

I have been trying for ages now to try to figure out why my webcam stack isn't working. As mentioned in the issue title, I have a Dell Latitude 7450, running Arch Linux (kernel 7.1.5), and from what I can tell, my laptop has an ov02e10 sensor. I have applied all firmware updates possible using fwupd.

I was trying to get things working using some AUR packages apparently based on the work of the four repos managed here, but they weren't working, so I decided to clone and build everything myself, following the README instructions. Thus, I can safely say that my stack should be properly configured. I can also see that the proper firmware and driver kernel modules are loaded (ov02e10, intel_ipu6_psys, intel_ipu6_isys, intel_skl_int3472_discrete, usbio, etc.)

In terms of the actual error, the camera stack manifests in media-ctl -p as a ton of entities (and thus /dev/video* entries) following the naming scheme "Intel IPU6 ISYS Capture #", all identified as SOURCE or SINK,MUST_CONNECT. The gUM test page returns a NotFoundError, saying that the requested device was not found.

I also have this information from dmesg about what's going on:

[myuser@mycomputer ~] $ sudo dmesg | grep -iE "intel-ipu6|ov02e10"
[    4.011676] intel-ipu6 0000:00:05.0: enabling device (0000 -> 0002)
[    4.028661] intel-ipu6 0000:00:05.0: Found supported sensor OVTI02E1:00
[    4.028798] intel-ipu6 0000:00:05.0: Connected 1 cameras
[    4.031550] intel-ipu6 0000:00:05.0: Sending BOOT_LOAD to CSE
[    4.070772] intel-ipu6 0000:00:05.0: Sending AUTHENTICATE_RUN to CSE
[    4.123343] intel-ipu6 0000:00:05.0: CSE authenticate_run done
[    4.123349] intel-ipu6 0000:00:05.0: IPU6-v4[7d19] hardware version 6
[    4.623530] ov02e10 i2c-OVTI02E1:00: failed to write reg 253 val 0
[    4.623536] ov02e10 i2c-OVTI02E1:00: failed to find sensor: -121
[    4.623861] ov02e10 i2c-OVTI02E1:00: probe with driver ov02e10 failed with error -121

There was another message I flagged from a larger dmesg dump I did: [ 4.247341] gpio_usbio.usbio-gpio usbio.usbio-gpio.0: [Firmware Bug]: GPIO 5 is not in FW pins bitmap.

I have tried rooting around other issues in this repository, Arch forum threads, and even asking AI models. None of them have found a logical answer to this issue, so I figured that I'd file it. I did gain some "insights" from the AI (I used ChatGPT here), which I have given below, but maybe take these with a grain of salt because it is just a fancy text predictor.

Based on some commands the AI gave me, it noted some weird stuff with GPIO; the main command and its results are given here:

[myuser@mycomputer ~] $ sudo cat /sys/kernel/debug/gpio
gpiochip0: 451 GPIOs, parent: platform/INTC1083:00, INTC1083:00: 
gpio-128 ( |cs35l41-reset ) out hi
gpio-205 ( |spi1 CS1 ) out hi
gpio-369 ( |ir_flood ) out lo
gpio-373 ( |TPL0 GpioInt(0) ) in hi IRQ ACTIVE LOW
gpio-387 ( |TPD0 GpioInt(0) ) in hi IRQ ACTIVE LOW
gpio-404 ( |SPKR GpioInt(0) ) in hi IRQ

The AI thought it was weird that there weren't "AVDD, DOVDD, IOVVD, MCLK, RESET GPIO, or ENABLE GPIO" things. I'm not knowledgeable enough about those acronyms to know what they mean, but hopefully someone smarter than me here does.

In summary, the AI's diagnosis was (copied from it):

  • ACPI is correct enough for Linux to discover the sensor.
  • IPU6 loads.
  • INT3472 creates regulators.
  • The OV02E10 driver probes.
  • The sensor is still electrically off (or held in reset).
  • The very first I²C transaction NACKs.
  • Probe aborts with -EREMOTEIO.

So, yeah. I know this is basically just a huge infodump, and I understand if this is way too specific and not worthy of attention at the moment. I'm simply trying to get all the information out that I can to be helpful to the people who know what might be going on here. Happy to provide any further information if needed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions