Skip to content

Thinkpad X1 Carbon

X1 Carbon Gen 7 (private)

X1 Carbon Gen 10 (work)

Webcam

Doesn't work yet. From the arch wiki page:

Warning: Do not buy this laptop (says even Lenovo) with a 2.8k OLED screen because the only webcam available with that screen is the MIPI camera (listed by Lenovo as 'Computer Vision camera') which does not have open source drivers and will just not work in the coming few years.

Works on kernel 6.5, but not on 6.6: Rebuilding the DKMS in Kernel 6.6.2 is problematic

Installation from kernel v6.11 onwards

From Debian bugtracker: linux-image-amd64: Please enable several CONFIG_ options required for IPU6/MIPI cameras

  • Linux kernel >= 6.11.1
  • libcamera >= 0.3.1-2
    • "libcamera requires DMAHEAP, so beyond the settings mentioned above, one also has to enable DMABUF_HEAPS (and possibly DMABUF_HEAPS_SYSTEM options; I just set bot to y)"
  • systemd > v256, or create the file /etc/udev/rules.d/70-ipu6-psys.rules as shown in the relevant PR: rules: Add uaccess tag to /dev/udmabuf Install packages shown in this success tutorial:
sudo pacman -S extra/gst-plugin-libcamera extra/pipewire-libcamera extra/libcamera-tools extra/libcamera-ipa extra/libcamera
pamac install intel-ivsc-firmware

Still with cheese:

Internal data stream error.: ../gstreamer/subprojects/gstreamer/libs/gst/base/gstbasesrc.c(3177): gst_base_src_loop (): /GstCameraBin:camerabin/GstWrapperCameraBinSrc:camera_source/GstBin:bin36/GstPipeWireSrc:pipewiresrc1:
streaming stopped, reason not-negotiated (-4)

Pre 6.11 install

sudo pacman -S linux65-headers

git clone https://github.com/stefanpartheym/archlinux-ipu6-webcam ~/work/webcam/archlinux-ipu6-webcam
cd ~/work/webcam/archlinux-ipu6-webcam
./install.sh

If it breaks compiling the icamerasrc-git AUR package dependency follow this fix:

git clone https://aur.archlinux.org/icamerasrc-git.git ~/work/webcam/icamerasrc-git
cd ~/work/webcam/icamerasrc-git
sed -i 's/branch=icamerasrc_slim_api/commit=17841ab6249aaa69bd9b3959262bf182dee74111/'\
  PKGBUILD
makepkg -sic

Then run the install script again:

cd ~/work/webcam/archlinux-ipu6-webcam
./install.sh

After successfull execution:

reboot

Test webcam with ./test.sh

./test.sh

Uninstall:

sudo pacman -R dkms intel-ipu6-dkms-git-fix intel-ipu6ep-camera-bin \
  intel-ivsc-driver-dkms-git v4l2loopback-dkms-git-fix \
  intel-ipu6ep-camera-hal-git-fix icamerasrc-git v4l2loopback-dkms-git-fix \
  v4l2-relayd-fix intel-ipu6ep-camera-bin-fix intel-ipu6ep-camera-hal-git-fix