Razer Blade 15 Base (RZ09-0328) internal webcam (13d3:56bd) — UVC device resets at stream start, anyone got it working?
Posting partly as a heads-up and partly to ask if anyone with this hardware found a workaround.
Setup
-
Razer Blade 15 Base Model (Early 2020), RZ09-0328
-
NixOS 26.05, kernel 6.18.36
-
Internal webcam: Azurewave / IMC Networks,
13d3:56bd, UVC 1.00
Symptom
The camera enumerates fine and exposes valid MJPEG + YUYV formats (v4l2-ctl --list-formats-ext looks correct), but any attempt to start a stream fails:
ffmpeg -f v4l2 -input_format mjpeg -video_size 640x480 -i /dev/video0 -frames:v 1 /tmp/test.jpg
# ioctl(VIDIOC_STREAMON): Protocol error
dmesg shows the device disconnecting and re-enumerating at the exact moment of VIDIOC_STREAMON . It physically drops off the USB bus when streaming is commanded.
What I’ve ruled out
-
Not autosuspend : failure persists with
power/control=on. -
Not bandwidth : 160x120 (smallest mode) fails identically to 1280x720.
-
Not a packaging/config issue : quirks applied correctly via
boot.extraModprobeConfig(dmesg confirms “Forcing device quirks to 0xNN”).
The descriptor shows the streaming interface is isochronous-only (no bulk endpoint), so UVC_QUIRK_FORCE_BULK is structurally inapplicable. Tested quirks=0x80 and 0x83, neither helped. The reset happens in the isochronous SET_INTERFACE path.
Conclusion so far
This looks like a kernel-level uvcvideo issue with no working quirk in current mainline. I’ve reported it to linux-media. The hardware is electrically healthy; it just can’t stream under the current driver.
NixOS-specific config (for reference)
If anyone wants to try a quirk value, this is the declarative way (no imperative /etc/modprobe.d, which is read-only on NixOS):
boot.extraModprobeConfig = ''
options uvcvideo quirks=0x83
'';
Then sudo nixos-rebuild switch and reboot. Confirm it loaded with:
sudo dmesg | grep -i "quirks to"
Questions
-
Anyone else on a Razer Blade 15 Base (RZ09-0328) , or another laptop with
13d3:56bd?Does your internal webcam stream under Linux? If so, what kernel + quirk? -
Has anyone added a working quirk for this VID:PID to
nixos-hardwareor their config?
For now I’m falling back to an external USB webcam, which works without issue. Will update here if linux-media identifies a quirk.