Earlier this month, Free Electrons applied and was elected Yocto Project Participant by the Yocto Project Advisory Board. This badge is awarded to people and companies actively participating to the Yocto Project and promoting it.
We have mainly contributed to the meta-fsl-arm and meta-fsl-arm-extra layers but we also have some contributions in OpenEmbedded Core and in the meta-ti layer.
Free Electrons offers a Yocto Project and OpenEmbedded training course that we can deliver at your location, or that you can attend by joining one of our public sessions. Our engineers are also available to provide consulting and development services around the Yocto Project, to help you use this tool for your embedded Linux projects. Do not hesitate to contact us!
Linux 3.17 has been released a few days ago. One can read the coverage of the 3.17 merge window by LWN (part 1 and part 2) to get some details about the new features brought by this kernel release.
As usual, Free Electrons has continued to contribute a significant number of patches to this kernel release, even though with 147 patches, our contribution has been less important than for the 3.16 release for which we contributed 388 patches. With 147 patches merged, Free Electrons is the 14th contributing company by the number of patches.
Our contributions remain mainly focused on support for various families of ARM processors:
- For the Atmel processors
- Switched to use the generic PWM framework instead of custom PWM drivers. This allowed to remove three obsolete drivers (a backlight driver, a LED driver and a misc driver). This work was done by Alexandre Belloni.
- Continue the migration to the common clock framework, by adding clock information to a large number of Atmel boards. Done by Alexandre Belloni.
- Migration of the interrupt controller driver from
drivers/irqchip. Done by Boris Brezillon.
- For the Marvell EBU processors (Armada 370, 375, 38x, XP)
- Addition of the
mvpp2 network driver, which is used on the Armada 375 SoC. This work was done by Marcin Wojtas from Semihalf, with a lot of review, help and debugging done by Ezequiel Garcia.
- Addition of cpuidle support for Armada 370 and Armada 38x. This work was done by Grégory Clement and Thomas Petazzoni.
- Preparation work to enable cpufreq on Armada XP was merged. However the feature cannot be enabled yet due to missing features in the cpufreq-cpu0 driver. Done by Thomas Petazzoni.
- For Marvell Berlin processors
- SMP support has been added. Done by Antoine Ténart.
- Description of the I2C controller has been added to the Device Tree. Done by Antoine Ténart.
- Support for AHCI has been added. Also done by Antoine Ténart.
- For Allwinner processors
- New DMA controller driver for the DMA engine of the Allwinner A31 SoC. Done by Maxime Ripard.
- A number of fixes and improvements to the pin-muxing driver for Allwinner platforms. Done by Maxime Ripard.
- Support for the Merrii A31 Hummingbird board has been added. Done by Maxime Ripard.
- Other changes
- Addition of a helper function to convert an ONFI timing mode into the according NAND timings. Done by Boris Brezillon.
- Addition of a driver for the Foxlink FL500WVR00-A0T panel. Done by Boris Brezillon.
The detailed list of our contributions:
- Alexandre Belloni (59):
- Antoine Ténart (13):
- Boris BREZILLON (11):
- Ezequiel Garcia (13):
- Gregory CLEMENT (16):
- Maxime Ripard (14):
- Michael Opdenacker (1):
- Thomas Petazzoni (20):
At the end of September, the Xenomai project has announced the release of version 2.6.4. For the record, Xenomai is a hard real-time extension to the Linux kernel.
Amongst a number of bug fixes and improvements, this new release brings an interesting new feature to which Free Electrons contributed: the support for the Atmel SAMA5D3. This means that Xenomai can now be used on platforms such as the Xplained SAMA5D3 and any other SAMA5D3 based platform. This work was done by Xenomai ARM maintainer Gilles Chanteperdrix, thanks to the testing and insights of Free Electrons engineer Maxime Ripard.
Mainly, the change needed was to support the AIC5 interrupt controller used in SAMA5D3, which is different from the interrupt controller used on earlier AT91 processors. This change should also provide compatibility with the recently released SAMA5D4, though we haven’t tested this at this time, and Xenomai only provides its patch up to kernel 3.14, while SAMA5D4 support was only recently added to the mainline kernel.
This 2.6.4 Xenomai release also brings support for the 3.14 kernel version, through the corresponding I-Pipe patch.
There are also some other interesting Xenomai news: in early October, they have released the first release candidate of Xenomai 3, the next generation Xenomai architecture. And they also have a brand new and more modern website at xenomai.org.
Atmel announced its new ARM Cortex-A5-based SoC on October 1, the SAMA5D4. Compared to the previous Cortex-A5 SoC from Atmel, the SAMA5D3, this new version brings a L2 cache, NEON, a slightly different clock tree, a hardware video decoder, and Trustzone support.
Free Electrons engineers have worked since several months with Atmel engineers to prepare and submit the support for this new SoC to the mainline Linux kernel. We have actually submitted the patches on September, 11th, almost a month before the official release of the new chip! This means that most of the support for this new SoC will already be part of the upcoming 3.18 kernel release. Meanwhile, it is already possible to test it out by using the linux-next repository.
There are however a few pieces missing pieces to support all aspects of the chip:
- A few patches are needed to get proper NAND flash controller support.
- The DMA controller is brand new in this SAMA5D4 SoC, and the DMA controller driver has not yet been merged, even though the patches have been posted a long time ago, and are currently in their sixth iteration.
- Display support, through a DRM/KMS driver, is also being reviewed. The driver, written by Free Electrons engineer Boris Brezillon, was initially designed for the sam9x5 and sam5d3, but will be compatible with sama5d4 as well. The patch series is currently in its seventh iteration.
The last big missing part is support for non-secure mode: for the moment, the system always runs in secure mode. Running the kernel in non-secure mode will require some more work but an initial version will probably be pushed during the next development cycle.
Besides this work on SAMA5D4 support ahead of its public release, Free Electrons is also doing a lot of maintenance work on all the Atmel ARM platforms in the Linux kernel: migration to the Device Tree, to the clock framework, to several other new subsystems, etc. See the summary of our kernel contributions to 3.16, 3.15 and 3.14.
Through this work, the Free Electrons engineering team has a very deep knowledge of the Linux support for Atmel ARM processors. Do not hesitate to contact us if you need help to bring up the bootloader or kernel on your custom Atmel ARM platform! It is also worth mentioning that Free-Electrons is part of the Atmel partner ecosystem.
The Kernel Recipes conference is holding its third edition next week in Paris, on September 25th and 26th. With speakers like Greg Kroah-Hartmann, Hans Peter Anvin, Martin Peres, Hans Verkuil or Jean Delvare and many others, it is going to be a very interesting kernel-oriented conference.
Free Electrons will participate to this conference, as our engineer Maxime Ripard will give a talk about Supporting a new ARM platform: the Allwinner example, and Maxime will be attending the event on both days.
Also, Free Electrons’ CEO Michael Opdenacker will be attending the conference as well.
A good opportunity to meet Free Electrons folks, and discuss business or career opportunities! We are always interested in getting to know more engineers with embedded Linux or Linux kernel knowledge to join our engineering team, so do not hesitate to meet us during the conference, or contact us ahead of time to plan a discussion. If you don’t have a seat yet, unfortunately the conference is fully booked, but meeting in the area is possible too.
The LinuxCon North America conference was held a few days ago in Chicago.
A number of slides from the conference have been published. While the conference is a general purpose Linux conference, there were quite a few talks discussed kernel or low-level related topics that may be of interest to embedded Linux developers. Amongst them, we noted:
Not all the slides have been posted yet, so be sure to check the slides page regularly for updates!