Actualités trimestrielles Bootlin: janvier 2015

L’équipe de Bootlin vous présente ses meilleurs voeux pour la nouvelle année 2015. Que celle-ci soit pour vous pleine d’optimisme et d’énergie !

Nous profitons de cette occasion pour vous donner des nouvelles de nos activités de formation, de développement et de contribution.

Contributions au noyau Linux

Nous avons continué à travailler sur la prise en charge de plusieurs processeurs ARM dans le noyau Linux. Voici nos contributions aux versions les plus récentes :

  • 147 patches de Bootlin inclus dans Linux 3.17, ce qui nous place au 14ème rang des sociétés en terme de nombres de patches. Voyez notre billet de blog au sujet de cette version.
  • 155 patches de Bootlin inclus dans Linux 3.18, ce qui nous positionne également à la 14ème place. Plus de détails sur notre billet de blog.
  • Pour la version à venir (3.19), nous avons déjà rentré 196 patches.

Un des faits marquants a été la prise en charge du SoC SAMA5D4 d’Atmel dans le noyau Linux officiel, et ceci avant même que le processeur ne soit annoncé par Atmel ! Il s’agit d’un signe très positif pour les clients quand un processeur est pris en charge dans la version officielle du noyau dès la sortie du produit, plutôt que d’avoir à attendre plusieurs mois ou plusieurs années que la version de la communauté ait atteint un niveau de fonctionnalité suffisant.

Au passage, nous avons également rajouté le support du SoC SAMA5D3 d’Atmel à Xenomai, une extension temps-réel dur pour le noyau Linux. Grâce à cela, la carte SAMA5D3 Xplained d’Atmel peut maintenant fonctionner avec la version 2.6.x de Xenomai.

En plus de ces faits marquants, la plupart de nos contributions au noyau Linux étaient autour de la prise en charge de familles spécifiques de processeurs ARM : CPUs de Marvell EBU et Marvell Berlin, d’Atmel et d’Allwinner. Nous avons rajouté un nouveau pilote réseau pour certains processeurs de Marvell EBU, implémenté la prise en charge du SMP pour les processeurs Marvell Berlin, ajouté un contrôleur DMA pour les puces d’Allwinner, et abattu un gros travail de maintenance pour prendre en charge ces processeurs dans le noyau Linux officiel.

Contributions à Buildroot

Notre implication dans le projet Buildroot s’est poursuivie. Notre ingénieur Thomas Petazzoni a contribué 136 patches à la version 2014.11, ce qui fait de lui le deuxième contributeur en nombre de patches. Thomas se charge également de la maintenance du projet de façon plus régulière, en faisant la revue et en incluant des patches de contributeurs.

Contributions à OpenWRT

Nous avons également commencé depuis peu à contribuer au projet OpenWRT : configuration du noyau par defconfig, introduction d’une notion de carte pour prendre en charge différentes configurations de flash NAND pour chaque plateforme. Nous allons également bientôt publier la prise en charge de la plateforme Armada 385 de Marvell, et une amélioration du support des plateformes Marvell Armada 370 et XP.

Projets récents

En plus de nos contributions au noyau Linux qui sont visibles, nous avons également travaillé à des projets spécifiques à certains clients. En voici quelques détails :

  • Développement d’un BSP complet pour une plateforme sur mesure à base de TI AM335x : portage d’U-Boot, du noyau Linux et développement d’un système de fichiers généré par Yocto. Qt5 et OpenGL sont utilisés pour l’application graphique. Il fallait prendre en charge une configuration audio assez complexe, ainsi que de nombreuses interfaces standard (USB hôte et device, CAN, affichage, etc.)
  • Développement d’un BSP complet pour un système de téléphonie à base de Marvell Armada 375. En plus de porter le noyau Linux sur cette plateforme, nous avons aussi créé des pilotes DAHDI pour pouvoir exploiter le matériel depuis Asterisk.
  • Tests de robustesse sur mémoire flash NAND et sur UBI pour une plateforme à base de Freescale i.MX28. Nous avons amélioré le pilote du contrôleur de NAND, créé un nouvel outil MTD pour générer des bitflips (faire changer d’état certains bits), et procédé à tes tests de résistance long terme aux coupures d’alimentation sur la configuration UBIFS du client, pour garantir la fiabilité de la plateforme. Voir nos améliorations du pilote du noyau et le nouvel utilitaire nandflipbits.
  • Mise à jour d’un pilote ADC existant d’une plateforme client spécifique pour utiliser le sous-système Industrial Input Output (IIO) du noyau, plus moderne.

Conférences : FOSDEM, Embedded World et Embedded Linux Conference

Plusieurs ingénieurs de Bootlin participeront à la conférence FOSDEM, qui se tiendra à Bruxelles les 30 janvier et le 1er février. En outre, Thomas Petazzoni participera également au Buildroot Developers Meeting qui aura lieu juste après le FOSDEM dans les locaux de Google à Bruxelles.

Bootlin participera aussi au salon Embedded World du 24 au 26 février à Nuremberg. Nous serons accueillis sur le stand d’Atmel et visiterons également les stands des autres exposants. Cela sera une bonne occasion pour nos clients européens de nous rencontrer et de découvrir nos services d’ingénierie et de formation. En particulier, vous pourrez rencontrer nos ingénieurs Alexandre Belloni, Thomas Petazzoni (directeur technique), Michael Opdenacker (dirigeant) ainsi qu’Anja Roubin, la nouvelle responsable de nos services de formation.

Une fois de plus cette année, la quasi-totalité de l’équipe d’ingénierie de Bootlin (7 personnes) participera à l’édition 2015 de l’Embedded Linux Conference du 23 au 25 mars 2015 à San Jose en Californie. Nous avons proposé plusieurs présentations, mais notre présence ne dépendra pas du nombre de présentations qui seront finalement acceptées. La participation à cette conférence, ainsi qu’à son édition européenne en automne, est très importante pour nous. Elle nous permet de ne passer à côter d’aucun projet intéressant dans la communauté technique, et surtout de renforcer les liens avec les autres développeurs. Ainsi, nous pouvons rester de bons formateurs techniques avec une expérience et un savoir de valeur à partager. Les relations étroites avec d’autres développeurs de la communauté (en particulier avec les mainteneurs des projets) sont également précieuses lorsque nos clients nous demandent de rajouter la prise en charge d’un matériel particulier ou des fonctionnalités aux versions officielles de projets comme le noyau Linux.

Ressources de documentation technique libres et gratuites

Depuis la dernière édition de notre bulletin, nous avons livré nos premières sessions de formation sur le développement Linux embarqué avec Yocto Project et OpenEmbedded, et nous avons publié l’intégralité des supports de formation. Comme à l’accoutumée, ces supports sont destinés à être utilisés également par des personnes se formant par elles-mêmes. Vous n’avez qu’à vous procurer une carte Beaglebone Black, lire nos présentations et essayer de faire les travaux pratiques !

Notre ingénieur Maxime Ripard a aussi partagé de la documentation sur le sous-système DMAEngine du noyau Linux.

Prochaines sessions de formation – A Paris également !

La nouveauté est que nous organisons maintenant des sessions de formation inter-entreprises à Paris, en plus de celles que nous animons à Toulouse, à Avignon et à Lyon. Nous commençons avec nos formations sur Linux embarqué et sur Yocto, mais nos autres thématiques seront également proposées.

Voici ainsi la liste de nos prochaines sessions :

Voir notre page sessions et dates pour plus de détails. Bien-sûr, nous pouvons animer nos sessions de formation dans vos propres locaux, et ceci, partout dans le monde. N’hésitez pas à nous contacter pour un devis.

Si vous êtes intéressé par des nouvelles plus fréquentes de Bootlin, vous pouvez aussi nous suivre sur bootlincom, Google+ et sur LinkedIn.

Les formations de Bootlin arrivent à Paris

Paris

Bootlin organise depuis près de 10 ans des sessions de formation inter-entreprises autour de Linux embarqué, du noyau Linux et d’Android dans des villes de la moitié sud de la France: Nice, Toulouse, Avignon, Lyon. Il nous manquait évidemment une présence dans la capitale et plus généralement dans la moitié nord de la France.

Nous sommes en train d’y remédier, en organisant une première session de formation sur Linux embarqué dans la capitale, du 9 au 13 mars 2015. D’autres sessions suivront, sur les autres thématiques couvertes par nos formations. Celles-ci seront annoncées sur notre page de sessions et dates.

Les points forts de nos formations en inter-entreprises restent les mêmes:

  • Formateur ayant une solide expérience de terrain à partager, consacrant la plus grande partie de son temps à des projets de développement. Un formateur qui est un contributeur actif à la communauté de développeurs en Linux embarqué, et ayant ainsi une excellente connaissance des ressources offertes par celle-ci.
  • Supports de formation intégralement disponibles sur notre site web. Vous pouvez à l’avance vérifier que ceux-ci correspondent à vos besoins.
  • Des travaux pratiques qui testent la bonne compréhension des notions les plus importantes et qui construisent une vraie première expérience (pas de manipulations qu’on execute sans les comprendre).
  • Carte embarquée à base de processeur ARM (Atmel SAMA5D3 Xplained) incluse, pour continuer à développer prototypes et expérience au delà du temps de la formation.
  • La garantie de ne pas avoir à faire les travaux pratiques avec un autre participant, et un nombre de personnes limité à 10.
  • Une transparence totale sur les retours des anciens participants.
  • Un tarif réduit pour les inscriptions au moins deux mois à l’avance, et pour les inscriptions groupées.

Tous les détails sur notre prochaine session.

Actualités trimestrielles Bootlin: septembre 2014

Bootlin a le plaisir de partager avec vous des nouvelles des activités de formation et de contribution de la société.

Contributions au noyau Linux

Depuis notre dernier bulletin d’informations, nos ingénieurs ont continué à faire d’importantes contributions au noyau Linux, en particulier dans le domaine du support des processeurs ARM et des plateformes utilisant ceux-ci.

  • 218 patches de Bootlin ont été intégrés à Linux 3.15, ce qui place Bootlin au 12ème rang des sociétés qui ont contribué à cette version, en nombre de patches. Voir notre billet de blog.
  • 388 patches ont été acceptés dans Linux 3.16, ce qui fait de Bootlin la 7ème société contributrice à cette version. Voir notre billet de blog.
  • Pour la version 3.17 à venir, nous avons déjà intégré 146 patches, et nous avons beaucoup de travail en cours pour les versions suivantes.

Voici nos principales contributions :

  • L’ajout d’un pilote ubiblk, qui permet d’utiliser des systèmes de fichiers traditionnels au dessus de devices UBI, et donc sur du stockage flash de type NAND. Il n’y a que le mode en lecture seule qui est pris en charge, mais cela permet déjà d’utiliser SquashFS, un système de fichiers très performant, de manière sécurisée sur de la flash de type NAND.
  • Un autre ajout est celui des nouveaux processeurs Marvell Armada 375 et Armada 38x. En seulement deux versions (sorties des versions 3.15 et 3.16), nous avons pratiquement poussé le support complet de ces nouveaux processeurs. Le pilote réseau pour l’Armada 375 est une pièce manquante, qui apparaîtra dans la version 3.17.
  • Notre travail de maintenance sur les processeurs AT91 et SAMA5 d’Atmel s’est poursuivi, avec davantage de conversions au Device Tree, au Common Clock Framework, et à d’autres mécanismes modernes du noyau. Nous avons également développé le pilote graphique DRM/KMS pour le SoC SAMA5D3, qui a déjà été publié et qui devrait être intégré prochainement si tout va bien.
  • Notre travail pour prendre en charge le processeur Marvell Berlin a commencé à être intégré à Linux 3.16. Ce processeur est utilisé dans divers téléviseurs, lecteurs multimédia ou dans des petits appareils comme la Google Chromecast. Un support de base a été intégré, comprenant les Device Trees, les pilotes d’horloges, le pilote pinmux, ainsi que la prise en charge des GPIO et de SDHCI. Le support d’AHCI devrait arriver en 3.17, et le support USB et réseau est attendu pour 3.18.
  • Le travail sur la prise en charge des SoCs d’Allwinner s’est poursuivi, en particulier sur le processeur A31 : prise en charge de SPI et I2C, pilotes pour le bus bus et pour le contrôleur PRCM, et le support de l’USB.

Nous disposons maintenant d’une expérience assez complète en écriture de pilotes pour le noyau et intégration de code dans les sources officielles du noyau. N’hésitez pas à nous contacter si vous avez besoin d’aide pour développer des pilotes pour le noyau Linux, ou pour prendre en charge une nouvelle carte ou un nouveau processeur.

Contributions à Buildroot

Notre implication dans le projet Buildroot, un des plus populaires outils de compilation de systèmes de fichiers pour l’embarqué, s’est poursuivie. Nous avons intégré 159 patches à la version 2014.05 du projet (sur un total de 1293 patches), et 129 patches à la version 2014.08 (sur un total de 1353 patches). De surcroît, notre ingénieur Thomas Petazzoni joue souvent le rôle de mainteneur par intérim, quand Peter Korsgaard, le mainteneur, n’est pas disponible. Voici les fonctionnalités principales que nous avons ajoutées : améliorations majeures de la prise en charge de Python 3, ajout de chargeurs de démarrage EFI, support de la bibliothèque C Musl.

Projets Linux embarqué

Bien-sûr, nous avons également conduit des projets de développement Linux embarqué et de réduction du temps de démarrage pour divers fabricants de systèmes embarqués, avec un impact moins visible sur les projets de la communauté. Cependant, nous essaierons de partager l’expérience générique que nous avons pu acquérir via de futurs billets de blog.

Nouvelle formation : Yocto Project et OpenEmbedded

Un grand nombre de projets Linux embarqué utilisent des systèmes de compilation automatique qui intègrent les divers composants d’un système dans une image de systèms de fichiers prête à l’emploi. Parmi les solutions existantes, Yocto Project et OpenEmbedded sont très en vogue.

Nous avons ainsi développé une nouvelle formation de 3 jours, Yocto Project et OpenEmbedded, pour aider les ingénieurs et les sociétés qui utilisent, ou sont intéressés par utiliser ces solutions pour leur projets Linux embarqué. En commençant par la compréhension des principes de base de Yocto, la formation rentre dans les détails de l’écriture de recettes de paquetages, de la prise en charge d’une carte par Yocto, de la création d’images sur mesure, etc.

Le programme détaillé de la formation est disponible. Vous pouvez commander une session sur site, ou bien participer à notre première session inter-entreprises organisée à Toulouse du 18 au 20 novembre.

Mise à jour de la formation Linux embarqué

L’écosystème de Linux embarqué évolue très rapidement, et donc nous mettons constamment à jour nos formations vis à vis des derniers développements. Dans le cadre de cet effort, nous avons récemment procédé à une mise à jour majeure de notre formation Linux embarqué : le matériel utilisé dans les travaux pratiques est passé à la populaire et intéressante carte Atmel Xplained SAMA5D3, et de nombreux travaux pratiques ont été améliorés pour un apprentissage plus facile. Voir notre billet de blog pour plus de détails.

Liste de discussion pour les participants à nos formations

Nous avons mis en place un nouveau service pour les participants à nos sessions de formation : une liste discussion qui leur est dédiée, et sur laquelle ils peuvent poser toutes questions supplémentaires après la formation, partager leur expérience, et se mettre en contact avec d’autres participants et avec les ingénieurs de Bootlin. Bien-sûr, tous les ingénieurs de Bootlin sont sur la liste et participent aux discussions. Encore un service utile offert par nos sessions de formation !

Note: cette liste de discussion n’est plus en service. Les questions des anciens participants à nos formations sont toujours les bienvenues par e-mail.

Conférences : ELC, ELCE, Kernel Recipes

L’équipe d’ingénierie de Bootlin participera aux conférences Embedded Linux Conference Europe et Linux Plumbers, le mois prochain à Düsseldorf en Allemagne. Plusieurs ingénieurs de Bootlin donneront également des présentations à ELCE :

De surcroît, Thomas participera aussi au Buildroot Developers Day, qui se tiendra à Düsseldorf juste avant l’Embedded Linux Conference Europe.

Voir aussi notre billet de blog sur ELCE pour plus de détails.

Maxime Ripard et Michael Opdenacker participeront également à la conférence Kernel Recipes 2014 à Paris, du 25 au 26 septembre. Maxime donnera sa présentation noyau Allwinner à la conférence. Voir notre billet de blog pour plus de détails.

Enfin, nous avons récemment publié les vidéos d’un certain nombre de présentations à l’Embedded Linux Conference, qui s’est tenue en avril à San Jose. Cela représente une bonne quantité d’informations intéressantes sur Linux embarqué ! Voyez vous-même sur notre billet de blog.

Prochaines sessions de formation

Nous proposons un certain nombre de sessions de formation en inter-entreprises, dans lesquelles nous avons encore des places disponibles :

Sessions et dates

Actualités trimestrielles Bootlin: mai 2014

Bootlin a le plaisir de partager avec vous des nouvelles des activités de formation et de contribution de la société.

Bonne année 2014 – Accomplissements en 2013

Toute l’équipe de Bootlin vous présente ses meilleurs voeux pour l’année 2014, pleine d’optimisme et d’énergie !

Nous profitons de l’occasion pour vous donner des nouvelles de Bootlin.

En 2013, Bootlin a augmenté sa contribution aux projets Open Source, surtout au niveau du noyau Linux.

639 patches ont été intégrés au noyau Linux, principalement pour améliorer le support des processeurs ARM de Marvell et d’Allwinner. Pour toutes les versions de Linux publiées en 2013, Bootlin a fait partie des 30 premières sociétés en termes de contributions (nombre de commits). Nous avons maintenant une expérience forte dans l’intégration du support de processeurs ARM dans le noyau Linux, et nous espérons encore déveloper notre activité dans ce domaine en 2014.

595 patches ont été intégrés à Buildroot, un système de compilation automatique pour systèmes embarqués, et ceci dans un grand nombre de domaines, faisant de Bootlin le deuxième plus important contributeur après le mainteneur de Buildroot. Ce travail permet à Bootlin de tenir à jour son expertise en compilation croisée et en outils de compilation de systèmes de fichiers embarqués.

26 patches intégrés au chargeur de démarrage Barebox :

22 patches au « layer » pour Freescale dans Yocto, principalement pour prendre en charge les cartes embarquées de Crystalfontz. Nous en avons profité pour développer un nouveau type d’image et d’importantes améliorations ont été apportées à la recette de compilation pour Barebox.

Certaines de ces contributions, ainsi que bien d’autres activités, ont été réalisées dans le cadre de projets de développement et de conseil en 2013, en particulier :

  • Développement de code pour le noyau Linux, ajoutant à la version officielle du noyau Linux le support de processeurs ARM ou de cartes embarquées de nos clients, en particulier sur les processeurs de Marvell et de Freescale.
  • Développement noyau, de pilotes de périphériques et intégration dans un système de compilation pour l’embarqué, pour un appareil médical basé sur un processeur SAMA5 d’Atmel.
  • Développement de pilotes de périphériques pour noyau Linux pour des émetteurs-récepteurs à radio-fréquences, sur une plateforme domotique à base d’Atmel SAMA5.
  • Projets de réduction du temps de démarrage.
  • Projets de conseil et d’audit autour de Buildroot.

Nous avons également amélioré et mis à jour de façon significative nos formations :

  • Notre formation développement de pilotes de périphériques noyau Linux a été mise à jour pour utiliser la plateforme BeagleBone Black, pour couvrir l’utilisation du Device Tree sur plateforme ARM, et pour utiliser un périphérique I2C amusant pour illustrer le développement d’un pilote de périphériques dans nos travaux pratiques.
  • Notre formation « Android : développement système » a été mise à jour vers Android 4.x, et pour utiliser la BeagleBone Black comme plateforme de développement dans les travaux pratiques.
  • Notre formation Linux embarqué a été mise à jour pour utiliser des versions plus récentes du noyau Linux, en particulier pour couvrir l’utilisation du Device Tree sur plateformes ARM.

Nos supports de formation restent librement disponibles sous licence Creative Commons, y-compris leur code source, disponible via un dépôt Git public.

Bootlin continue de croire à l’importance pour ses ingénieurs de participer aux conférences techniques, pour les tenir au courant des derniers développements autour de Linux et pour renforcer les liens avec les développeurs de la communauté, qui permettent à nos projets d’avancer plus vite. Pour cette raison, nous avons participé à un grand nombre de conférences en 2013 :

  • FOSDEM 2013, à Bruxelles, Belgique. Notre directeur technique et ingénieur Thomas Petazzoni a donné une présentation sur le développement noyau sur ARM.
  • Buildroot Developers Meeting, Bruxelles, Belgique. Notre ingénieur Thomas Petazzoni a organisé et à participé à cet événement, parrainé par Google, autour du développement de Buildroot.
  • Embedded Linux Conference 2013 et Android Builders Summit 2013, à San Francisco, États-Unis. Notre ingénieur Grégory Clement a donné une présentation sur l’infrastructure de gestion des horloges (« clock framework ») dans le noyau Linux. Notre ingénieur Thomas Petazzoni a donné une présentation sur le développement noyau sur ARM. Voir aussi nos vidéos.
  • Linaro Connect Europe 2013, Dublin, Irlande. Notre ingénieur Thomas Petazzoni a participé à de nombreuses discussions autour du support des processeurs ARM dans le noyau Linux.
  • Linux Plumbers 2013, Nouvelle Orléans, États-Unis. Notre ingénieur Maxime Ripard a assisté à la conférence, et a participé à des discussions autour du développement noyau et Android.
  • Kernel Recipes, Paris, France. Notre Directeur Michael Opdenacker et notre Directeur Technique Thomas Petazzoni ont participé à cette conférence sur le noyau Linux, et Thomas a donné deux présentations: une sur le développement noyau sur ARM et une sur Buildroot.
  • ARM kernel mini-summit 2013, Édimbourg, Royaume-Uni. Nos ingénieurs Grégory Clement, Thomas Petazzoni et Maxime Ripard ont participé au mini-sommet sur le noyau ARM, réservé aux développeurs principaux sur ARM. Ce sommet est un l’endroit où se discutent et se définissent les directions à prendre pour le support des processeurs ARM dans le noyau Linux.
  • Embedded Linux Conference Europe, Édimbourg, Royaume-Uni. Grégory Clement a donné une présentation sur l’infrastructure de gestion des horloges dans le noyau Linux et Thomas Petazzoni a donné une présentation sur le Device Tree.
  • Buildroot Developers Meeting, Édimbourg, Royaume-Uni. Notre ingénieur Thomas Petazzoni a organisé et participé à cet événement de 2 jours, parrainé par Imagination Technologies, sur le développement de Buildroot.

Un développement très important pour Bootlin en 2013 est l’embauche d’un nouvel ingénieur dans notre équipe : Alexandre Belloni nous a rejoint en mars 2013. Alexandre a une expérience très significative en Linux embarqué et en développement noyau. Plus d’informations sur son profil.

Abordons maintenant nos projets pour 2014 :

  • Recruter plusieurs nouveaux ingénieurs. Un d’entre eux a déjà signé et nous rejoindra en avril, en apportant une solide expérience en développement noyau, y-compris en contribution au noyau officiel.
  • Notre implication dans le support des processeurs ARM dans le noyau Linux se développera de manière substantielle.
  • Deux nouvelles formations seront offertes : une formation sur la « Réduction du temps de démarrage » et une formation sur « OpenEmbedded et Yocto ».
  • Pour la première fois, nous organiserons des sessions inter-entreprises (ouvertes à inscription individuelle) en dehors de France.
    • Notre prochaine session en anglais sur « Android : développement système » se tiendra du 14 au 17 avril à Southampton, Royaume-Uni
    • Nous préparons également des sessions sur Linux embarqué et sur le noyau Linux aux États Unis, qui devraient être annoncées dans les semaines qui viennnent.
    • Nous projetons également d’organiser des sessions sur les mêmes sujets en Allemagne, avec des formateurs germanophones.
    • Au passage, nos formations en français sur Android continueront à être données à Toulouse, mais il y aura aussi une session du 1er au 4 avril à Lyon.

    Vous pouvez consulter the la liste complète de nos sessions inter-entreprises.

Tout comme en 2013, nous participerons à plusieurs des plus importantes conférences techniques: Linux Conf Australia (Janvier 2014), FOSDEM (Février 2014), Embedded Linux Conference (Avril 2014) et Embedded Linux Conference Europe (Octobre 2014).

Vous pouvez suivre les actualités de Bootlin en lisant notre blog et en suivant nos nouvelles brèves sur Twitter. Nous avons maintenant aussi une page Google+.

Une fois de plus, Bonne Année 2014 !

Toute l’équipe de Bootlin.