Bug 2347295 - Webcam doesn't work on Dell XPS 13 9350
Summary: Webcam doesn't work on Dell XPS 13 9350
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 41
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Hans de Goede
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 2333299 2333383 2333347 2341731
Blocks:
TreeView+ depends on / blocked
 
Reported: 2025-02-24 12:20 UTC by Luke Benstead
Modified: 2025-02-24 18:47 UTC (History)
16 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)
Kernel log (131.17 KB, text/plain)
2025-02-24 12:21 UTC, Luke Benstead
no flags Details
lsusb (460 bytes, text/plain)
2025-02-24 12:21 UTC, Luke Benstead
no flags Details
spi-devices (121 bytes, text/plain)
2025-02-24 12:22 UTC, Luke Benstead
no flags Details
i2c-devices (1.66 KB, text/plain)
2025-02-24 12:22 UTC, Luke Benstead
no flags Details
dmesg (103.44 KB, text/plain)
2025-02-24 13:11 UTC, Luke Benstead
no flags Details

Description Luke Benstead 2025-02-24 12:20:59 UTC
1. Please describe the problem:

On the newish Dell XPS 13 9350 the webcam doesn't work (rpmfusion enabled, all the ipu6 things installed). There is a bug tracking the webcam support for the 9340 (https://bugzilla.redhat.com/show_bug.cgi?id=2333347) although I'm unsure if it's the same sensor / issue.

2. What is the Version-Release number of the kernel:

6.12.13

3. Did it work previously in Fedora? If so, what kernel version did the issue
   *first* appear?  Old kernels are available for download at
   https://koji.fedoraproject.org/koji/packageinfo?packageID=8 :

Uncertain, but unlikely it's ever worked.

4. Can you reproduce this issue? If so, please provide the steps to reproduce
   the issue below:

 - Install Fedora 41 on an XPS 13 9350
 - See the webam doesn't work

5. Does this problem occur with the latest Rawhide kernel? To install the
   Rawhide kernel, run ``sudo dnf install fedora-repos-rawhide`` followed by
   ``sudo dnf update --enablerepo=rawhide kernel``:

 - Unsure (it's a work machine so can't test rawhide currently)

6. Are you running any modules that not shipped with directly Fedora's kernel?:

 - No

7. Please attach the kernel logs. You can get the complete kernel log
   for a boot with ``journalctl --no-hostname -k > dmesg.txt``. If the
   issue occurred on a previous boot, use the journalctl ``-b`` flag.



Reproducible: Always

Comment 1 Luke Benstead 2025-02-24 12:21:35 UTC
Created attachment 2077592 [details]
Kernel log

Comment 2 Luke Benstead 2025-02-24 12:21:54 UTC
Created attachment 2077593 [details]
lsusb

Comment 3 Luke Benstead 2025-02-24 12:22:15 UTC
Created attachment 2077594 [details]
spi-devices

Comment 4 Luke Benstead 2025-02-24 12:22:35 UTC
Created attachment 2077596 [details]
i2c-devices

Comment 5 Hans de Goede 2025-02-24 12:36:59 UTC
Ok, so based on "lsusb" output it looks like your laptop is using the new "SLS Lattice AI USB 2.0" IO expander, so the first thing to do is get the drivers for that loaded since that offers the actual i2c bus going to the sensor.

The drivers for this USB IO expander are not in the mainline kernel yet (this is being worked on) they are available as a kmod package on rpmfusion now together with the out of tree IPU6 PSYS/ISP driver.

See: https://hansdegoede.dreamwidth.org/27235.html for install instructions.

After the akmod has been successfully build please reboot and collect new dmesg + "ls /sys/bus/i2c/devices" outputs.

Comment 6 Luke Benstead 2025-02-24 13:11:30 UTC
Created attachment 2077601 [details]
dmesg

Comment 7 Luke Benstead 2025-02-24 13:12:56 UTC
All the rpmfusion bits were installed, but secure boot was enabled - disabling secure boot now shows this:

ls /sys/bus/i2c/devices
i2c-0  i2c-10  i2c-12  i2c-14  i2c-16  i2c-2  i2c-4  i2c-6  i2c-8  i2c-HIMX1092:00  i2c-OVTI02C1:00
i2c-1  i2c-11  i2c-13  i2c-15  i2c-17  i2c-3  i2c-5  i2c-7  i2c-9  i2c-INTC10DE:00  i2c-VEN_04F3:00

I've attached the dmesg output to the bug.

Comment 8 Hans de Goede 2025-02-24 14:11:02 UTC
"i2c-OVTI02C1:00" ok, so your laptop is indeed also using an ov02c10 sensor like the XPS 9x40 models.

But the in combination with the new "SLS Lattice AI USB 2.0" chip instead of with the LJCA + iVSC combination used on the 9x40 models.

The intel-ipu6-kmod package from rpmfusion also includes a version of the ov02c10 driver, looking at your dmesg that driver does try to bind to the device, but it fails with a EPROBE_DEFER error:

[  284.179125] ov02c10 i2c-OVTI02C1:00: failed to check hwcfg: -517

getting some of these errors is expected during boot (the driver needs to be modified to not log them at this level), but once the USBIO + IPU6 drivers are loaded this should go away.

There are also these 2 messages:

[   13.808363] int3472-discrete INT3472:00: unknown \_SB.PC00.XHCI.RHUB.HS02.VGPO pin 1 active-high
[   13.808387] int3472-discrete INT3472:00: GPIO type 0x12 unknown; the sensor may not work

The "GPIO type 0x12 unknown" might be a problem, but that does not explain the EPROBE_DEFER (-517) error.

Looking at your logs I suspect that the problem is that the intel_ipu6* kernel modules are being blacklisted by a stale:

/etc/modprobe.d/ipu6-driver-select.conf

Try doing:

cat /etc/modprobe.d/ipu6-driver-select.conf

I suspect you will see a "blacklist intel-ipu6" line in there and that is the culprit.

That file was marked as %ghost by older versions of the ipu6-camera-hal package and is now no longer in the ipu6-camera-hal package file list, so it should have been removed when you updated to the latest version.

Please make sure you have the latest version by running:

sudo dnf update --enablerepo=rpmfusion-nonfree-updates-testing ipu6-camera-hal

if that does anything check that: "/etc/modprobe.d/ipu6-driver-select.conf" is gone now. If for some reason it is not removed, just run:

sudo rm /etc/modprobe.d/ipu6-driver-select.conf

either way reboot after this and then give your camera a try following:

https://fedoraproject.org/wiki/Changes/IPU6_Camera_support#How_To_Test

If things do not work please collect a new dmesg (from after removing /etc/modprobe.d/ipu6-driver-select.conf).

Comment 9 Luke Benstead 2025-02-24 14:35:22 UTC
No such luck I'm afraid. /etc/modprobe.d/ipu6-driver-select.conf doesn't exist, updating from rpmfusion-nonfree-updates-testing doesn't update anything.

This is a very recent install (a few days ago) so it's probably not a stale file from an old version.

Comment 10 Hans de Goede 2025-02-24 14:58:15 UTC
(In reply to Luke Benstead from comment #9)
> No such luck I'm afraid. /etc/modprobe.d/ipu6-driver-select.conf doesn't
> exist, updating from rpmfusion-nonfree-updates-testing doesn't update
> anything.
> 
> This is a very recent install (a few days ago) so it's probably not a stale
> file from an old version.

Weird, dmesg does not show any ipu6 related messages, which it normally would / should.

Ah wait, I somehow did something wrong with my first duckduckgo search for "Dell XPS 13 9350" leading me to think your laptop is using a Meteor Lake CPU. But you have a Lunar Lake CPU. That is using a IPU7 not an IPU6. Support for that is still pretty far away. Intel just posted a first version upstream:

https://lore.kernel.org/linux-media/20250221075252.3347582-1-bingbu.cao@intel.com/

but that is going to require a significant rework to share more code with the existing IPU6 implementation, currently way too much of it is copy pasted with some small modifications from the IPU6 code.

Comment 11 Luke Benstead 2025-02-24 15:17:13 UTC
Ah OK - well thanks for all your help anyway, much appreciated! I'll keep an eye on this bug report (and the linked ones).


Note You need to log in before you can comment on or make changes to this bug.