intel / intel/ipu6-drivers

Dell Pro 16 Plus PB16250 (Lunar Lake): Webcam not working — usbio-bridge bulk transfer failures with Synaptics SVP7500 (06CB:0701)

Open
#426 9 comments 6 reactions 0 assignees View on GitHub
Dominant language
C
Stars
251
Forks
75
PR merge metrics
No merged PRs in 30d

Description

System information

Laptop: Dell Pro 16 Plus PB16250
CPU: Intel Lunar Lake (Core Ultra series)
OS: OpenSUSE Tumbleweed
Kernel: 6.19.5-1.gefdae5d-default
BIOS: 2.10.1 (2026-01-13, latest available)
Camera sensor detected: OVTI05C1 (OmniVision)
USBIO bridge chip: Synaptics SVP7500, idVendor=06CB idProduct=0701 bcdDevice=8490

Problem description
The webcam is non-functional. The IPU6 subsystem correctly detects the camera sensor (OVTI05C1) but the int3472-discrete driver cannot find the GPIO chip INTC10B5:00 because the USBIO bridge never initializes successfully.
The USBIO bridge is a Synaptics SVP7500 (06CB:0701, firmware version bcdDevice=8490), not a Lattice chip. The usbio-bridge driver binds to it but immediately fails on the very first USB operation.

Relevant dmesg
`[ 2.486979] usb 3-4: New USB device found, idVendor=06cb, idProduct=0701, bcdDevice=84.90
[ 2.486993] usb 3-4: Product: SVP7500
[ 2.486995] usb 3-4: Manufacturer: Synaptics , Inc
[ 2.486998] usb 3-4: SerialNumber: 01.00.00.00
[ 4.867584] usbcore: registered new interface driver usbio-bridge
[ 6.078473] usbio-bridge 3-4:1.0: Read Bulk transfer timed out: 81
[ 6.166565] usbio-bridge 3-4:1.0: Write Bulk transfer failed: -110
[ 6.255533] usbio-bridge 3-4:1.0: Write Bulk transfer failed: -110
...
[ 4.704465] int3472-discrete INT3472:0c: cannot find GPIO chip INTC10B5:00, deferring
[ 4.724581] int3472-discrete INT3472:0c: cannot find GPIO chip INTC10B5:00, deferring
...`

No Write CTRLXFER failed, Read CTRLXFER failed, or USB Bridge device init success messages appear — the driver fails at the bulk transfer level before control transfers even complete.

Findings:
1. The Synaptics SVP7500 (06CB:0701) enumerates correctly on USB and stays enumerated throughout the session.
2. The usbio-bridge driver binds to the device correctly (confirmed via /sys/bus/usb/devices/3-4:1.0/driver).
3. The syn_sabre_quirks entry (bulk_size=63, USBIO_FWQUIRK_BULKSIZE | USBIO_FWQUIRK_I2CCHUNK) is present in the driver.
4. The sizeof(*cpkt) / sizeof(*bpkt) fix is already present in the source.
5. The ACPI HID ordering fix (INTC10B5 before INTC1007) is present in gpio-usbio.c.
6. The failure is in the bulk transfer layer (usbio_bulk_msg) — the async URB on endpoint 0x81 times out immediately, and all subsequent writes return -110 (ETIMEDOUT).
7. Critically, no CTRLXFER errors appear in dmesg — it is unclear whether the control-based handshake (USBIO_CTRLCMD_HS) succeeds or silently fails before bulk transfers begin.
8. The device reports bcdDevice=8490 (firmware version 84.90) which is significantly higher than versions seen in other reported cases. It is possible this firmware version requires a different initialization sequence or protocol variant not yet handled by the driver.

Contributor guide

Open the contributing guide

Research direction

Start at usbio_bulk_msg and the usbio-bridge initialization path, using the dmesg sequence for USB device 06CB:0701 as the reproduction. Check the control handshake, endpoint 0x81 bulk setup, gpio-usbio.c, and handling for bcdDevice 8490; done means the bridge initializes without ETIMEDOUT and INTC10B5:00 becomes available.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
embedded-iot, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.