Hacker News new | past | comments | ask | show | jobs | submit login

Yes, the webcam situation in Linux has been degenerating for years by now, as many laptop models and specially everything that is an ultraportable or convertible has switched to IPU-based webcams. I have multiple laptops from 5 years ago where the webcams don't work and will likely never be able to work under Linux.

Basically the main difference is that with IPU-based stuff the kernel must support not just a "webcam"-like device, but rather must contain support for all the individual components making up the webcam. Think not only actual raw sensor hardware, but even stuff such as controlling the shutter and voice coil motors directly.

The situation is similar if not identical to a smartphone where the OS interfaces directly with the raw camera hardware instead of like in traditional computers where it was all abstracted in the form of a USB UVC webcam. In fact, some of the newer sensor drivers are adapted/stolen from Android kernels.

Many, many laptop models come with IPU3 hardware, which is around 7 years old hardware at this point, and it is still mostly unsupported in Linux. In fact, practically _all_ the support in current Linux comes from the efforts of one guy who has been trying to make the Surface Pro line of devices work under Linux ( https://github.com/linux-surface/linux-surface/wiki/Camera-S... ). I have had some success with these patches (which are now mostly upstream), by manually writing/converting from Android kernels/HALs the required sensor drivers in my laptop, but the image quality was just garbage. I don't even know how much image processing is done software-side on Windows.

Intel has published code, but not bothered to upstream it; Google, who is using this hardware in some ChromeOS devices, only cares about ChromeOS support which does things just too differently to Windows devices (e.g. basic things like enumerating which camera hardware is connected). None of the big OEMs is behaving nicely here.

IPU4 appeared more recently and is basically entirely unsupported. There is zero upstream support and don't bother with the out-of-tree driver since it will be a waste of time (you also need the drivers for the specific hardware sensors used in your laptop + the "pipeline configuration").

IPU6 is probably just a newer iteration of this. I don't know if it will have a bit more developer/manufacturer oomph and thus more Linux support than previous iterations, but even if it does, it's highly likely that all existing laptops with IPU hardware will never have a working webcam in Linux.




Thanks for the explanation/opinions! Sadly this confirms my very "grasping in the dark" explorations of this.

It reminds me of a comment [1] I left a while back, and that I randomly found again today:

> Even though significant work is required to keep [old machines like 2012 thinkpads] working, some people prefer to do so. Crucially, they prefer it not because they love tinkering, but simply because the value propositions of 2021/2022 hardware doesn't look better.

I guess the value proposition of modern notebooks is actually degrading, at least in this respect...

[1]: https://news.ycombinator.com/item?id=29872420




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: