** Description changed: [SRU Justificaiton] [ Impact ] Latest IPU6/7 userspace framework becomes incompatible with ipu6-drivers using out-of-tree ipu6-isys kernel module. 1. The userspace framework has to be compatible with all kernels, and therefore all ipu6 kernel driver revisions, available in Noble. 2. There are implementation differences between the upstreamed ipu6-isys driver and that from out-of-tree git repository. Such differences are identified by a media device model name. 3. The out-of-tree driver ipu6-isys used to identify itself as "ipu6", but while it being upstreamed, this formal name was taken to identify the in-tree ipu6-isys driver, and therefore demanding the out-of-tree one to be renamed as "ipu6-downstream" instead. 4. The latest userspace framework has adopted such naming policy, so all the kernels that are still using out-of-tree ipu6-isys with such name identity must take corresponding action so that it won't be misidentified by the framework. [ Test Plan ] 1. install kernel from -proposed pocket. When this lands -updates, it will be taken to compiled against generic-6.8 and linux-oem-6.8 kernels; before that, an experimental built is available in https://launchpad.net/~canonical-hwe-team/+archive/ubuntu/intermediate- kernel 2. install necessary (ipu6/ipu7/usbio/vision) linux-modules- FOO-<variant> corresponding packages for the kernel. 3. For kernels > v6.10 it should be using the in-tree ipu6-isys, and out-of-tree one for kernel < v6.10. From `v4l2-ctl` output: ``` # kernel >= v6.10 $ v4l2-ctl -D -d 1 Driver Info: Driver name: intel-ipu6-isys Card type : ipu6 - # kernel > v6.10 + # kernel < v6.10 $ v4l2-ctl -D -d 1 Driver Info: Driver name: intel-ipu6-isys Card type : ipu6-downstream ``` 4. Use https://webcamtests.com/ to verify camera availability. [ Where problems could occur ] For old userspace framework, there is no such identity checks, so the new identity for the out-of-tree driver doesn't have an effect for the existing setups. [ Other Info ] This is already part of the drivers for kernel >= v6.10, and therefore it affects only ipu6-drivers/noble. ========== original bug report ========== The Intel's ARL enablement release (bug 2085845) also makes use of in- tree IPU6 ISYS kernel modules for kernel versions >= 6.10. This is not optional, and the differences between the in-tree and out-of-tree isys kernel modules result in the need of the compatibility handling only available in userspace HAL >= 20241122. The new kernel driver depends on the new HAL. To be worse, the media device model name that used to be "ipu6" is chosen to serve as an identity to distinguish the upstream (in-tree) and downstream (out-of-tree) implementation of isys. While the upstreamed isys driver must use "ipu6" as the model name, it means the downstream one has to rename media device model as "ipu6-downstream". Since the old ipu6-drivers always use "ipu6", and the new HAL assumes "ipu" means the in-tree isys but it's not, all the old ipu6-drivers deployments has to rename their media device model to "ipu6-downstream" when using the new HAL. Then, the last problem, Noble has both oem-6.11 and oem-6.8, which follows the oem-6.11 will need the new HAL, and the new HAL demands intel-isys module built along with oem-6.8 to be renamed as "ipu6-downstream". Proposed fix: https://github.com/intel/ipu6-drivers/pull/310
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2092139 Title: Rename media device as ipu6-downstream in Noble To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/ipu6-drivers/+bug/2092139/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs