Description
This repository contains an experimental (under development) fully open-source stack for using IPU6 based cameras with Fedora. This repository contains the following packages:
- The kernel patched with the upstream pending Intel IPU6 CSI receiver (input-system) support. Note this means Secure Boot needs to be disabled in the BIOS setup
- libcamera patched with the upstream pending software ISP support
- pipewire with the pipewire-libcamera plugin rebuild against the patched libcamera
Installation Instructions
Install the IPU6 camera support from this repo
sudo dnf copr enable jwrdegoede/ipu6-softisp
sudo dnf --disablerepo=* --enablerepo=copr:copr.fedorainfracloud.org:jwrdegoede:ipu6-softisp --disableexcludes=all distro-sync 'kernel*' 'libcamera*' 'pipewire*'
sudo dnf --disablerepo=* --enablerepo=copr:copr.fedorainfracloud.org:jwrdegoede:ipu6-softisp --disableexcludes=all install pipewire-plugin-libcamera libcamera-qcam libcamera-ipa
Note you will need to take care to avoid kernel / libcamera / pipewire getting overridden by newer versions from fedora-updates. You could e.g. at exclude=kernel*,libcamera*,pipewire*
to /etc/dnf/dnf.conf
The IPU6 driver requires firmware which is not yet in linux-firmware. If you have the rpmfusion non-free repository enabled you can install this by running:
sudo dnf install ipu6-camera-bins-firmware
If you do not have the rpmfusion non-free repository enabled then do:
sudo su -
cd /lib/firmware/intel
wget https://raw.githubusercontent.com/intel/ipu6-camera-bins/main/lib/firmware/intel/ipu6_fw.bin https://raw.githubusercontent.com/intel/ipu6-camera-bins/main/lib/firmware/intel/ipu6ep_fw.bin
Since this COPR includes a custom kernel you will need to disable Secure Boot in your BIOS setup.
If the system also has the rpmfusion ipu6 packages installed
If the system also has the rpmfusion ipu6 packages installed, then the presence of the v4l2-relayd managed v4l2loopback will confuse wireplumber. To workaround this disable v4l2-relayd:
sudo systemctl disable --now v4l2-relayd
systemctl --user restart wireplumber
The COPR kernel includes an intel-ipu6 module the intel-ipu6 akmod will automatically get skipped on systems which also have the rpmfusion ipu6 packages installed.
Note the akmods command will show a warning about the intel-ipu6 akmod:
Warning: Could not determine what package owns /lib/modules/$ver/extra/intel-ipu6/
If you boot into a standard Fedora kernel again and want to re-enable v4l2-relayd from the rpmfusion packages then run:
sudo systemctl enable --now v4l2-relayd
Testing the IPU6 camera support from this repo
-
For a first quick test run
qcam
, this should show your laptop's camera sensor (e.g. "ov2740") as selected input, press ok and then a live view from your camera should be shown -
For WebRTC support make sure you are at Firefox version 122 or newer:
sudo dnf --enablerepo=updates-testing update 'firefox*'Quit Firefox and open it again, then in the location bar at the top of Firefox go to
about:config
and changemedia.webrtc.camera.allow-pipewire
to true. After changing this setting exit Firefox and open it again before continuing. -
For a quick test open https://mozilla.github.io/webrtc-landing/gum_test.html in Firefox and press the "Camera" button, this should show a live view from your camera
-
There currently is a camera enumeration issue when using google-meet, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1869042. This can be worked around by first opening: https://mozilla.github.io/webrtc-landing/gum_test.html once and pressing the camera button there. After this the camera should also be visible in google-meet.
Active Releases
The following unofficial repositories are provided as-is by owner of this project. Contact the owner directly for bugs or issues (IE: not bugzilla).
Release | Architectures | Repo Download |
---|---|---|
Fedora 39 | aarch64 (0)*, x86_64 (8)* | Fedora 39 (24 downloads) |
Fedora 40 | aarch64 (0)*, x86_64 (0)* | Fedora 40 (43 downloads) |
* Total number of downloaded packages.