upvote
Google is the good actor here. 7 years of updates, unlocked bootloader, support for LineageOS, etc. The reason it sucks is all the other OEMs who don't care about anything other than the current year's models.
reply
That's Google as the hardware OEM, not Google as the OS/platform vendor. They should be standing on Qualcomm's neck until they upstream their drivers and whatever else is necessary to make it practical for anyone to run updated kernels on their hardware, the same as it has worked for PCs for decades.
reply
FWIW, when Windows NT was ported to mobile it also was compiled against binary blobs for specific Qualcomm SoCs. It's not an Android deficiency; what works on PCs just doesn't really work in mobile-land.
reply
The reason it's like that is that 1990s Microsoft used carrot and stick to make the hardware vendors do the right thing and present day Google isn't doing that when they're the ones who would need to.

The alternative would be for the hardware market to be less consolidated (the government keeps allowing Qualcomm to buy up competitors) so that the chip companies would have to compete on things like this. But that's no excuse for Google to be sitting on their hands when they could fix it too.

reply
Why would Google be responsible for Samsung and Huawei?
reply
Because it's their operating system and their live services?

Just like Microsoft with Windows.

reply
Great analogy! Why would Microsoft be responsible for Lenovo?
reply
Microsoft is responsible for the updates on a Lenovo.
reply
Part of the problem I believe sits on how chip manufacturers (looking at you Qualcomm) handle device trees that should be part of upstream, but are never done due to differences in tooling/proprietary blobs which are also part of the DT. This increases the effort on the OEMs to keep comptability across kernel versions.
reply
More to do with how the ARM ecosystem works and the resulting lack of openness and standardisation in the hardware interface.
reply
There's a fair amount of blame there, but it's also partially how Android has to be compiled/built for the hardware.
reply