Une carte graphique externe sur le Raspberry Pi ? Après plus de deux ans, Jeff Geerling et ses assistants ont réussi à faire tourner une carte graphique PCI-Express sur un Raspberry Pi Compute Module 4.

Des essais ont été menés sur plusieurs cartes graphiques comme NVIDIA 710, NVIDIA GTX1080, NVIDIA GTX 750, AMD RX 550 ou AMD 6700 XT. Après plusieurs correctifs du noyau, il a été possible de donner les premiers signes de vie à une puce SM750 de Silicon Motion, cependant uniquement sous la forme d'une mémoire d'images (pas de gestionnaire de fenêtres). Après quelques modifications de code mineures, une AMD Radeon 5450 (Construite en 2010) combinée au Raspberry Pi, a fourni un bureau et une accélération 3D, pourtant là aussi avec quelques restrictions, comme l'explique Jeff Geerling sur son blog et sa chaîne YouTube

 
Erreurs d'affichage avec la carte graphique (Source : https://www.jeffgeerling.com/sites/default/files/images/pi-desktop-janky-amd-radeon.jpg)

Pour résumer, le port PCI-Express racine, la liaison entre le processeur et les cartes d'extension PCI-Express, contient quelques bogues, permettant quand même de piloter un contrôleur USB 3.0 ou des cartes réseau, mais en fait rend les cartes graphiques inutilisables s'il n'y a pas un grand nombre de patchs correctifs. Même si les bogues peuvent être contournés avec les correctifs, la connexion de cartes graphiques externes avec le Raspberry Pi 4 ne s'annonce pas bien pour le moment. 

La carte AMD Radeon 5450 a pu fonctionner grâce au pilote libre pour les cartes Radeon et l'aide et les conseils de quelques ingénieurs AMD, mais pour les pilotes NVIDIA propriétaires, l'avenir est encore plus sombre.

Il reste à espérer que Broadcom, pour son éventuel Raspberry Pi 5, intègre dans sa puce un port PCI-Express racine sans bogues et conforme au bus PCI-Express. Un grand merci à Jeff Geerling et tous ses assistants qui ont investi beaucoup de travail, du temps et de la passion dans leurs tentatives de faire fonctionner des cartes graphiques avec le Raspberry Pi 4.

 



Traduction : Laurent RAUBER