dcz_: its in the USB descriptor, lsusb; lsusb -d 046d:08e5 -v, check for VideoControl Interface Descriptor:, you obviously need to know which descriptor is what anybody familiar with IPU3 and libcamera here? I have a Skylake machine and one sensor driver is not probing, but I still have other sensors up and running and `mediactl` even shows some entities, but `qcam` sees no cameras at all. Sure Can you post the dmesg output somewhere? The sensor driver not probing will unfortunately stop the whole thing working, as the cio2 driver doesn't create the video nodes until all the sensors complete probe...so hopefully it'll be easy to fix probe djrscally[m]: https://termbin.com/ovk9 This might explain, but why the rest is registered and I have several /dev/videoX? Are they for the Imgu rather than the CIO2 perhaps? There's 2 media graphs Surprised the ov7251 didn't probe, that should work really Becase we need a patch to actually use the line called reset and not enable. I haven't had a kernel with that module fixed. According to the desc it's an IR camare, if I'm not mistaken. Why is that critical anyhow? We probably should go w/o it. How do I check the type of the nodes? ls /dev/video* /dev/video0 /dev/video10 /dev/video12 /dev/video2 /dev/video4 /dev/video6 /dev/video8 /dev/video1 /dev/video11 /dev/video13 /dev/video3 /dev/video5 /dev/video7 /dev/video9 media-ctl -p | grep ^\- ------------------------ - entity 1: ipu3-csi2 0 (2 pads, 1 link, 0 routes) - entity 4: ipu3-cio2 0 (1 pad, 1 link) - entity 10: ipu3-csi2 1 (2 pads, 1 link, 0 routes) - entity 13: ipu3-cio2 1 (1 pad, 1 link) - entity 19: ipu3-csi2 - entity 22: ipu3-cio2 2 (1 pad, 1 link) - entity 28: ipu3-csi2 3 (2 pads, 1 link, 0 routes) - entity 31: ipu3-cio2 3 (1 pad, 1 link) - entity 37: ov8865 9-0010 (1 pad, 0 link, 0 routes) - entity 39: ov5693 8-0036 (1 pad, 0 link, 0 routes) - entity 41: dw 9719 9-000c (0 pad, 0 link, 0 routes) cam -l [49:32:22.562986210] [75475] ERROR IPAModule ipa_module.cpp:171 Symbol ipaModuleInfo not found [49:32:22.563015551] [75475] ERROR IPAModule ipa_module.cpp:291 v4l2-compat.so: IPA module has no valid info [49:32:22.563060309] [75475] INFO Camera camera_manager.cpp:325 libcamera v0.3.2 Available cameras: ==>> (no cameras) Just media-ctl -p should tell you if there's dev nodes for that graph Lemme get back to the pc I just put its(reduced) output above. media-ctl -p | grep '/dev/video' device node name /dev/video0 device node name /dev/video1 device node name /dev/video3 device node name /dev/video10 They are entities 4,13,22,31 respectively Yeah, sensors seem no video nodes. yeah it creates them on .complete() https://elixir.bootlin.com/linux/v6.12.6/source/drivers/media/pci/intel/ipu3/ipu3-cio2.c#L1426 So...why did I add the ov7251 to the list of devices in the ipu-bridge if it doesn't actually work And why does it work on my surface I see, so the failing sensors looks like the culprit. Okay, thank you much! I'll continue pursuing the patch to be upstreamed (Sakari asked me something about the last version of the change) djrscally[m]: it requires a patch to actually use RESET gpio instead of falsely added ENABLE And unfortunately we can't simply drop ENABLE as it seems laredy been spread to DT systems with that sensor (whoever added that in the first place, wasn't you IIRC) In any case it's not a big deal, _if_ that is the culprit. Just a small routine to go with. Yeah It works in my case because my surface is a surface go, and there the GPIO mapping works differently. So partially my bad, it shouldn't really be in the list of supported devices no need to do anything, it should work with Linux Surface kernel (from the respective GitHub), which has necessary patches. I mean no need to do on your side, I will handle the last piece(s). Alright, well let me know if you need anything :) djrscally[m]: definitely! Thanks!