BayLibre is working on mainline Linux for Amlogic SoC, and in February of last year, Neil Armstrong gave a presentation entitled “Mainline Linux on AmLogic SoCs” at the Embedded Linux Conference 2017.
Neil has recently (actually yesterday) given another presentation about the status of mainline Linux on Amlogic processor at linux.conf.au 2018, so we have some updated information now. He goes through the whole history of upstreaming Linux for Amlogic SoCs, but I’ll provided summary of the new features, and if you have time you can watch the video (25 minutes) embed below, or the slides.
Early last year, Linux 4.10 already supported general I/Os, USB host (for S905), Gigabit Ethernet, eMMC/SD/SDIO, PSCI for SMP, and SCPI for DVFS for Amlogic processor, and BayLibre was said to be working on HDMI display support, Mali (as external module), audio input/output, and high-speed eMMC modes.
Based on the slide above, with Linux 4.14, the (e)MMC driver now support HS200 @ 50 MHz, the DRM driver for composite (CVBS) and HDMI video output is working, further work for the USB driver for GXBB (S905) has been done, as well as for I2C, SPI, PWM, Ethernet, and others. HDMI CEC is also supported in Linux 4.14 using the CEC Framework, and a Fix for Gigabit Ethernet stability & reliability has also been pushed for Linux 4.16.
He also talked about Arm Mali-450MP integration, and they currently have out of tree support for GXBB (S905) and GXL (S905X), but more work is needed for GXM (S912) using an Arm Mali-820MP GPU. The user-space library is closed source, must be updated by Amlogic, and they have support for the three versions: fb (framebuffer), X11, and Wayland. LIMA has also be resurrected by another developer (mesa-lima), there’s basic support for Arm Mali-450 GPU, and it has successfully been tested by Baylibre.
Going forward, there’s still lots of work on the video display driver including cursor plane, overlay planes, OSD scaling, overlay scaling, and MIPI DSI output.Vide hardware acceleration will also be challenging as Amlogic is currently using a custom software implementation, and it will have to be supported through V4L2 in mainline, so it will take some time. Some Audio features have yet to be implemented including S/PDIF input and output, I2S input, PCM input and output, and the embedded stereo DAC in S905X and S912.
At the end of the presentation he also covers the community involvement, and development boards such as ODROID-C2, and the more recent Khadas VIM or Libre Computer boards.
You may also want to check out the slides.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
So they are trying to opensource everypart of the soc ?
if so it could be competitive against the imx 8m socs ,or am i wrong ?
Thank you CNX that was interesting.
It’s amazing that the first man on the moon is able to turn his hand to linux development like that. Thanks Neil!
Baylibre guys have just posted more details on their blog @ http://baylibre.com/improved-amlogic-support-mainline-linux/
Great summary. Quickly looked at the BayLibre slides you linked, and got a bit confused: 1. Slide#4 ( Title being #1) mentions S905X ( GXL) as having video encoding and decoding, but is it still not supported in Linux 4.10+ ? 2. Is it safe to assume that Ubuntu will run on S905X with SMP enabled, i.e. quadcore multiprocessor support ? How about for multicore Mali GPU support? 3. BayLibre omitted mention of balbe150 on armbian.com in its hacker list, who seems to have made some major (out of tree?) contributions to running Ubuntu- Debian on Amlogic boards. Does anyone… Read more »
@Tornado
I hope this is not also being faked by Hollywood!
Any news on the previous generation of Amlogic SoC’s? (e.g. S805)
They are partnering and working with AmLogic and yet user-space drivers have to be reverse engineered by someone else? Is it b/c of contractual issues with ARM that AmLogic has that it can’t release code? I never understood how that works
Khadas Vim has an experimental build for 4.14.11
http://forum.khadas.com/t/vim-ubuntu-mate-with-linux-4-14-11-and-u-boot-v2018-01-rc3-rom-alpha-v180106-sd-usb-installation/1791
I think the libMali.so they use is from 4.9 so … it works.. but you get 8FPS
They still missing one simple stuff
working v-sync on DRM driver
I did report this problem mouth ago on IRC and nothing 🙂
Always nice to hear about steady development on a popular SoC lineup. Keep it up, BayLibre!
Sheet 13 says “BayLibre develops and maintains the AmLogic kernel upstream”.
The BayLibre site says “It was a match made in heaven: two years ago AmLogic and BayLibre joined forces to bring top-notch support for AmLogic SoCs into the mainline Linux kernel.”
So I assume AmLogic pays BayLibre for their work?
@Shimon
It would be great if they could bring support to the older SoC s805, s802, s812 there are a lot of older TV boxes out there just prime for Linux to replace Android 4.4 or if newer Linux could bring a more modern Android to these boxes.
Till then https://forum.libreelec.tv/thread/200-7-0-3-3d-libreelec-7-0-for-s805/
Whats wrong with the latest 8.x builds?
https://sx05.eu/s805/8.2.3.1/
@Sander
Yes, Baylibre is being contracted by Amlogic for this work.
As far as I knew Amlogic had contracted BayLibre to upstream their kernel to mainline but the money had run out and Amlogic refused to fund the collaboration any further because they have already moved on from S905 and development had stalled.
@geokon the 9fps problem with the latest kernel can be solved with the following patch, https://pastebin.com/raw/WRi7XTq6
@gotmilk
Hi gotmilk,
It’s a patch for mainline?