Coming from a guy that worked on pre-production android hardware... you wouldn't want any of those drivers. Ever.
Seriously.
They don't even properly report the cell signal levels correctly half the time (.... like returning -1 always on the error correction signal level...).
And as long as our computers don't come with Linux preinstalled it will continue to be this way. This is what happens when your OS is a stranger in a strange land; it doesn't feel like it belongs there.
If desktop Linux ever became popular enough for computers to come with it preinstalled, it would immediately go down the binary blob driver path that Android is on.
For vendors, the reasons to close up their drivers would be identical whatever OS their kernel drivers would run on top.
As the other poster mentioned, the driver and firmware can be closed source. The rest of the Android WiFi stack is very liberally licensed. The Android Java portion is apache and the supplicant is BSD. You can do a lot to tune the stack without sending code upstream.