1. Treiber von Herstellern sind idr. nie offen. Sie sind für ein spezielles Betriebssystem geschrieben und für eine Prozessorarchitektur kompiliert und funktionieren nur in dieser Konfiguration. Unter Linux gibt es ein paar Ausnahmen, zb den freien Treiber von AMD, Nvidia hingegen veröffentlicht keine freien Treiber, auch nicht für Linux. Treiber beinhalten grundlegende Informationen über die Funktion der angesprochenen Hardware, deshalb scheuen sich die meisten Hersteller davor, diese Treiber als Sourcecode zu verbreiten.
2. Du willst also nur die Freiheit, das Betriebssystem auszutauschen, willst sie aber nicht nutzen?
Ein Smartphonehersteller bekommt ggf die Lizenz vom Hersteller des SOCs, Treiber in sourcecodeform zu verarbeiten und umzuschreiben, aber nicht um diesen in offener Form zu veröffentlichen. Und hier weigern sich viele ARM-Schhmieden mit Händen und Füßen. Der Grafik-stack des Raspberry Pi wurde von der Opensourcegemeinde komplett neu entwickelt. Und das hat Jahre gedauert. Du siehst was für ein Aufwand dahinter steckt, nur einen SOC mit freien Treibern zum Laufen zu bewegen. Diesen Aufwand macht sich keiner bei der Vielzahl an Systemen, nur für eine Handvoll User.
Klar, was du dir vorstellst geht prinzipiell, aber dazu müssten die Leute den Markt konsequent mit ihrer Kaufkraft steuern. Und dazu muss man Kompromisse eingehen, weil dann eben Whatsapp oder Streaming erstmal nicht funktioniert. Und dazu ist keiner bereit, dann lieber doch den neuen Android von Samsung oder das nächste Ding von Apple. Solange bes den Herstellern nicht weh tut passiert nichts. Dann werden weiterhin Geräte veröffentlicht die ein geschlossenes Ökosystem sind und nach 2 Jahren den Softwaretod sterben. Nur so werden schließlich neue Geräte verkauft.