Grâce à Adreno Tools, vous pouvez désormais mettre à jour le pilote graphique sur votre appareil Android sans accès root. Lisez la suite pour en savoir plus !
Les sites Web axés sur les smartphones ont tendance à se concentrer uniquement sur les appareils les plus récents, mais une grande partie des utilisateurs choisissent de ne pas mettre à niveau leur téléphone pour une raison ou une autre. Sauf panne matérielle, bon nombre de ces appareils peuvent encore avoir des années d’utilisation devant eux car, pour leurs propriétaires, ils fonctionnent toujours très bien. Alors que ROM personnalisées peut maintenir en vie les anciens smartphones pendant des siècles, cela peut être un cauchemar pour les moddeurs de maintenir à jour des éléments tels que l'appareil photo et les pilotes graphiques sans l'assistance officielle du fabricant.
Mise à jour des pilotes GPU sur Android
Contrairement à l'écosystème des smartphones, mettre à jour le pilote graphique sur votre PC c'est quelque chose auquel vous pouvez toujours penser. Ceci est possible grâce à l'architecture modulaire des pilotes matériels PC, qui permet aux utilisateurs expérimentés de bricoler avec des packages de pilotes fermés, ou même opter pour des pilotes open source au lieu de ceux fournis par l'OEM binaires. Dans le cas d'Android, cependant, les mises à jour des pilotes ne sont généralement disponibles sur votre téléphone qu'avec des mises à jour plus importantes du système d'exploitation.
Les pilotes GPU pouvant être mis à jour peuvent s'avérer utiles pour corriger des bugs, améliorer les performances graphiques ou ajouter de nouvelles fonctionnalités à partir des API OpenGL ou Vulkan. Aujourd'hui, les smartphones sont plus grands et plus rapides que jamais, ce qui en fait le véhicule idéal pour les jeux, donc le portage de la conception du pilote de type PC sur eux rend sens.
En fait, dans le but de modulariser Android via Project Treble, Google a rendu cela possible pour envelopper le pilote graphique défini pour une plate-forme particulière en tant qu'application et le mettre à jour via Play Magasin. Depuis lors, plusieurs grands constructeurs OEM Android ont collaboré avec Google et les principaux fournisseurs de GPU, notamment ARM et Qualcomm, pour distribuer des mises à jour pour les pilotes GPU de leurs téléphones indépendant des versions logicielles plus importantes.
La conception du pilote graphique pouvant être mis à jour réduit-elle la fragmentation?
Oui, dans une certaine mesure. Néanmoins, quelques questions inquiétantes restent encore sans réponse. Tout d'abord, le mécanisme de Google ne permet pas de remplacer facilement le pilote du fournisseur fermé par une offre open source tierce. Vous pouvez bien sûr remplacer manuellement le package de pilotes dans la partition fournisseur du périphérique cible, à condition d'avoir accès root et d'une manière ou d'une autre mettre la main sur les fichiers nécessaires, mais ce n'est pas une solution idéale pour beaucoup.
Vient ensuite le paradoxe stabilité/amélioration. Android maintient une disposition hiérarchique lorsqu'il s'agit de charger le pilote graphique. Bien que l'on puisse basculer entre la version installée en usine et la version mise à jour la plus récente en utilisant Options de développeur => Préférences du pilote graphique sur une base par application, cela se résume en fin de compte à la décision de l'OEM de pousser la mise à jour du pilote graphique. En conséquence, un utilisateur final ne peut pas utiliser les versions de pilotes de pointe directement du fabricant du SoC, car les OEM sont toujours responsables du déploiement des mises à jour.
Comme mentionné précédemment, la mise à jour des pilotes GPU est possible avec un accès root, mais rien ne peut battre une méthode non root. Merci au membre senior XDA statuts, nous avons maintenant une solution géniale nommée Outils Adreno qui permet des modifications ou des remplacements de pilotes GPU à la volée sur Android – cela aussi sans root! L'expérience du développeur dans le portage d'Android sur la Nintendo Switch a certainement joué un rôle crucial dans cette entreprise, car l'ensemble du projet trouve son origine dans Horizon, un émulateur Nintendo Switch open source en cours de réalisation pour Android.
Cher collègue développeur Skyline Marque "Pixelylon" a lancé l'idée du remplacement du lecteur d'exécution pour statuts, qui s'est finalement matérialisé dans Adreno Tools. En tant que bibliothèque sans racine, Adreno Tools peut aider n'importe quelle application standard à charger des pilotes GPU personnalisés, à gérer les textures BCn et à rediriger les opérations de fichiers pour d'autres modifications complexes sur la famille de GPU Adreno de Qualcomm. Pour ce faire, il se connecte aux bibliothèques système et échange de manière transparente dans le nouveau conducteur. Notamment, les GPU Mali ne sont pas encore pris en charge.
Puisqu'il n'y a aucune limitation sur l'origine du pilote, les passionnés peuvent également charger des pilotes tiers via Adreno Tools. Ceci est particulièrement utile pour ceux qui souhaitent essayer Turnip, un pilote Vulkan open source pour le matériel graphique Qualcomm Adreno qui relève de la Freedreno parapluie. Par exemple, ÉtherSX2, l'émulateur PlayStation 2 pour Android utilise déjà Adreno Tools pour offrir aux utilisateurs finaux choix d'opter pour le navet au lieu du pilote OEM pour de meilleures performances.
Outils Adreno sur GitHub
Comment puis-je en bénéficier?
Gardez à l'esprit que le projet Adreno Tools est livré sous forme de bibliothèque de logiciels. Cela signifie que vous ne pouvez pas trouver de fichier APK précompilé qui permette comme par magie d'utiliser une pile de pilotes graphiques externes dans tout le système. Au lieu de cela, un développeur doit intégrer la bibliothèque dans son projet, afin que son application puisse offrir la possibilité de charger des fichiers de pilotes graphiques mis à jour ou une alternative tierce sans racine accéder. C'est exactement ainsi que les développeurs Skyline et AetherSX2 utilisent actuellement Adreno Tools.
Du point de vue de l'utilisateur final, Adreno Tools ne peut pas à lui seul résoudre toutes les limitations de la mise en œuvre du pilote GPU d'Android. Il s'agit simplement d'un outil permettant à la communauté des développeurs de contourner certains des plus gros obstacles liés aux mises à jour des pilotes graphiques sur les appareils Android - c'est tout. Vous ne pouvez en bénéficier que via une application, mais une mise à jour manuelle du pilote à l’échelle du système nécessite toujours un accès root.
Que puis-je faire si j’ai root?
Si vous êtes un utilisateur expérimenté avec un périphérique rooté, vous pouvez effectuer une installation forcée à l'échelle du système d'un pilote graphique mis à jour sur votre périphérique. Pour ce faire, vous devez extraire les fichiers BLOB (Binary Large OBject) du pilote qui contiennent des binaires logiciels préemballés pour interagir avec le GPU à partir d'un package de micrologiciel mis à jour. Vous pouvez utiliser le firmware d'un autre appareil, mais le pilote doit correspondre à la même famille de GPU de l'appareil cible.
Après avoir extrait les fichiers requis, vous pouvez ensuite les regrouper sous forme de module Magisk et l'installer sur le smartphone cible pour remplacer les pilotes existants du fournisseur sans système. Bien entendu, le processus est un peu plus compliqué qu’il n’y paraît. Vous devrez peut-être vous occuper des incompatibilités d'interface entre les pilotes existants et les pilotes mis à jour, pour lesquelles un calage serait nécessaire.
« Caler », c'est « coincer (quelque chose) ou remplir un espace ». C'est effectivement ce que fait un développeur lorsque écrire une cale - ils ajoutent des codes supplémentaires pour permettre au BLOB de s'interfacer avec la plate-forme sur laquelle ils se trouvent travailler avec. Heureusement pour nos lecteurs, développeur statuts déjà écrit une cale pour combler le fossé entre les différentes révisions du pilote Adreno, et vous pouvez trouver des pilotes OpenGL et Vulkan flashables prêts à l'emploi pour Adréno 500 et Adréno 600 famille de GPU sur nos forums.
Curieux de connaître les avantages de l'installation manuelle d'un pilote graphique mis à jour? Mishaal Rahman d'Esper a partagé une comparaison intéressante des performances du GPU dans 3DMark à partir d'un Snapdragon Google Pixel 3 XL alimenté par 845 exécutant Android 12 avec le pilote d'origine par rapport à un pilote plus récent du Snapdragon 8 Génération 1 :
Assez fascinant, n'est-ce pas? Mais n’oubliez pas le compromis entre objectivité et pertinence. Bien que l'installation d'un pilote GPU mis à jour avec un accès root présente des avantages, elle présente également des pièges. Ce n’est pas destiné aux débutants, et jouer avec l’appareil peut annuler la garantie. Vous avez besoin d’un chargeur de démarrage déverrouillé pour commencer, ce qui n’est peut-être pas réalisable dans tous les scénarios.
Conclusion
Compte tenu des alternatives pour la scène de modification des pilotes GPU Android dans le passé, la bibliothèque Adreno Tools constitue un pas en avant fantastique, en particulier en raison de sa nature sans racine. Nous sommes impatients de voir comment le projet grandira et mûrira à l’avenir. N'hésitez pas à l'essayer et à nous dire ce que vous en pensez dans les commentaires !
Source:Esper