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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions