Journal Un peu plus de liberté sous ARM ?

Posté par (page perso) .
Tags :
24
16
avr.
2012

La création d'un driver libre pour les GPUs ARM Mali donne des idées à d'autres.

Petit rappel : lors du dernier FOSDEM, Luc Verhaegen nous a présenté son projet de libération du GPU Mali, inclus dans par exemple le smartphone Samsung Galaxy S2 : Lima.

Et cela a donné des idées à Rob Clark, qui est un développeur Texas Instrument ayant travaillé sur le driver DRM pour les OMAP : il a créé le projet freedreno qui a pour but de libérer les GPUs Adreno de Qualcomm inclus dans de nombreux téléphones.

L'idéal serait évidemment que cela pousse les constructeurs à libérer leurs drivers ainsi que les spécifications de leur GPUs, mais même après l'appel de 2 développeurs Qualcomm Atheros pour "tuer les pilotes propriétaires pour de bon", Qualcomm a hélas réfuté cette ouverture.

Le blog du développeur de freedreno pour plus d'informations :
http://bloggingthemonkey.blogspot.fr/2012/04/fighting-back-against-binary-blobs.html

  • # /.

    Posté par (page perso) . Évalué à 3.

    Vu aussi sur /. http://linux.slashdot.org/story/12/04/14/219230/open-source-qualcomm-gpu-driver-published

    Les commentaires sont assez mitigés sur /. : l'approche en boîte noire (et non une décompilation) pour effectuer la rétro-ingénierie semble ressortir tout de même, ce qui est bien ; outre que, même s'il bosse chez TI le jour, il fait bien ce qu'il veut de son temps libre :)

    Il y aurait une liste des terminaux (smartphones voire tablettes ?) incluant des GPU gérables par ce pilote ? Un sous-ensemble de la liste indiquée sur http://en.wikipedia.org/wiki/Snapdragon_%28system_on_chip%29 j'imagine ? (bon, il y aurait mon HTC Desire Z dans le lot, ce serait cool).

  • # Mauvaise impression sur ARM

    Posté par . Évalué à 8.

    Je reste pour le moment avec une très mauvaise impression sur les processeurs ARM.

    Ceux ci ont certainement de merveilleuses possibilités pour l'autonomie et la puissance de calcul. Mais les problèmes de compatibilité entre processeurs et les multiple driver non libre entraine trop le risque d'être lié au constructeur de l'appareil que l'on achète.

    Lorsque l'on achète un appareil X86, il y a de grande chance que l'on puisse choisir même sa version Microsoft Windows ou au moins en changer. Sans parler des possibilités d'installer sa distribution Linux favorite.

    Lorsque l'on achète un appareil ARM, la possibilité d'utiliser un Linux est plus incertaine et on se retrouve pieds et mains liés aux bon vouloir du constructeur de l'appareil. Ceci même avec Android si l'on a pas un smartphone à la mode pour lequel il existe des rom alternative.

    Espérons que le développement de driver libre va permettre de s'affranchir de ces contraintes et surtout que les fondeurs vont comprendre que c'est utile pour les clients finaux et donc pour les constructeur d'appareils. Cela peut inciter au développement des vente des puces facilitant le développement de logiciels.

    • [^] # Re: Mauvaise impression sur ARM

      Posté par . Évalué à 2.

      Je ne suis pas du tout spécialiste en la matière, mais j'ai le sentiment que le circuit graphique n'a pas grand chose à voir avec le fait que le processeur soit ARM, un peu comme si nvidia faisait un processeur intel maison avec un GPU (pas libre) dans la même puce.

      Enfin ces fabricants sont des spécialistes de l'embarqué ou du mobile, domaine où le libre n'est pas du tout habituel et leur manière traditionelle de faire est de tout planquer. Mais ça va venir (l'espoir c'est bon).

      • [^] # Re: Mauvaise impression sur ARM

        Posté par . Évalué à 2.

        Je pense que les GPU font effectivement partie du problème que j'aborde.

        Je viens de lire un article sur windows 8 (http://www.blogeee.net/2012/04/windows-8-4-parfums-au-choix/) dans lequel il est dit qu'il ne sera disponible que pré-installé par les constructeurs pour l'architecture ARM. C'est ce genre de chose que je crains.

        Il me semble (à tord ou à raison) que l'acheteur d'un tel engin sera coincé par la bonne volonté du constructeur : il ne pourra certainement pas passer à window 9 et quand windows 9 existera, il ne pourra pas choisir windows 8 à la place. Pour moi ce ne peut être du qu'à une certaine difficulté d'adaptation pour chaque machine.

        Et pourtant Microsoft arrive à imposer pas mal de chose… Alors qu'espérer de systèmes libres quand bien même des drivers libres apparaîtront. Le libre sous ARM me semble un chemin bien difficile.

    • [^] # Re: Mauvaise impression sur ARM

      Posté par . Évalué à 4.

      Un des gros problèmes avec les puces ARM, c'est que chaque constructeur (Broadcom, Qualcomm, ST, TI, Samsung…) fait sa propre version avec des adressages mémoire différents, des bus différents, etc.

      En fait quand on achète chez ARM, on récupère soit une licence pour le jeu d'instructions, soit une netlist (la description logique, et non physique, du circuit).

      Ce qui permet d'implémenter les choses exactement comme on veut. C'est une des grandes forces de ARM. Par comparaison à Intel, un constructeur qui fait du ARM met le contrôleur audio qu'il veut, la puce graphique qu'il veut, et ainsi de suite. Le tout sur une même puce physique.

      Le problème, c'est que c'est difficile à standardiser, puisque chacun fait comme il veut. Le gros point commun c'est le jeu d'instructions, pour le reste c'est l'auberge espagnole.

    • [^] # Re: Mauvaise impression sur ARM

      Posté par . Évalué à 2.

      Le problème que tu rencontres n'est pas lié au processeur mais plus à la plateforme. Les PC utilisent des x86, les smartphones utilisent des ARM. Si tu faisais un smartphone avec une architecture PC, je subodore que ça serait une vrai catastrophe. D'ailleurs il semble que des smartphones x86 vont bientôt sortir, je suis persuadé qu'il sera impossible d'installer un Linux ou Windows standard dessus, ou même d'installer une version non standard mais commune à la plupart de ces appareils.

      • [^] # Re: Mauvaise impression sur ARM

        Posté par . Évalué à 4.

        Non, la "plateforme PC" est définit, ce qui n'est pas le cas de la plateforme ARM.

        Il n'y pas l'équivalent du bios pour démarrer avec n'importe quel média, il n'y a pas l'équivalent de l'énumération PCI,…

        "La première sécurité est la liberté"

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.