Conversation

Qualcomm has invested effort into the open source driver stack but it's never ready in time for it to be what vendors choose to ship. Look at linaro.org/blog/dragonboa as an example. This is the same SoC as the Pixel 3. It has open drivers for mainline kernels. It comes too late.
1
Qualcomm cares about selling hardware. They've been trying to get a mainline kernel driver stack up and going for years. It's incredibly difficult to land everything upstream. The upstream kernel doesn't accept kernel drivers only used with closed source userspace libs, etc.
1
1
There aren't kernel drivers to build userspace support because the userspace support hasn't been written for non-existent kernel drivers. It all has to be cleaned up, overhauled, ported over to upstream frameworks which are often totally inadequate and have to be improved, etc.
1
1
The open source driver stack for Snapdragon exists and is usable. However, it doesn't match the performance/functionality for devices it supports and it's ready a year or two after the hardware is launched rather than way before that which is what would have to happen...
1
1
So, since it's not what gets shipped, it obviously doesn't get the same resources applied to it. Over time, it's getting better and getting more resources applied but it's unclear if there will EVER be a point that devices can ship with upstream kernel unless they use an old SoC.
2
That's essentially what you're able to get with a development board like 96boards.org/product/rb3-pl with AOSP support. Same SoC as the Pixel 3, but in the smartphone world this is already a past generation SoC and it'll be at Pixel 5 / 6 before the open driver stack could be ready.
2
Qualcomm is making it available but it's pretty much impossible for it to happen for a current / next generation SoC unless mainline support isn't part of it but rather just code dumping everything and having the eventual mainline support as something distinct from it.
1
1