Greg KH Recommends Avoiding Alder Lake Laptops – Intel Webcam Linux Driver Far Out

Greg Kroah-Hartman, as a stable Linux kernel maintainer and effectively second in command to Linus Torvalds, suggested avoiding Intel Alder Lake laptops. While much of the Alder Lake laptop support for Linux is in good shape, the exception is webcams. These newer laptops with Intel’s latest webcam technology are currently not supported by the mainline kernel and require proprietary software to use. Some platforms like Ubuntu and ChromeOS are picking up these blobs for now, while a proper open-source upstream solution is probably months – or probably around a year – away.

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 compatible with Linux at this time.

Intel released a repository with IPU6 kernel driver code but is not intended for kernel upstream use. Besides only working with a limited range of kernel versions (Linux 5.15 LTS being their current target), the IPU6 driver code on GitHub is also not intended to be used with all OEM devices equipped with the cameras. Web IPU6.

It was also raised that besides the kernel drivers not being upstream, using the IPU6 currently has a proprietary stack in userspace and the exposed userspace API does not use the Video common interface 4 Linux 2 (V4L2). The IPU6 camera is much more complex and therefore software side changes are more involved while camera vendors are reluctant to open imaging algorithms. Libcamera developer Laurent Pinchart commented: “For now, I agree with your recommendation not to buy these devices if you care about camera support.

Greg KH then commented:

I second that, don’t buy these devices if the vendor isn’t willing to get their drivers up and running properly.

It was then mentioned by a Google engineer that the to plan is to introduce the CAM kernel API for use by the IPU6 driver as an alternative to the existing V4L2 interfaces. Chrome OS kernel sources have the initial CAM code but it has not yet been reviewed upstream. Additionally, Google engineers want to convert Intel’s old image processing unit drivers to the CAM kernel API before sending it for upstream review and trying to integrate it in order to s ensure that the API is suitable for older IPUs.

This CAM API works as a prerequisite for setting up the Intel IPU6 driver upstream is a long affair. It will probably be months at least before this camera API is sorted,”we are certainly not talking about “weeks”, we are talking about “months”. Several months is a realistic time frame.

This then led Greg KH to reaffirm his previous statement about not buying Alder Lake laptops:

Ok so getting this merge is a good year at best, realistically 2 years given that once you submit the first draft for review the real work will begin.

So I’m going to stick with my original statement, don’t buy this hardware because the vendors don’t seem to want to put drivers upstream anytime soon 🙁

Laurent Pinchart went on to comment on the likelihood of this being a long process before support for the new webcamera driver is put in place upstream, “If I had to bet, I’d say no less than a year 🙂 And even then, as noted separately, you’ll need to convince the upstream community that the API is suitable. It would be better to work with the upstream today on a proposal that appeals to all parties, and not wait a year for a full implementation to be ready, submitted and rejected.

Long story short, newer Alder Lake laptops with MIPI IPU6 webcams do not yet support upstream/open source Linux drivers. There are off-tree kernel patches from Intel, but they’re not built-in and currently require closed-source user-space software for that more sophisticated image processing unit. The likes of Ubuntu and Google’s Chrome OS are dealing with this by patching their versions with these bits. But if you need a laptop webcam, it’s probably going to be a year or more before there’s good upstream open-source Linux support for Intel IPU6 webcams.

Comments are closed.