Skip to content

[Lunar Lake] Protocol Error (-71) and I2C Speed Bottleneck on OV08X40 via Synaptics SVP7500 Bridge #51

@tjchan001

Description

@tjchan001

Hardware Environment

  • System: Dell Lunar Lake (Core Ultra Series 2 / Ultra 7 268V)
  • Bridge: Synaptics SVP7500 (USB-to-I2C/MIPI Bridge)
  • Sensor: OmniVision OV08X40 (ID: OVTI08F4:00)
  • Driver: intel_ipu7 (Staging) / i2c_usbio / ivsc-csi

Issue Description

Attempts to stream from the OV08X40 sensor result in a Protocol error (-71) at STREAMON. Following the error, the Synaptics USB bridge appears to reset or latch-up, causing the device nodes to disappear (No such device) until a full cold boot is performed.

New Findings: IVSC & Firmware Gaps

Investigation with Secure Boot disabled confirms that the Intel Vision Sensing Controller (IVSC) stack is present but non-functional due to missing sensor-specific firmware.

  1. Missing Firmware Blobs: /lib/firmware/intel/vsc/ contains firmware for other sensors but lacks ivsc_pkg_ovti08x40_0.bin and ivsc_skucfg_ovti08x40_0_1.bin.
  2. IVSC Idle State: While ivsc-csi and ivsc-ace modules load, they fail to bind to the sensor, leaving it to bind directly to intel_ipu7_isys. This bypasses the secure handshake/authentication required by the hardware.

Observed Critical Failures

1. I2C Clock Speed Cap (The "Smoking Gun")

The usbio-i2c bridge driver forces a downclock from 400kHz to 100kHz. This latency appears to prevent the sensor from being configured within the IPU7's MIPI timing window.

[17.229199] i2c_usbio.usbio-i2c usbio.usbio-i2c.0: Invalid speed 400000 adjusting to bus max 100000

  1. MIPI Link Timeout / Protocol Error

Even with manual resolution alignment (3856x2176), the CSI-2 receiver times out:

[17.779903] intel_ipu7_isys.isys intel_ipu7.isys.40: bind ov08x40 17-0036 nlanes is 2 port is 0
[20681.798345] intel_ipu7_isys.isys intel_ipu7.isys.40: enable streams Intel IPU7 CSI2 0 failed with -71

  1. Entity Mismatch (Resolution Padding)

The sensor defaults to 3856x2176, while the ISYS pipeline defaults to a 12MP or 1080p target, leading to initial Broken pipe errors before manual alignment via media-ctl.

  1. Firmware/GPIO Bug

The driver fails to map the physical reset line via the USB bridge:
Plaintext

[17.123913] gpio_usbio.usbio-gpio usbio.usbio-gpio.0: [Firmware Bug]: GPIO 4 is not in FW pins bitmap

Steps to Reproduce

(Optional) Disable Secure Boot and manually modprobe ivsc-csi.

Align pipeline to sensor native output: media-ctl -d /dev/media0 -V '"Intel IPU7 CSI2 0":0 [fmt:SGRBG10_1X10/3856x2176]'

Attempt capture: v4l2-ctl -d /dev/video0 --stream-mmap --stream-count=1 --stream-to=test.raw

Result: VIDIOC_STREAMON returned -1 (Protocol error).

Analysis

The combination of a 100kHz I2C bottleneck on the Synaptics bridge and missing IVSC sensor firmware creates a fatal race condition. The sensor cannot transition to High-Speed MIPI mode fast enough to satisfy the IPU7's watchdog timer. Furthermore, the direct binding of the sensor to ISYS (bypassing the IVSC) likely leaves the MIPI physical lanes in a low-power or locked state.

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