stefanpartheym / archlinux-ipu6-webcam

Easy installation for patched Intel IPU6 camera drivers
149 stars 18 forks source link

Dell XPS 13 plus 9340 on Manjaro 6.6.32-1 #86

Closed AlexiZ closed 4 weeks ago

AlexiZ commented 5 months ago

Hi,

I am trying to get the camera working on XPS 9340 with Manjaro 6.6.32-1 but can't find any way to do it. As issue 78 suggests, I also tried to build icamerasrc-git to said commit but it did nothing much. His Dell is different than this one, 9320 instead of 9340, which can explain the failure.

Result of ./install.sh seems fine but $ ./test.sh fails : WARNING: erroneous pipeline: no element "icamerasrc".

Camera kinda seems to exist (?) as $ sudo dmesg | grep -i camera said :

[   13.563217] intel-ipu6 0000:00:05.0: IPU camera mask = 0x0
[   13.580327] intel-ipu6 0000:00:05.0: Connected 1 cameras

Can you help me with this please ?

Detailed outputs :

$ ./install.sh
# Install headers for: linux
# Install package from the AUR/repos: linux-headers
Sync Explicit (1): linux419-headers-4.19.315-1
avertissement : linux419-headers-4.19.315-1 est à jour -- ignoré
 il n’y a rien à faire
=> SUCCESS
# Wayland detected or explicitly requested. Installing 'gst-plugins-bad'.
# Install package from the AUR/repos: base-devel
Sync Explicit (1): base-devel-1-2
avertissement : base-devel-1-2 est à jour -- ignoré
 il n’y a rien à faire
=> SUCCESS
# Install package from the AUR/repos: intel-ivsc-firmware
 -> intel-ivsc-firmware-r10.10c214f-1 est à jour -- omission
 il n’y a rien à faire
=> SUCCESS
# Build and install package: intel-ipu6-dkms-git
~/Téléchargements/archlinux-ipu6-webcam/intel-ipu6-dkms-git ~/Téléchargements/archlinux-ipu6-webcam
==> Création du paquet intel-ipu6-dkms-git r165.cfb7af1e5-1 (ven. 07 juin 2024 15:22:38)
==> Vérification des dépendances pour l’exécution…
==> Vérification des dépendances pour la compilation…
==> Récupération des sources…
  -> Mise à jour du dépôt ipu6-drivers git…
==> Validation des fichiers source avec sha256sums…
    ipu6-drivers ... Ignoré
==> Extraction des sources…
  -> Création d’une copie de travail du dépot ipu6-drivers git…
Remise à zéro de la branche 'makepkg'
==> Lancement de prepare()…
Clonage dans 'ivsc-driver'...
remote: Enumerating objects: 382, done.
remote: Counting objects: 100% (178/178), done.
remote: Compressing objects: 100% (100/100), done.
remote: Total 382 (delta 90), reused 113 (delta 57), pack-reused 204
Réception d'objets: 100% (382/382), 153.78 Kio | 1.42 Mio/s, fait.
Résolution des deltas: 100% (148/148), fait.
==> Lancement de pkgver()…
==> ATTENTION : Un paquet a déjà été compilé, installation du paquet existant…
==> Installation du paquet intel-ipu6-dkms-git-fix avec pacman -U…
chargement des paquets…
avertissement : intel-ipu6-dkms-git-fix-r165.cfb7af1e5-1 est à jour -- ignoré
 il n’y a rien à faire
~/Téléchargements/archlinux-ipu6-webcam
=> SUCCESS
# Build and install package: intel-ipu6ep-camera-bin
~/Téléchargements/archlinux-ipu6-webcam/intel-ipu6ep-camera-bin ~/Téléchargements/archlinux-ipu6-webcam
==> Création du paquet ipu6-camera-bin r79.987b09a-1 (ven. 07 juin 2024 15:22:41)
==> Vérification des dépendances pour l’exécution…
==> Vérification des dépendances pour la compilation…
==> Récupération des sources…
  -> Mise à jour du dépôt ipu6-camera-bins git…
==> Validation des fichiers source avec sha256sums…
    ipu6-camera-bins ... Ignoré
==> Extraction des sources…
  -> Création d’une copie de travail du dépot ipu6-camera-bins git…
Remise à zéro de la branche 'makepkg'
==> Lancement de pkgver()…
==> ATTENTION : Un paquet a déjà été compilé, installation du paquet existant…
==> Installation du paquet intel-ipu6ep-camera-bin-fix avec pacman -U…
chargement des paquets…
avertissement : intel-ipu6ep-camera-bin-fix-r79.987b09a-1 est à jour -- ignoré
 il n’y a rien à faire
~/Téléchargements/archlinux-ipu6-webcam
=> SUCCESS
# Build and install package: intel-ipu6ep-camera-hal-git
~/Téléchargements/archlinux-ipu6-webcam/intel-ipu6ep-camera-hal-git ~/Téléchargements/archlinux-ipu6-webcam
==> Création du paquet intel-ipu6ep-camera-hal-git-fix r95.da2e282-1 (ven. 07 juin 2024 15:22:43)
==> Vérification des dépendances pour l’exécution…
==> Vérification des dépendances pour la compilation…
==> Récupération des sources…
  -> Mise à jour du dépôt ipu6-camera-hal git…
==> Validation des fichiers source avec sha256sums…
    ipu6-camera-hal ... Ignoré
==> Extraction des sources…
  -> Création d’une copie de travail du dépot ipu6-camera-hal git…
Remise à zéro de la branche 'makepkg'
==> Lancement de prepare()…
==> Lancement de pkgver()…
==> ATTENTION : Un paquet a déjà été compilé, installation du paquet existant…
==> Installation du paquet intel-ipu6ep-camera-hal-git-fix avec pacman -U…
chargement des paquets…
avertissement : intel-ipu6ep-camera-hal-git-fix-r95.da2e282-1 est à jour -- ignoré
 il n’y a rien à faire
~/Téléchargements/archlinux-ipu6-webcam
=> SUCCESS
# Build and install package: v4l2loopback-dkms-git
~/Téléchargements/archlinux-ipu6-webcam/v4l2loopback-dkms-git ~/Téléchargements/archlinux-ipu6-webcam
==> Création du paquet v4l2loopback-dkms-git-fix r10.0e96181-1 (ven. 07 juin 2024 15:22:45)
==> Vérification des dépendances pour l’exécution…
==> Vérification des dépendances pour la compilation…
==> Récupération des sources…
  -> Mise à jour du dépôt v4l2loopback git…
==> Validation des fichiers source avec md5sums…
    v4l2loopback ... Ignoré
==> Extraction des sources…
  -> Création d’une copie de travail du dépot v4l2loopback git…
Remise à zéro de la branche 'makepkg'
==> Lancement de prepare()…
patching file v4l2loopback.c
patching file v4l2loopback.c
patching file v4l2loopback.c
patching file v4l2loopback.c
patching file dkms.conf
==> Lancement de pkgver()…
==> ATTENTION : Un paquet a déjà été compilé, installation du paquet existant…
==> Installation du paquet v4l2loopback-dkms-git-fix avec pacman -U…
chargement des paquets…
avertissement : v4l2loopback-dkms-git-fix-r10.0e96181-1 est à jour -- ignoré
 il n’y a rien à faire
~/Téléchargements/archlinux-ipu6-webcam
=> SUCCESS
# Build and install package: v4l2-relayd
~/Téléchargements/archlinux-ipu6-webcam/v4l2-relayd ~/Téléchargements/archlinux-ipu6-webcam
==> Création du paquet v4l2-relayd r42.6fd6b6a-1 (ven. 07 juin 2024 15:22:47)
==> Vérification des dépendances pour l’exécution…
==> Vérification des dépendances pour la compilation…
==> Récupération des sources…
  -> Mise à jour du dépôt v4l2-relayd git…
==> Validation des fichiers source avec sha256sums…
    v4l2-relayd ... Ignoré
==> Extraction des sources…
  -> Création d’une copie de travail du dépot v4l2-relayd git…
Remise à zéro de la branche 'makepkg'
==> Lancement de pkgver()…
==> ATTENTION : Un paquet a déjà été compilé, installation du paquet existant…
==> Installation du paquet v4l2-relayd avec pacman -U…
chargement des paquets…
avertissement : v4l2-relayd-r42.6fd6b6a-1 est à jour -- ignoré
 il n’y a rien à faire
~/Téléchargements/archlinux-ipu6-webcam
=> SUCCESS
# Build and install package: icamerasrc-git-fix.old
~/Téléchargements/archlinux-ipu6-webcam/icamerasrc-git-fix.old ~/Téléchargements/archlinux-ipu6-webcam
==> Création du paquet icamerasrc-git-fix r59.17841ab-1 (ven. 07 juin 2024 15:22:49)
==> Vérification des dépendances pour l’exécution…
==> Vérification des dépendances pour la compilation…
==> Récupération des sources…
  -> Mise à jour du dépôt icamerasrc git…
==> Validation des fichiers source avec sha256sums…
    icamerasrc ... Ignoré
==> Extraction des sources…
  -> Création d’une copie de travail du dépot icamerasrc git…
Remise à zéro de la branche 'makepkg'
==> Lancement de prepare()…
==> Lancement de pkgver()…
==> ATTENTION : Un paquet a déjà été compilé, installation du paquet existant…
==> Installation du paquet icamerasrc-git-fix avec pacman -U…
chargement des paquets…
avertissement : icamerasrc-git-fix-r59.17841ab-1 est à jour -- ignoré
 il n’y a rien à faire
~/Téléchargements/archlinux-ipu6-webcam
=> SUCCESS
# Install package from the AUR/repos: gst-plugin-pipewire
Sync Dependency (1): gst-plugin-pipewire-1:1.0.7-2
avertissement : gst-plugin-pipewire-1:1.0.7-2 est à jour -- ignoré
 il n’y a rien à faire
=> SUCCESS
# Install package from the AUR/repos: gst-plugins-good
Sync Explicit (1): gst-plugins-good-1.24.3-1
avertissement : gst-plugins-good-1.24.3-1 est à jour -- ignoré
 il n’y a rien à faire
=> SUCCESS
# Install package from the AUR/repos: gst-plugins-bad
Sync Explicit (1): gst-plugins-bad-1.24.3-1
avertissement : gst-plugins-bad-1.24.3-1 est à jour -- ignoré
 il n’y a rien à faire
=> SUCCESS
# Enable: v4l2-relayd.service
=> SUCCESS
# Start: v4l2-relayd.service
=> SUCCESS
$ ./test.sh
WARNING: erroneous pipeline: no element "icamerasrc"
$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 002: ID 0bda:0487 Realtek Semiconductor Corp. Dell dock
Bus 002 Device 003: ID 0bda:0413 Realtek Semiconductor Corp. Dell dock
Bus 002 Device 004: ID 0bda:8153 Realtek Semiconductor Corp. RTL8153 Gigabit Ethernet Adapter
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 0bda:5487 Realtek Semiconductor Corp. Dell dock
Bus 003 Device 003: ID 27c6:633c Shenzhen Goodix Technology Co.,Ltd. Goodix Fingerprint USB Device
Bus 003 Device 004: ID 0b0e:0305 GN Netcom Jabra EVOLVE Link MS
Bus 003 Device 005: ID 8086:0b63 Intel Corp. USB Bridge
Bus 003 Device 006: ID 0bda:5413 Realtek Semiconductor Corp. Dell dock
Bus 003 Device 007: ID 8087:0036 Intel Corp. 
Bus 003 Device 008: ID 413c:b06e Dell Computer Corp. Dell dock
Bus 003 Device 009: ID 413c:b06f Dell Computer Corp. Dell dock
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
$ lspci.
0000:00:00.0 Host bridge: Intel Corporation Device 7d01 (rev 04)
0000:00:02.0 VGA compatible controller: Intel Corporation Meteor Lake-P [Intel Arc Graphics] (rev 08)
0000:00:04.0 Signal processing controller: Intel Corporation Device 7d03 (rev 04)
0000:00:05.0 Multimedia controller: Intel Corporation Device 7d19 (rev 04)
0000:00:06.0 System peripheral: Intel Corporation RST VMD Managed Controller
0000:00:07.0 PCI bridge: Intel Corporation Meteor Lake-P Thunderbolt 4 PCI Express Root Port #0 (rev 10)
0000:00:07.3 PCI bridge: Intel Corporation Meteor Lake-P Thunderbolt 4 PCI Express Root Port #3 (rev 10)
0000:00:08.0 System peripheral: Intel Corporation Device 7e4c (rev 20)
0000:00:0a.0 Signal processing controller: Intel Corporation Device 7d0d (rev 01)
0000:00:0b.0 Processing accelerators: Intel Corporation Meteor Lake NPU (rev 04)
0000:00:0d.0 USB controller: Intel Corporation Meteor Lake-P Thunderbolt 4 USB Controller (rev 10)
0000:00:0d.2 USB controller: Intel Corporation Meteor Lake-P Thunderbolt 4 NHI #0 (rev 10)
0000:00:0d.3 USB controller: Intel Corporation Meteor Lake-P Thunderbolt 4 NHI #1 (rev 10)
0000:00:0e.0 RAID bus controller: Intel Corporation Volume Management Device NVMe RAID Controller Intel Corporation
0000:00:12.0 Serial controller: Intel Corporation Device 7e45 (rev 20)
0000:00:14.0 USB controller: Intel Corporation Meteor Lake-P USB 3.2 Gen 2x1 xHCI Host Controller (rev 20)
0000:00:14.2 RAM memory: Intel Corporation Device 7e7f (rev 20)
0000:00:15.0 Serial bus controller: Intel Corporation Meteor Lake-P Serial IO I2C Controller #0 (rev 20)
0000:00:15.2 Serial bus controller: Intel Corporation Meteor Lake-P Serial IO I2C Controller #2 (rev 20)
0000:00:16.0 Communication controller: Intel Corporation Device 7e70 (rev 20)
0000:00:1c.0 PCI bridge: Intel Corporation Device 7e3f (rev 20)
0000:00:1e.0 Communication controller: Intel Corporation Meteor Lake-P Serial IO UART Controller #0 (rev 20)
0000:00:1f.0 ISA bridge: Intel Corporation Device 7e02 (rev 20)
0000:00:1f.3 Multimedia audio controller: Intel Corporation Meteor Lake-P HD Audio Controller (rev 20)
0000:00:1f.4 SMBus: Intel Corporation Meteor Lake-P SMBus Controller (rev 20)
0000:00:1f.5 Serial bus controller: Intel Corporation Meteor Lake-P SPI Controller (rev 20)
0000:71:00.0 Network controller: Intel Corporation Wi-Fi 7(802.11be) AX1775*/AX1790*/BE20*/BE401/BE1750* 2x2 (rev 1a)
10000:e0:06.0 PCI bridge: Intel Corporation Device 7e4d (rev 20)
10000:e1:00.0 Non-Volatile memory controller: KIOXIA Corporation NVMe SSD Controller XG8 (rev 01)

EDIT : Just noticed the "Tips and tricks" section referring to the error shown here from test.sh.

New output is showing lots of "critical"
Couldn't create a VA DRM displayCouldn't create a VA DRM displayCouldn't create a VA DRM display
(gst-plugin-scanner:18182): GStreamer-CRITICAL **: 17:15:45.791: gst_pad_template_new: assertion 'caps != NULL' failed

(gst-plugin-scanner:18182): GStreamer-CRITICAL **: 17:15:45.791: gst_element_class_add_pad_template: assertion 'GST_IS_PAD_TEMPLATE (templ)' failed

(gst-plugin-scanner:18182): GStreamer-WARNING **: 17:15:45.791: static caps 0x7f04e7522090 string is NULL

(gst-plugin-scanner:18182): GStreamer-CRITICAL **: 17:15:45.791: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-plugin-scanner:18182): GStreamer-WARNING **: 17:15:45.791: static caps 0x7f04e7522050 string is NULL

(gst-plugin-scanner:18182): GStreamer-CRITICAL **: 17:15:45.791: gst_mini_object_unref: assertion 'mini_object != NULL' failed
Couldn't create a VA DRM displayCouldn't create a VA DRM display[06-07 17:15:46.146] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.147] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.147] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.148] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.148] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.148] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.148] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.148] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.148] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.148] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.148] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.148] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.148] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.148] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.148] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.148] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.148] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.148] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.148] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.148] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.148] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.148] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.148] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE gain range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE eExposure time range failed
[06-07 17:15:46.149] CamHAL[ERR] Malformed ET range in exposure time range configuration
[06-07 17:15:46.149] CamHAL[ERR] Parse AE gain range failed
Couldn't create a VA DRM display
(gst-launch-1.0:18181): GStreamer-CRITICAL **: 17:15:46.150: gst_pad_template_new: assertion 'caps != NULL' failed

(gst-launch-1.0:18181): GStreamer-CRITICAL **: 17:15:46.150: gst_element_class_add_pad_template: assertion 'GST_IS_PAD_TEMPLATE (templ)' failed

(gst-launch-1.0:18181): GStreamer-WARNING **: 17:15:46.150: static caps 0x7fe12c9ff090 string is NULL

(gst-launch-1.0:18181): GStreamer-CRITICAL **: 17:15:46.150: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:18181): GStreamer-WARNING **: 17:15:46.150: static caps 0x7fe12c9ff050 string is NULL

(gst-launch-1.0:18181): GStreamer-CRITICAL **: 17:15:46.150: gst_mini_object_unref: assertion 'mini_object != NULL' failed

** (gst-launch-1.0:18181): CRITICAL **: 17:15:46.150: void gst_cam_base_src_add_src_pad(GstCamBaseSrc*, GstCamBaseSrcClass*): assertion 'pad_template != NULL' failed

(gst-launch-1.0:18181): GStreamer-CRITICAL **: 17:15:46.150: gst_caps_can_intersect: assertion 'GST_IS_CAPS (caps2)' failed

(gst-launch-1.0:18181): GStreamer-CRITICAL **: 17:15:46.150: gst_caps_can_intersect: assertion 'GST_IS_CAPS (caps2)' failed
WARNING: erroneous pipeline: could not link camerasrc0 to videoconvert0, camerasrc0 can't handle caps video/x-raw, format=(string)NV12, width=(int)1280, height=(int)720
hazimimdnazri commented 5 months ago

Had a similiar could not link camerasrc0 to videoconvert0 error with my XPS 9340 too. Has the camera able to work now? If yes, what is the solution?

AlexiZ commented 5 months ago

@hazimimdnazri I haven't tried again since this post, camera still not working on my end too.

stefanpartheym commented 1 month ago

Hi @AlexiZ, are you still having issues? You may want to try with a newer LTS kernel. For instance: 6.6.56-1-lts. Best regards Stefan

AlexiZ commented 1 month ago

Hi @stefanpartheym,

I am running on kernel LTS 6.6.52-1, which is not the .56 you are mentioning but I don't have the option to get this one for some reason. Maybe it's irrelevant though, since it's still the LTS.

Camera still doesn't work on my end. I tried to run the install script again from a fresh clone of your repository without success. Install script breaks while trying to build / install intel-ipu6ep-camera-bin package :

error: transaction validation failed (file conflict)
intel-ipu6ep-camera-bin-fix: /usr/lib/firmware/intel/ipu/ipu6_fw.bin already exists in the file system (owned by linux-firmware)
intel-ipu6ep-camera-bin-fix: /usr/lib/firmware/intel/ipu/ipu6ep_fw.bin already exists in the file system (owned by linux-firmware)
intel-ipu6ep-camera-bin-fix: /usr/lib/firmware/intel/ipu/ipu6epadln_fw.bin already exists in the file system (owned by linux-firmware)
intel-ipu6ep-camera-bin-fix: /usr/lib/firmware/intel/ipu/ipu6epmtl_fw.bin already exists in the file system (owned by linux-firmware)

I tried several changes to make it work but they all failed :

I am not familiar with PKGBUILD and don't know how to solve this, even with the help of ChatGPT...

Can you help me on this please ?

stefanpartheym commented 1 month ago

Hi @AlexiZ,

uff, honestly I have no idea, why you get this error. Seems to me like there is an issue with some of the packages you installed. The error message says, the files are owned by linux-firmware package. I could be wrong, but suspect the linux-firmware package already contains upstreamed drivers for 6.10.x kernels. Really this is just a wild wild guess. Maybe you need to downgrade linux-firmware.

AlexiZ commented 1 month ago

Hi @stefanpartheym, It looks like your guess is right : gitlab.com/kernel-firmware/linux-firmware/intel/ipu But I can't mess with package unfortunately : archlinux.org/packages/linux-firmware I don't have the solution right now but when I do, I'll post it here. Thank you for your time anyway :)

hazimimdnazri commented 1 month ago

@stefanpartheym do you think it will work on fresh arch installation with kernel 6.6.56-1-lts ?

stefanpartheym commented 1 month ago

Hi @stefanpartheym, It looks like your guess is right : gitlab.com/kernel-firmware/linux-firmware/intel/ipu But I can't mess with package unfortunately : archlinux.org/packages/linux-firmware I don't have the solution right now but when I do, I'll post it here. Thank you for your time anyway :)

Maybe you can try to radically rename the driver files temporarily. This would enable the you to install the AUR package. This way you could at least try if it works.

stefanpartheym commented 1 month ago

@stefanpartheym do you think it will work on fresh arch installation with kernel 6.6.56-1-lts ?

yes

AlexiZ commented 1 month ago

@stefanpartheym Your idea raised my hope and I tried it. Renaming .bin files worked to pass previous error ! I also had to make a few changes here and there. Later in the process, I came across this new error :

--   Package 'ia_imaging', required by 'virtual:world', not found
CMake Error at cmake/FindIA_IMAGING.cmake:28 (message):
  IA_IMAGING not found
Call Stack (most recent call first):
  CMakeLists.txt:285 (find_package)

Someone mentioned installation of pkgconf here : github.com/intel/ipu6-camera-hal/#18, which I did but as you can tell, it wasn't very helpful.

Any hint on this one ?

PS : I'll share everything I did when we're done, to get relevant parts only.

stefanpartheym commented 1 month ago

I have the exact same issue now too.

alexhulbert commented 1 month ago

Same here, I tried a whole bunch of things, using many different combinations of earlier commits, etc, but I'm still getting stuck at this call to find_package_handle_standard_args. A user on the Arch Linux forum mentioned that they were able to get a specific commit with specific patches working on the 9340 using a patched version of Fedora Linux w/ kernel 6.11. However, I couldn't get it to build under arch.

Here's the forum post

And the relevant rpm spec files for ipu6-camera-bin and intel-ipu6-camera-hal.

I'm guessing that these spec files are doing something the PKGBUILD isn't, but I can't seem to figure out what. I'm on the latest kernel btw, so maybe my situation is different from all of you since I'm guessing most people here are using the LTS build.

Once this is working, I plan to package the modifications made in that opensuse project page into a new fork of archlinux-ipu6-webcam that at the very least works with Meteor Lake CPUs on the new XPS series.

Theoretically, all this should be possible without even using the ipu6-drivers or any of the icamerasrc stuff. Fedora 41 has support for the 9340 just with a combination of new native support (as of kernel 6.10), libcamera-ipa, and intel-ivsc-firmware, both of which of are already in Arch.

stefanpartheym commented 1 month ago

Ok, so i got it partially working on the latest LTS kernel again. However, I can't really use it, because it does not work in my browsers (neither Chrome/Chromium/Brave nor Firefox). It works with the test.sh script though. All I did is, I pinned the commits of the packages intel-ipu6ep-camera-bin-fix and v4l2loopback-dkms-git-fix as follows:

diff --git a/intel-ipu6ep-camera-bin/PKGBUILD b/intel-ipu6ep-camera-bin/PKGBUILD
index d80ecd4..3ec6d7d 100644
--- a/intel-ipu6ep-camera-bin/PKGBUILD
+++ b/intel-ipu6ep-camera-bin/PKGBUILD
@@ -14,7 +14,7 @@ depends=('intel-ipu6-dkms-git' 'glibc')
 makedepends=('git')
 provides=(ipu6-camera-bin intel-ipu6ep-camera-bin)
 conflicts=(intel-ipu6-camera-bin intel-ipu6ep-camera-bin)
-source=("git+${url}.git")
+source=("git+${url}.git#commit=af5ba0cb4a763569ac7514635013e9d870040bcf")
 sha256sums=('SKIP')

 pkgver() {
diff --git a/v4l2loopback-dkms-git/PKGBUILD b/v4l2loopback-dkms-git/PKGBUILD
index 1b9ddeb..d55ec83 100644
--- a/v4l2loopback-dkms-git/PKGBUILD
+++ b/v4l2loopback-dkms-git/PKGBUILD
@@ -13,7 +13,7 @@ depends=('dkms')
 makedepends=('git' 'help2man')
 conflicts=("${_pkgbase}-dkms" "${_pkgbase}-dkms-git")
 provides=("${_pkgbase}-dkms")
-source=("git://git.launchpad.net/ubuntu/+source/v4l2loopback#branch=ubuntu/devel")
+source=("git://git.launchpad.net/ubuntu/+source/v4l2loopback#commit=0e961819fc46f98017af02e84b7973106edd12f1")
 md5sums=('SKIP')

 pkgver() {
@@ -35,7 +35,10 @@ package() {
     cd "${srcdir}/${_pkgbase}"
     mkdir -p "${pkgdir}/usr/share/licenses/${_pkgbase}"
     cp -vf COPYING "${pkgdir}/usr/share/licenses/${_pkgbase}"
-    make DESTDIR="${pkgdir}" PREFIX="/usr" install-utils install-man
+    #make DESTDIR="${pkgdir}" PREFIX="/usr" install-utils #install-man
+    # NOTE: Builing and installing man pages fails for some reason, so I just
+    # dont build and install them.
+    make DESTDIR="${pkgdir}" PREFIX="/usr" install-utils
     mkdir -p "${pkgdir}/usr/src/${_pkgbase}-${pkgver}"
     cp -ar * "${pkgdir}/usr/src/${_pkgbase}-${pkgver}"
 }

When I run ./test.sh, the camera works. I get also some errors, which seem to not have any negative impact on the camera itself:

Setting pipeline to PAUSED ...
[10-19 22:35:41.727] CamHAL[INF] aiqb file name ov01a10.aiqb
[10-19 22:35:41.728] CamHAL[INF] aiqb file name ov01a10.aiqb
[10-19 22:35:41.729] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-19 22:35:41.730] CamHAL[ERR] GetControl: Device node /dev/v4l-subdev16 IOCTL VIDIOC_G_EXT_CTRLS error: Invalid argument
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock

(gst-launch-1.0:31895): GStreamer-CRITICAL **: 22:35:41.776: Registering meta implementation 'GstCamerasrcMeta' without init function
[10-19 22:35:41.776] CamHAL[ERR] sensor output sub device is not set
Redistribute latency...
ERROR: from element /GstPipeline:pipeline0/GstWaylandSink:waylandsink0: Output window was closed
Additional debug info:
../gstreamer/subprojects/gst-plugins-bad/ext/wayland/gstwaylandsink.c(858): on_window_closed (): /GstPipeline:pipeline0/GstWaylandSink:waylandsink0
Execution ended after 0:00:06.860112642
Setting pipeline to NULL ...
Enter ia_aiq_get_aiqd_data()
Out-aiqd data size: 41480
[10-19 22:35:48.738] CamHAL[WAR] Failed to open file /run/camera/ov01a10-uf_VIDEO.aiqd, error No such file or directory
Freeing pipeline ...
stefanpartheym commented 4 weeks ago

It should work on LTS kernels now for most people with PR #92 now merged. Please refer to issue #90 and PR #92 for further information.

AlexiZ commented 3 weeks ago

@stefanpartheym sadly, it does not work yet. Install script works fine now but test script shows this error : ERROR: from element /GstPipeline:pipeline0/Gstcamerasrc:camerasrc0: src pad: Internal data flow error.. Here is the full output :

./test.sh
[10-28 09:12:01.447] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.447] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.447] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.447] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.447] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.447] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.447] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.447] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.448] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.448] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.449] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.449] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.449] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.449] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.450] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.450] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.450] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.450] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.450] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.450] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.450] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.450] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.450] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.450] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.450] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.450] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.450] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.450] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.450] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.450] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.451] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.451] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.451] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.451] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.451] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.451] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.451] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.451] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.451] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.451] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.451] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.451] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.452] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.452] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.452] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.452] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.452] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.452] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.452] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.452] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.452] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.452] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.452] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.452] CamHAL[ERR] Parse AE gain range failed
[10-28 09:12:01.452] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.452] CamHAL[ERR] Parse AE eExposure time range failed
[10-28 09:12:01.452] CamHAL[ERR] Malformed ET range in exposure time range configuration
[10-28 09:12:01.452] CamHAL[ERR] Parse AE gain range failed
Setting pipeline to PAUSED ...
[10-28 09:12:02.317] CamHAL[INF] aiqb file name ov13b10.aiqb
[10-28 09:12:02.317] CamHAL[INF] aiqb file name ov13b10.aiqb
[10-28 09:12:02.317] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-28 09:12:02.317] CamHAL[INF] aiqb file name ov13b10.aiqb
[10-28 09:12:02.317] CamHAL[INF] aiqb file name ov13b10.aiqb
[10-28 09:12:02.318] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-28 09:12:02.318] CamHAL[INF] aiqb file name ov8856.aiqb
[10-28 09:12:02.318] CamHAL[INF] aiqb file name ov8856.aiqb
[10-28 09:12:02.318] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.318] CamHAL[INF] aiqb file name ov8856.aiqb
[10-28 09:12:02.318] CamHAL[INF] aiqb file name ov8856.aiqb
[10-28 09:12:02.318] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.318] CamHAL[INF] aiqb file name ov01a10.aiqb
[10-28 09:12:02.319] CamHAL[INF] aiqb file name ov01a10.aiqb
[10-28 09:12:02.320] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-28 09:12:02.320] CamHAL[INF] aiqb file name ov01a10.aiqb
[10-28 09:12:02.320] CamHAL[INF] aiqb file name ov01a10.aiqb
[10-28 09:12:02.320] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-28 09:12:02.320] CamHAL[INF] aiqb file name OV02C10_1BG203N3_ADL.aiqb
[10-28 09:12:02.320] CamHAL[INF] aiqb file name OV02C10_1BG203N3_ADL.aiqb
[10-28 09:12:02.320] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-28 09:12:02.320] CamHAL[INF] aiqb file name OV02C10_1SG204N3_ADL.aiqb
[10-28 09:12:02.320] CamHAL[INF] aiqb file name OV02C10_1SG204N3_ADL.aiqb
[10-28 09:12:02.320] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.320] CamHAL[INF] aiqb file name OV02C10_CIFME14_ADL.aiqb
[10-28 09:12:02.320] CamHAL[INF] aiqb file name OV02C10_CIFME14_ADL.aiqb
[10-28 09:12:02.321] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.321] CamHAL[INF] aiqb file name OV02C10_1BG203N3_ADL.aiqb
[10-28 09:12:02.321] CamHAL[INF] aiqb file name OV02C10_1BG203N3_ADL.aiqb
[10-28 09:12:02.321] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-28 09:12:02.321] CamHAL[INF] aiqb file name OV02C10_1SG204N3_ADL.aiqb
[10-28 09:12:02.321] CamHAL[INF] aiqb file name OV02C10_1SG204N3_ADL.aiqb
[10-28 09:12:02.321] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.321] CamHAL[INF] aiqb file name OV02C10_CIFME14_ADL.aiqb
[10-28 09:12:02.321] CamHAL[INF] aiqb file name OV02C10_CIFME14_ADL.aiqb
[10-28 09:12:02.321] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.321] CamHAL[INF] aiqb file name OV2740_CJFLE23_ADL.aiqb
[10-28 09:12:02.321] CamHAL[INF] aiqb file name OV2740_CJFLE23_ADL.aiqb
[10-28 09:12:02.321] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.321] CamHAL[INF] aiqb file name HM2170_1SG205N3_ADL.aiqb
[10-28 09:12:02.321] CamHAL[INF] aiqb file name HM2170_1SG205N3_ADL.aiqb
[10-28 09:12:02.321] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.321] CamHAL[INF] aiqb file name HM2170_CJFME18_ADL.aiqb
[10-28 09:12:02.322] CamHAL[INF] aiqb file name HM2170_CJFME18_ADL.aiqb
[10-28 09:12:02.322] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.322] CamHAL[INF] aiqb file name HM2170_1SG205N3_ADL.aiqb
[10-28 09:12:02.322] CamHAL[INF] aiqb file name HM2170_1SG205N3_ADL.aiqb
[10-28 09:12:02.322] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.322] CamHAL[INF] aiqb file name HM2170_CJFME18_ADL.aiqb
[10-28 09:12:02.322] CamHAL[INF] aiqb file name HM2170_CJFME18_ADL.aiqb
[10-28 09:12:02.322] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.322] CamHAL[INF] aiqb file name HI556_1BG502T3_ADL.aiqb
[10-28 09:12:02.322] CamHAL[INF] aiqb file name HI556_1BG502T3_ADL.aiqb
[10-28 09:12:02.322] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.322] CamHAL[INF] aiqb file name HI556_CJFLE25_ADL.aiqb
[10-28 09:12:02.322] CamHAL[INF] aiqb file name HI556_CJFLE25_ADL.aiqb
[10-28 09:12:02.322] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.322] CamHAL[INF] aiqb file name ov01a1s.aiqb
[10-28 09:12:02.322] CamHAL[INF] aiqb file name ov01a1s.aiqb
[10-28 09:12:02.322] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.322] CamHAL[INF] aiqb file name OV08A10_YHUT_ADL.aiqb
[10-28 09:12:02.322] CamHAL[INF] aiqb file name OV08A10_YHUT_ADL.aiqb
[10-28 09:12:02.323] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.323] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.324] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.324] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.324] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.324] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.324] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.324] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.324] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.324] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.324] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.324] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.324] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.324] CamHAL[INF] aiqb file name IMX390_HDR_TGL.aiqb
[10-28 09:12:02.324] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.324] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.324] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.324] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.324] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.324] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.324] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.324] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.324] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.324] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.324] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.324] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.325] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.325] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.325] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.325] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.325] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[INF] aiqb file name AR0234_TGL_10bits.aiqb
[10-28 09:12:02.325] CamHAL[ERR] invalid media format, default value used.
[10-28 09:12:02.325] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-28 09:12:02.325] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-28 09:12:02.325] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-28 09:12:02.325] CamHAL[INF] (null), media format in tuning: 0, media format for aic 0.
[10-28 09:12:02.325] CamHAL[ERR] Failed to find DevName for cameraId: 0, get video node: ov13b10 , devname: /dev/v4l-subdev1
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
[10-28 09:12:02.332] CamHAL[ERR] Get entity fail for calling getEntityById
[10-28 09:12:02.332] CamHAL[ERR] Get entity fail for calling getEntityById
[10-28 09:12:02.332] CamHAL[ERR] setup Link ov13b10  [-1:0] ==> Intel IPU6 CSI-2  [-1x0] enable 1 failed.
[10-28 09:12:02.332] CamHAL[ERR] set MediaCtlConf McLink failed: ret = -1
[10-28 09:12:02.332] CamHAL[ERR] set up mediaCtl failed
[10-28 09:12:02.332] CamHAL[ERR] @configure Device Configure failed
[10-28 09:12:02.332] CamHAL[ERR] failed to config streams.
ERROR: from element /GstPipeline:pipeline0/Gstcamerasrc:camerasrc0: src pad: Internal data flow error.
Additional debug info:
gstcambasesrc.cpp(3143): gst_cam_base_src_loop (): /GstPipeline:pipeline0/Gstcamerasrc:camerasrc0:
streaming task paused, reason not-negotiated (-4)
Execution ended after 0:00:00.004131971
Setting pipeline to NULL ...
Freeing pipeline ...

I did not find any helpful tip in #90.

hazimimdnazri commented 2 weeks ago

@AlexiZ I don't think XPS 9340 will work, seems our sensor HM1092 is still not being supported.

alexhulbert commented 1 week ago

@AlexiZ I don't think XPS 9340 will work, seems our sensor HM1092 is still not being supported.

@hazimimdnazri @AlexiZ

HM1092 is actually just the IR sensor. The camera itself is supported.

hazimimdnazri commented 1 week ago

@alexhulbert Ah really? I did try to get the sensor of XPS 9340 from this and it returns the HM1092.

alexhulbert commented 1 week ago

@hazimimdnazri https://hansdegoede.dreamwidth.org/28841.html?thread=5289#cmt5289 He confirms in the comments below it's a false alarm. Seems like you're probably also having issues with the ivsc drivers picking up the right sensor then. I believe that there are two parallel solutions to these ipu6 drivers right now: the new drivers that take advantage of recent changes to the Linux kernel and the out-of-tree drivers used in this repo. The package that populates that /sys/ folder is not actually necessary for any of the packages provided by the script in this repo and vice versa, but I couldn't get either to work on my laptop on the latest Linux kernel. Seems like multiple people have gotten them working with the new XPS series on Ubuntu, Fedora, and OpenSUSE, so it can't be too hard.

hazimimdnazri commented 1 week ago

@alexhulbert Thank you for the clarification! So based on your comment and what I've read on the article the ivsc driver is the culprit? AFAIK the camera is working on ubuntu because oem kernel is being used. Are you using xps 9340 as well?

alexhulbert commented 1 week ago

@alexhulbert Thank you for the clarification! So based on your comment and what I've read on the article the ivsc driver is the culprit? AFAIK the camera is working on ubuntu because oem kernel is being used. Are you using xps 9340 as well?

@hazimimdnazri Yeah exactly, I emailed Hans a while back and he said the following:

The normal sensor not being visible under /sys/bus/i2c/devices typically is caused by something being amiss with the Intel VSC driver which needs to probe the iVSC chip successfully before the main sensor will show up under /sys/bus/i2c/devices

He couldn't give me anything beyond that though, since he's focusing on Fedora support.

I'm guessing you're also seeing "probe with driver vsc-tp failed with error -22" in your kernel log. That seems to be the culprit.

As for the Ubuntu OEM kernel, I actually compiled the kernel with the relevant changes in my test. I followed this post and tried to get the out-of-tree ipu6 drivers working on my laptop but i ran into issues compiling the specified commit of ipu6-camera-hal, even without the patches.

I have a 9640 by the way, but all of the positive examples I've seen have been for the 9340. I think they both work on Ubuntu (which uses out of tree drivers) and Fedora (which uses in tree drivers) so in all likelihood, they're using the same sensor.