Is upstreaming hardware drivers to at least staging quality that much of an uphill task? Seems like this should be fixed at the source by having the initial development go straight into mainline. That's what seems to happen for PC hardware anyway.
Upstreaming costs like several times more than just hack it and ship it. It seems that a lot of vendors can't estimate the costs and benefits.
That's exactly it. And even keeping to the preferred/qualified vendor list provided by the SoC vendor does not guarantee that the drivers will be in the mainline...
Android's use of the kernel really is fundamentally broken