I'm not a low level hardware person, but being on the edges of the Android modding community for over a decade now and also spending a lot of time working on the various Pi-likes has left me incredibly frustrated with the state of hardware support.
In my mind it is absolutely inexcusable that vendors regularly ship hardware with only binary blob support for ancient kernels, years old versions of Android, etc. with no intent to ever change. To me that's a sign of either pure incompetence or an active desire to do things wrongly. Am I wrong? Is there any reason I shouldn't feel like everyone responsible for those choices should be named and shamed constantly? Basically is there any good excuse other than "it's cheaper this way" and/or defective logic about drivers being "trade secrets" of some form.
Qualcomms slowly turning it around. Their Wi-Fi router situation was reaching a real breaking point, but we are multiple years of folks + them making good progress to getting into grace.
The benefit is also higher too, since ChromeOS has a more regular Linux-y environment, and I think even using Wayland now. Where-as on phone, it's like, great, kernel drivers, but the entire upper stack is Android so what the driver needs to prioritize is different.
If you read in here, part of the dodge is that rather than a actually upstream, Google maintains their own custom Kernel Module Interface (KMI) in their Android specific "Generic Kernel Image" (GKI) that's different from the actual kernel interface. So instead of vendors targeting upstream, now they're authoring to a Google specific kernel interface - a kernel wrapper - that doesn't exist anywhere else! Google's "Generic Kernel" seems like a fork of upstream that now people develop against. Its hard for me to see this situation as an improvement; it feels like it will insure work doesn't get upstreamed, since work isn't against the kernel but Google's kernel.
"Google Kernel Image" (or Android Kernel Image) might have been a better name than Generic Kernel Image.
https://www.reddit.com/r/linux/comments/jiky5j/linux_510_is_...
So I guess if something as sizeable and impactful as Android can't reliably move the needle towards 7 to 10 years of maintained stability then the only way forward is a few select ones providing forked stability and the remainder has to continually upgrade to keep being maintained.