Séminaire « Portage de Linux sur une plateforme ARM » à Toulouse

CaptronicDans le cadre des séminaires organisés par Captronic, Bootlin animera le jeudi 10 décembre de 14h à 18h à Toulouse un séminaire sur le thème Portage de Linux sur une plateforme ARM. Ce séminaire sera animé par notre ingénieur Alexandre Belloni.

Ce séminaire couvrira les aspects suivants:

  • Ecosystème ARM : coeur ARM, System-on-chip, System-on-Module, carte personnalisée
  • Choix du matériel : comment choisir son matériel pour bénéficier d’un bon support Linux.
  • Choix des versions du bootloader et du noyau Linux : Version fournie par le constructeur ? Version officielle ? Autre version communautaire ?
  • Adaptation du bootloader :
    • Processus de démarrage d’un SoC ARM : ROM code, « first stage » (SPL) et « second stage »
    • Focus sur U-Boot : compilation et flashage, ajout du support d’une nouvelle carte, gestion des périphériques utiles dans un bootloader (flash, MMC, réseau)
  • Adaptation du noyau Linux
    • Configuration, compilation et démarrage
    • Concept de Device Tree pour la description du matériel : gestion du pin-muxing, description de périphériques sur I2C et SPI, de GPIOs, etc.
    • Introduction minimale au développement de drivers, avec un exemple de driver I2C
    • Utilisation d’un système de fichiers racine minimal

L’ensemble du séminaire sera illustré par des exemples concrets de projets réalisés par Bootlin, sur des processeurs Atmel SAMA5, Freescale i.MX6 et Texas Instruments AM335x et autres.

Ce séminaire est gratuit, mais nécessite une inscription préalable auprès de Captronic sur la page du séminaire.

Stages Linux Embarqué chez Bootlin en 2016

Note: les offres de stage ci-dessous ne sont plus disponibles. Voir notre dernière offre de stage.

Penguin worksBootlin propose les sujets de stage suivants aux étudiants en universités ou écoles d’ingénieurs françaises:

Si vous avez vous-même un projet autour de Linux embarqué auquel vous souhaiteriez contribuer, nous sommes également ouverts à vos propres propositions !

Pour limiter les démarches administratives, ces stages ne sont proposés qu’aux personnes étudiant en France.

Nous avons une forte préférence pour des stages de fin d’études, dans la perspective d’un recrutement à la suite d’un stage mené avec succès.

Si vous êtes intéressés, merci de contacter jobs@bootlin.com en précisant le ou les sujets qui ont retenu votre attention.

Bulletin d’actualités trimestrielles Bootlin, Juillet 2015

Bootlin engagé pour le projet d’ordinateur à 9 dollars

NextThing Co, une société basée à Oakland en Californie, a été au centre de l’actualité ces derniers mois en réussissant à lever plus de 2 millions de dollars via Kickstarter pour développer un ordinateur à 9 dollars ! De manière similaire à la Raspberry Pi, cet ordinateur, nommé C.H.I.P., est construit autour d’un processeur ARM, et fonctionne grâce à un système d’exploitation Linux.

De manière plus précise, le processeur ARM est fourni par Allwinner, et il se trouve que notre ingénieur Maxime Ripard est précisément le mainteneur officiel du support de la famille des processeurs d’Allwinner dans le noyau Linux. Comme NextThing Co. s’est fermement engagé à ce que la partie logicielle du C.H.I.P. soit la plus libre et ouverte possible, ils ont décidé de faire appel à nos services pour des développements importants dans le noyau Linux officiel pour améliorer la prise en charge du processeur d’Allwinner qu’ils utilisent.

Grâce à ce projet, une partie des fonctionnalités qui manquaient le plus dans le support des processeurs Allwinner dans le noyau Linux officiel sera implémentée dans les mois qui viennent. Vous pouvez ainsi vous attendre à voir de nombreuses contributions en provenance de Bootlin dans ce domaine. Nous sommes très enthousiastes de participer à cette aventure de l’ordinateur à 9 dollars !

Plus de détails sur notre billet de blog.

Contributions au noyau Linux

Comme à l’accoutumée, nous continuons à contribuer de façon importante au noyau Linux, avec entre 100 et 200 patches de Bootlin acceptés dans chaque nouvelle version du noyau. Nous continuons à nous concentrer sur le support des divers familles de processeurs ARM.

  • Pour Linux 3.19, nous avons inclus 205 patches, faisant de Bootlin la 13ème société contributrice en nombre de patches. Plus de détails.
  • Pour Linux 4.0, nous avons fait accepter 252 patches, ce qui nous a placé au 6ème rang des sociétés contributrices. Plus de détails.
  • Pour Linux 4.1, 118 de nos patches ont été intégrés, un nombre plus modeste de contributions. Plus de détails..

Voici les contributions les plus importantes :

  • Dans Linux 4.0, nous avons inclus un pilote complet pour le contrôleur d’affichage des plus récents processeurs ARM d’Atmel. Ce pilote DRM/KMS, développé par Boris Brézillon, permet d’utiliser les fonctions graphiques de ces processeurs avec le noyau officiel. Il s’agissait de la dernière fonctionnalité importante qui manquait au noyau Linux officiel pour les processeurs d’Atmel.
  • Notre ingénieur Alexandre Belloni a été désigné co-mainteneur du sous-système RTC, et aussi co-mainteneur du support des processeurs d’Atmel. En tant que mainteneur du sous-système RTC, Alexandre envoie maintenant ses pull requests directement à Linus Torvalds !
  • En Linux 4.1, nous avons terminé la migration du support des processeurs d’Atmel vers le paradigme « multiplatform ». Nous avons également ajouté la prise en charge du plus récent processeur Armada 39x de Marvell.

Nouvelle formation sur Buildroot

L’année passée, nous avons développé et publié une nouvelle formation de 3 jours sur Yocto Project et OpenEmbedded. Cette année, nous avons le plaisir de publier une nouvelle formation de 3 jours sur le système Buildroot de compilation pour Linux embarqué.

Buildroot est une alternative très populaire à Yocto Project pour compiler des systèmes de fichiers pour Linux embarqué, grâce à la simplicité de son architecture et à sa facilité d’utilisation. Bootlin a un long historique de contribution à Buildroot, son directeur technique, Thomas Petazzoni, étant l’un des principaux développeurs du projet.

Durant les 3 jours de cette formation, vous apprendrez à utiliser Buildroot, à rajouter la prise en charge de nouveaux composants, à personnaliser le système de fichiers généré par Buildroot, vous comprendrez comment Buildroot fonctionne sous le capot, et découvrirez de nombreux autres détails !

Vous pouvez consulter le programme, les transparents, et les instructions de travaux pratiques pour plus de détails.

Cette formation, enseignée par Thomas, peut-être dispensée n’importe où dans le monde dans vos propres locaux. Vous pouvez également vous inscrire de façon individuelle à notre première session inter-entreprises à Toulouse, en novembre 2015.

Projets récents

En plus de nos contributions visibles, nous travaillons également sur un certain nombre de plateformes client spécifiques, comme récemment :

Pour un client français produisant une carte i.MX6 sur mesure basée sur un système-sur-module de SECO, nous avons porté un U-Boot mainline récent, un noyau 3.10 de Freescale, et fourni un système généré par Buildroot avec Qt5 et l’accélération OpenGL pour permettre au client de développer ses propres applications. Entre autres, nous avons également ajouté la prise en charge de la communication avec un FPGA via SPI, et écrit un outil en espace utilisateur pour reprogrammer ce FPGA à travers le SPI.

Ce projet a été l’occasion de quelques contributions à U-Boot pour la prise en charge du module de SECO :

Ainsi que quelques contributions à Buildroot :

Pour un client américain, nous avons développé un prototype de système fonctionnant sur plateforme Nitrogen 6x, compilé avec Buildroot et utilisant l’application SuperCollider pour la synthèse audio.

Pour un client français, nous avons développé un BSP Yocto Project pour une plateforme i.MX6 sur mesure. Le projet incluait également du développement pour adapter le noyau au matériel et pour l’exécution d’une application Qt5 sous X11.

Conférences

Comme chaque année, nous avons participé à l’Embedded Linux Conference à San Jose en Californie : 7 ingénieurs de Bootlin étaient présents.

Les vidéos et les transparents des trois présentations que nous avons données sont disponibles :

  • Le sous-système DMAengine, par Maxime Ripard (transparents, vidéo).
  • Le Device Tree comme ABI stable, un conte de fée ?, par Thomas Petazzoni (transparents, vidéo).
  • Support MLC/TLC NAND : (nouveaux ?) défis pour le sous-système MTD/NAND, par Boris Brézillon (transparents, vidéo)

Pour plus de détails sur notre participation à ELC, voir notre billet de blog.

Nous avons également proposé plusieurs présentations à la prochaine Embedded Linux Conference Europe, qui se tiendra début octobre à Dublin en Irlande.

Prochaines sessions de formation inter-entreprises

En plus de proposer des sessions de formation sur site partout dans le monde (nous avons récemment dispensé des formations aux États-Unis, en Israël, en Inde et au Mexique !), nous proposons également des formations ouvertes à inscription individuelle. Voici nos prochaines sessions en inter-entreprises :

Formation Linux embarqué
12-16 octobre, Avignon, en anglais
23-27 novembre, à Toulouse, en français
Formation noyau Linux et développement de pilotes
20-24 juillet, à Avignon (en plein festival), en anglais
16-20 novembre, à Toulouse, en français
Formation développement Linux embarqué avec Buildroot
30 novembre – 2 décembre, à Toulouse, en anglais
Formation développement avec Yocto Project et OpenEmbedded
13-15 octobre, à Toulouse, en anglais
Formation développement système Android
7-10 décembre, à Toulouse, en anglais

Recrutement

Chez Bootlin, nous recevons de plus en plus de demandes pour des projets très attrayants. Comme il peut être très frustrant de devoir refuser des opportunités très intéressantes, nous avons décidé de rechercher de nouveaux ingénieurs pour rejoindre notre équipe technique.

Ainsi, si vous êtes un jeune ingénieur montrant un véritable intérêt pour Linux embarqué et les projets open-source, ou si vous êtes un ingénieur plus expérimenté ayant fait des contributions visibles et avec un bon bagage en Linux embarqué, n’hésitez pas à nous contacter.

Voir plus de détails sur nos nouveaux postes.

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.