Greg KH Recommends Avoiding Alder Lake Laptops - Intel Webcam Linux Driver Long Ways Out
The MIPI IPU6 camera found with newer Alder Lake laptops like in the Dell XPS 13 9315/9320 and Lenovo ThinkPad X1 Carbon is unfortunately not Linux-friendly at this time.
Intel has published a repository with IPU6 kernel driver code but is not intended for upstream kernel use. Besides only working with a limited range of kernel versions (Linux 5.15 LTS being their target right now), the IPU6 driver code on GitHub also isn't intended for use with all OEM devices having the IPU6 web cameras.
It was also raised that besides the kernel drivers not being upstream, the IPU6 usage currently has a proprietary stack in user-space and the exposed user-space API isn't making use of the common Video 4 Linux 2 (V4L2) interface. The IPU6 camera is much more complex and thus the software side changes are more involved while camera vendors being hesitant on opening any imaging algorithms. Libcamera developer Laurent Pinchart commented, "For the time being, I agree with your recommendation to not buy these devices if you care about camera support."
Greg KH then commented:
I second this, don't buy these devices if the vendor is not willing to get their drivers upstreamed properly.
It was then brought up by a Google engineer that the plan is to introduce the CAM kernel API for use by the IPU6 driver as an alternative to the existing V4L2 interfaces. The Chrome OS kernel sources do have the initial CAM code but it hasn't yet went through any upstream review. Additionally, Google engineers want to convert Intel's older image processing unit drivers over to the CAM kernel API before sending it out for upstream review and trying to mainline it in order to make sure the API is suitable for older IPUs.
That CAM API work as a prerequisite to working toward upstreaming the Intel IPU6 driver is a lengthy affair. It's likely to be months at least before that camera API is sorted out, "we are certainly not talking "weeks", we are talking "months". Several months is a realistic timeline."
That then led Greg KH to reaffirm his earlier statement around not buying Alder Lake laptops:
Ok, so getting this merged is a good year out at the best, realistically 2 years given that once you submit the first version for review, the real work will start happening.
So I'll stick with my original statement, don't buy this hardware as the vendors don't seem to want to upstream the drivers any time soon :(
Laurent Pinchart went on to comment on the likelihood this is a long process before the new webcamera driver support is upstreamed, "If I were to bet, I'd say no less than a year :-) And even then, as stated separately, you'll have to convince the upstream community that the API is suitable. It would be best to work with upstream today on a proposal that please all parties, and not wait a year for a full implementation to be ready, submitted, and rejected."
Long story short, newer Alder Lake laptops sporting MIPI IPU6 web cameras do not have upstream/open-source Linux driver support yet. There are some out-of-tree kernel patches from Intel but not mainlined and require closed-source user-space software currently for this more sophisticated image processing unit. The likes of Ubuntu and Google's Chrome OS are coping with it by patching their builds with these bits. But if you need working laptop web camera support, it's likely to be the better part of a year or more before there will be nice upstream open-source Linux support for Intel IPU6 web cameras.