The practice makes ewaste of otherwise perfectly usable devices, and should be illegal.
The practice makes ewaste of otherwise perfectly usable devices, and should be illegal.
The sources for the matching userspace binaries (which are usually the issue for Android version bumps) are usually under NDA by the component manufacturer and can not be released by the OEM independently.
It's their choice to use Linux. They can abide by the license or not ship Linux.
Not to mention that there are many more or less stable APIs within the kernel (which even has versioned API support in places) such as Video4Linux which manufacturers seem dead set against using.
Nonetheless, android mostly solved the issue of the kernel's lack of stable interface via their HAL.
I don't package any of the software I write for Debian because I don't want to have to jump through their hoops. I don't blame device manufacturers for wanting to avoid jumping through Linux's hoops. Especially with having to deal with Linus.
Nobody likes Apple's app review process do they? I don't think device driver writers should have to go through that.
(I also wish they would open the code but not having a stable driver ABI clearly doesn't make that happen.)
I think a valid reason for not having a stable driver ABI is that it's a mountain of work and makes everything else more difficult. But I've never heard anyone give that as the reason.
But it's true that they could at least start by publishing the source code, even if they don't contribute directly.
As for the ABI, I also agree, this would just make the situation worse.
Why? I don't see how that follows. It might be likely to produce better software simply by having experienced kernel devs review the code, but it's definitely not necessary.
This is a very myopic view of the industry.