Comment 71 for bug 1955383

Revision history for this message
Norbert Schuch (nschuch) wrote (last edit ):

Hello,

I am having issues which look similar to those reported by Stuart in getting to run the Camera on a Lenovo X1 Gen10. (But unfortunately, rebooting did not help.) The camera shows up in gst-device-monitor as "ipu6" with unreasonable parameters, and gst-launch complains about 2:0:0:0 colorimetry.

This behavior is observed both in Ubuntu 22.04 with the default kernel 5.15.0-40 and in Ubuntu/Debian with a self-compiled kernel 5.18.9 with the ipu6/ivsc modules included (with small variations, the 5.18.9 does not manage to bring up the relayd, and no test device is present; and under 5.15, gst-device-monitor only reports the ipu6 device for root).

Any help is very much appreciated -- thank you! Let me know what other information to supply.

To start with, here's what I see for the default 5.15.0-40 kernel + ipu6 packages:

=====================================================
# gst-device-monitor-1.0 | head -n50
Probing devices...

Device found:

 name : ipu6
 class : Video/Source
 caps : video/x-raw(format:Interlaced), format=YUY2, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode=alternate
         video/x-raw, format=YUY2, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode={ (string)progressive, (string)interleaved }
         video/x-raw(format:Interlaced), format=YUY2, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode=alternate
         video/x-raw(format:Interlaced), format=UYVY, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode=alternate
         video/x-raw, format=UYVY, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode={ (string)progressive, (string)interleaved }
         video/x-raw(format:Interlaced), format=UYVY, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode=alternate
         video/x-raw(format:Interlaced), format=BGRx, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode=alternate
         video/x-raw, format=BGRx, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode={ (string)progressive, (string)interleaved }
         video/x-raw(format:Interlaced), format=BGRx, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode=alternate
         video/x-raw(format:Interlaced), format=xRGB, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode=alternate
         video/x-raw, format=xRGB, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode={ (string)progressive, (string)interleaved }
         video/x-raw(format:Interlaced), format=xRGB, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ], interlace-mode=alternate
         video/x-bayer, format=rggb, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ]
         video/x-bayer, format=grbg, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ]
         video/x-bayer, format=gbrg, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ]
         video/x-bayer, format=bggr, framerate=[ 0/1, 2147483647/1 ], width=[ 1, 16384 ], height=[ 1, 16384 ]
 properties:
  udev-probed = true
  device.bus_path = /sys/devices/pci0000:00/0000:00:05.0/intel-ipu6-isys0/video4linux/video1
  sysfs.path = /sys/devices/pci0000:00/0000:00:05.0/intel-ipu6-isys0/video4linux/video1
  device.subsystem = video4linux
  device.product.name = ipu6
  device.capabilities = :capture:
  device.api = v4l2
  device.path = /dev/video1
  v4l2.device.driver = intel-ipu6-isys
  v4l2.device.card = ipu6
  v4l2.device.bus_info = PCI:pci:pci0000:00
  v4l2.device.version = 331555 (0x00050f23)
  v4l2.device.capabilities = 2216693760 (0x84201000)
  v4l2.device.device_caps = 69210112 (0x04201000)
 gst-launch-1.0 v4l2src device=/dev/video1 ! ...

Device found:

 name : Virtual Camera
 class : Video/Source
 caps : video/x-raw, format=YUY2, width=1280, height=720, framerate=30/1
         video/x-raw(format:Interlaced), format=YUY2, width=1280, height=720, framerate=30/1, interlace-mode=alternate
 properties:
  udev-probed = true
  device.bus_path = /sys/devices/virtual/video4linux/video0

==========================================================

# gst-launch-1.0 v4l2src device=/dev/video1 ! videoconvert ! glimagesink
Setting pipeline to PAUSED ...
error: XDG_RUNTIME_DIR not set in the environment.
Pipeline is live and does not need PREROLL ...
Got context from element 'sink': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayX11\)\ gldisplayx11-0";
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Device '/dev/video1' does not support 2:0:0:0 colorimetry
Additional debug info:
../sys/v4l2/gstv4l2object.c(4104): gst_v4l2_object_set_format_full (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
Device wants 2:0:0:0 colorimetry
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error.
Additional debug info:
../libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
Execution ended after 0:00:00.004996726
Setting pipeline to NULL ...
Freeing pipeline ...

===================================================================

# dpkg -l | grep ipu6
ii libcamhal-ipu6ep-common 0~git202204151018.5bc81d1~ubuntu22.04.4 all HAL library for MIPI camera through Intel IPU6 - common files
ii libcamhal-ipu6ep0 0~git202204151018.5bc81d1~ubuntu22.04.4 amd64 HAL library for MIPI camera through Intel IPU6
ii libipu6 0~git202204010644.0797f74-1~ubuntu22.04.1 amd64 API for Intel IPU6 camera on Intel Tiger Lake platform
ii libipu6ep 0~git202204010644.0797f74-1~ubuntu22.04.1 amd64 API for Intel IPU6 camera on Intel Alder Lake platform

==================================================================

# uname -a
Linux nystop 5.15.0-40-generic #43-Ubuntu SMP Wed Jun 15 12:54:21 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

==================================================================