You are not logged in.
I don't think the issue was powertop in the end, still trying to figure it out. If someone is experiencing the same, please do tell. I'm using pipewire 0.3.56.
It seems like any run of powertop --auto-tune during boot is enough to throw the sound off (playing through speakers will stop after a while). You don't need the sof kernel either, upstream works fine, but you can't use powertop --auto-tune, at least on my system. If someone has found a way around this, please do tell...
Offline
Mads wrote:I don't think the issue was powertop in the end, still trying to figure it out. If someone is experiencing the same, please do tell. I'm using pipewire 0.3.56.
It seems like any run of powertop --auto-tune during boot is enough to throw the sound off (playing through speakers will stop after a while). You don't need the sof kernel either, upstream works fine, but you can't use powertop --auto-tune, at least on my system. If someone has found a way around this, please do tell...
I wonder if requiring pipewire to keep it active is not enough to "solve" that (but I guess it's counter intuitive for battery life)
example how to keep it open
Offline
If you're on Gentoo, the fol4 overlay has ebuilds with ipu6-drivers and ivsc-driver. You still need to fix userspace and firmware yourself, but then at least you have an easy way of rebuilding modules.
They don't check if you have the required CONFIG set yet, so look out for depmod symbol errors. You might need to enable some media devices (e.g. IPU3) to make the kernel include all dependent libs in the build.
Offline
Seems like zebra-ok on github was successful in building the modules with dkms using ubuntus srpms: https://github.com/intel/ipu6-driver/is … 1191848414
So with that method of building the module, I guess there's no need for that v4l2loopback workaround. Someone should test if it works properly, I'm a bit fed up with this now...
Edit: Sorry I didn't see the previous post, I had the tab open
Have you found a configuration to make the webcam work without having to run the gst-launch command manually before apps can access the camera?
Offline
Hi Mads,
I got it working.
sudo modprobe v4l2loopback video_nr=1 card_label=v4l2 exclusive_caps=1 max_buffers=2
sudo -E gst-launch-1.0 icamerasrc buffer-count=7 device-name=ov01a10-uf ! video/x-raw,format=YUY2,width=1280,height=720 ! v4l2sink device=/dev/video1
first of all thank you very much for your efforts so far. I am now at the same point as you with the gstreamer error message. After I run the modprobe and gst-launch I still get:
# gst-launch-1.0 icamerasrc buffer-count=7 device-name=ov01a10-uf ! video/x-raw,format=YUY2,width=1280,height=720 ! v4l2sink device=/dev/video1
Setting pipeline to PAUSED ...
[08-06 20:36:27.92] CamHAL[INF] aiqb file name ov01a10.aiqb
[08-06 20:36:27.93] CamHAL[INF] aiqb file name ov01a10.aiqb
[08-06 20:36:27.93] CamHAL[INF] aiqb file name ov01a10.aiqb
[08-06 20:36:27.93] CamHAL[INF] aiqb file name ov01a10.aiqb
[08-06 20:36:27.93] CamHAL[INF] aiqb file name OV02C10_1BG203N3_ADL.aiqb
[08-06 20:36:27.93] CamHAL[INF] aiqb file name OV02C10_1BG203N3_ADL.aiqb
[08-06 20:36:27.93] CamHAL[ERR] Failed to find DevName for cameraId: 0, get video node: ov01a10 , devname: /dev/v4l-subdev1
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
[08-06 20:36:27.99] CamHAL[ERR] Get entity fail for calling getEntityById
[08-06 20:36:27.99] CamHAL[ERR] Get entity fail for calling getEntityById
[08-06 20:36:27.99] CamHAL[ERR] setup Link ov01a10 [-1:0] ==> Intel IPU6 CSI-2 [-1x0] enable 1 failed.
[08-06 20:36:27.99] CamHAL[ERR] set MediaCtlConf McLink failed: ret = -1
[08-06 20:36:27.99] CamHAL[ERR] set up mediaCtl failed
[08-06 20:36:27.99] CamHAL[ERR] @configure Device Configure failed
[08-06 20:36:27.99] 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.004165145
Setting pipeline to NULL ...
Freeing pipeline ...
ipu6 kernel modules are loaded:
# lsmod | grep ipu
intel_ipu6_isys 139264 0
videobuf2_dma_contig 28672 1 intel_ipu6_isys
v4l2_fwnode 32768 1 intel_ipu6_isys
v4l2_async 32768 2 v4l2_fwnode,intel_ipu6_isys
videobuf2_v4l2 40960 1 intel_ipu6_isys
videobuf2_common 86016 4 videobuf2_dma_contig,videobuf2_v4l2,intel_ipu6_isys,videobuf2_memops
videodev 307200 5 v4l2_async,videobuf2_v4l2,v4l2loopback,intel_ipu6_isys,videobuf2_common
mc 69632 4 videodev,videobuf2_v4l2,intel_ipu6_isys,videobuf2_common
intel_ipu6_psys 110592 0
intel_ipu6 114688 2 intel_ipu6_isys,intel_ipu6_psys
The modprobe command for the v4l2loopback segfaults if I don't boot with kernel parameter ibt=off but with it gets loaded fine.
# lsmod | grep loop
v4l2loopback 57344 0
videodev 307200 5 v4l2_async,videobuf2_v4l2,v4l2loopback,intel_ipu6_isys,videobuf2_common
Kernel messages look good so far except for the "set secure mode" error:
# journalctl -k --grep=ipu6
intel-ipu6 intel-ipu: enabling device (0000 -> 0002)
intel-ipu6 intel-ipu: Device 0x465d (rev: 0x2)
intel-ipu6 intel-ipu: physical base address 0x603c000000
intel-ipu6 intel-ipu: mapped as: 0x00000000d405edd1
intel-ipu6 intel-ipu: Unable to set secure mode
intel-ipu6 intel-ipu: IPU in non-secure mode
intel-ipu6 intel-ipu: Skip ipc reset for non-secure mode
intel-ipu6 intel-ipu: IPC reset done
intel-ipu6 intel-ipu: cpd file name: intel/ipu6ep_fw.bin
intel-ipu6 intel-ipu: FW version: 20211011
intel-ipu6 intel-ipu: IPU driver version 1.0
intel-ipu6-psys intel-ipu6-psys0: pkg_dir entry count:8
intel-ipu6-psys intel-ipu6-psys0: psys probe minor: 0
intel-ipu6 intel-ipu: IPU in non-secure mode
intel-ipu6 intel-ipu: Skip ipc reset for non-secure mode
v4l2-ctl also recognizes:
# v4l2-ctl --all
Driver Info:
Driver name : intel-ipu6-isys
Card type : ipu6
Bus info : PCI:pci:pci0000:00
Driver version : 5.18.16
Capabilities : 0x84201000
Video Capture Multiplanar
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04201000
Video Capture Multiplanar
Streaming
Extended Pix Format
Media Driver Info:
Driver name : intel-ipu6-isys
Model : ipu6
Serial :
Bus info : pci:pci0000:00
Media version : 5.18.16
Hardware revision: 0x00000000 (0)
Driver version : 5.18.16
Even an strace did not reveal anything useful at least to me.
I am out of ideas. What am I missing?
Offline
@sxw The sensor kernel module is missing. Look at my output, there is "ov01a10", too
$ lsmod | grep ipu
intel_ipu6_isys 126976 0
videobuf2_dma_contig 20480 1 intel_ipu6_isys
videobuf2_v4l2 36864 1 intel_ipu6_isys
videobuf2_common 69632 4 videobuf2_dma_contig,videobuf2_v4l2,intel_ipu6_isys,videobuf2_memops
intel_ipu6_psys 98304 0
intel_ipu6 94208 2 intel_ipu6_isys,intel_ipu6_psys
v4l2_fwnode 32768 2 ov01a10,intel_ipu6_isys
v4l2_async 28672 3 v4l2_fwnode,ov01a10,intel_ipu6_isys
videodev 274432 6 v4l2_async,videobuf2_v4l2,ov01a10,v4l2loopback,intel_ipu6_isys,videobuf2_common
mc 69632 5 videodev,videobuf2_v4l2,ov01a10,intel_ipu6_isys,videobuf2_common
How did you build the modules? After using vicamos repo and applying their patches for Ubuntu, and afterwards building first the ivsc, then the ipu6 with dkms, it worked.
Offline
@sxw The sensor kernel module is missing
Oh, indeed. Good point. I checked the module tree and found the ov01a1s module what is appearently the wrong one. Maybe I have to go back and check if I patched the sources correctly.
When you are talking about "vicamos repo" you are referring to https://github.com/vicamo/ipu6-drivers/ … inst-v5.18 ?
Thank you!
Offline
Have you found a configuration to make the webcam work without having to run the gst-launch command manually before apps can access the camera?
No, the reasing I said that was due to a misunderstanding. I thought it was working with the ubuntu provided drivers, but they were the same in the end.
So I still use gstreamer. I actually have started with using gstreamer for other webcams too, because cheap webcams often only give the best resolution when using codecs like MJPEG, and you can't get browsers to use that. But by using gstreamer you can convert it to something that the browser accepts, thus you end up with a video stream that is a lot better.
Last edited by Mads (2022-08-08 10:16:54)
Offline
@sxw I had exactly the same output as you.
But running
journalctl -k --grep=ivsc
told me that that actually ivsc-firmware hasn't been installed properly. So instead of copying to "/lib/firmware/vsc" one should copy it "/lib/firmware/vsc/soc_a1_prod/" and add corresponding "_a1_prod" suffixes to the files. See the notice for production platform.
after that running "gst-launch" with sudo did the trick for me!
Online
@sxw
Check the last page, I linked the launchpad repos from vicamo.
@Mads
But how does Ubuntu solve it? Do you also need to run a command on the terminal before you plan to use the webcam?
Offline
Hello all and thank you for efforts !
my camera currently works on my Dell XPS 13 Plus. :-)
I'm sharing my steps, maybe it could help someone else (i hope so).
1) i followed procedure described by sachkris
NB : compile linux kernel was mandatory for me, because of error with other ways tested
2) i followed feedback provided by Dell support and available here : https://bugs.launchpad.net/ubuntu/+sour … omments/40
NB : i'm not using Arch but KDE Neon (ubuntu LTS + latest KDE Plasma)
Currently i dont know what made my camera working, because i first tested dell procedure (found before Dell reply feedback) and it didn't work.
So maybe some binary copy + dell procedure + reboot could explain it.
It's in french, but i made a step by step procedure to help other Dell XPS 13 Plus owners right here : https://coder-pour-changer-de-vie.com/d … plus-9320/
NB : the bash step could help, i wrote a bash to update .Konfig and Makefiles in one step.
Have a good day !
Nicolas.
Offline
@Mads
But how does Ubuntu solve it? Do you also need to run a command on the terminal before you plan to use the webcam?
I'm not sure, but I thought that was the case..? Do anyone have the opportunity to test with the Ubuntu OEM image and see?
Offline
@sxw
Check the last page, I linked the launchpad repos from vicamo.
Finally, I got it!
It indeed was the ov01a10 module that was not build because I kept trying the out-of-kernel-tree build variant. Doing the in-kernel-tree variant did the trick.
Thank you very much to all of you.
Offline
Another post in this saga. I previously mentioned that I got sound freezes if I used powertop --auto-tune. After a series of tests, I found out that the triggering setting was if I enabled powersaving on my wifi card. Really strange. If I enable everything with powertop _except_ powersaving on my wifi, the sound doesn't freeze anymore.
Posted about it here (and the script I use for applying powertop settings is there too): https://github.com/thesofproject/linux/ … 1214373478
Last edited by Mads (Yesterday 13:13:33)
Offline