The Linux model definitely encourages mainline collaboration. It just happens that the Android vendors are fighing against this encouragement, and Google has caved in to their demands.
> Compared to what?
Compared to what happens on Windows and Android, where individual drivers have to reimplement common functionality, often in inconsistent ways.
> Which no user has ever cared about.
Users care that their drivers work and that they continue to be supported in the future. Less compact code is larger, and therefore buggier. Drivers which are provided as proprietary userspace blobs are invariably unmaintained and stop working with future kernel versions.
> Third-party firmware like CyanogenMod exists only because in-kernel GPL parts can be ported to new OS versions.
With Fuchisa there won't be anything like CyanogenMod anymore.
I think you're confused. If the interface for the drivers stays stable, then you can just carry over the same exact binary blob and it will keep working perfectly, which is exactly what Microsoft does. Windows 7 drivers still work just fine in Windows 10.
I feel like this is demonstrably a false promise by looking at the billions of mobile devices never getting any updates because of vendor neglect.
> and greatly improves the quality
Compared to what?
> and compactness of the drivers
Which no user has ever cared about.
> up to date drivers for the vast majority of devices you'd want to use†
I notice that you excepted billions of devices in order to make this claim.
> inexplicably refuses to develop against the mainline kernel
It's not inexplicable. It's easier and cheaper.