By Jake Edge
May 25, 2011
Over the last month or so, I have sat in on a few different talks about
Linaro and the work that it is doing to improve the ARM Linux landscape.
While Linaro is a
consortium of six major ARM companies, its work
is meant to be available to all ARM companies, developers, or users.
The focus may be on the needs of its member companies, but Linaro's
influence and
efforts are likely to spread well beyond just those needs. It is an
organization that wants to try to keep the best interests of the entire ARM
ecosystem in mind—perhaps that's not so surprising with both ARM,
Ltd. and major ARM silicon fabricator IBM on board.
In the year since Linaro began to take shape, and roughly eleven months
since it was announced to
the world, the organization has expanded its scope, changed to a monthly
release cycle, and stepped in to to try to help head
off a crisis in the ARM tree. It has also made progress in many of the
problem areas (kernel, toolchain, graphics, ...) that it set out for
itself. But there is, of course, lots more to do.
Linaro Developer Summit
Linaro CEO George Grey spoke briefly at the opening of the Linaro Developer
Summit (LDS), which was co-located with Ubuntu Developer Summit in
Budapest, and described some industry trends and things he sees coming for Linaro. Grey
noted that the last twelve months have shown some "extraordinary
changes" in the use of open source software in real world products.
"Android in particular has startled a lot of people", he
said. The Android share of the smartphone market has risen from 5% to 25%
in that time span, he said, which is something that has never happened before.
Device manufacturers are no longer happy to get a board support package
(BSP) that is out of date and requires a BSP-specific toolchain. Instead,
they are looking for product-quality open source platforms, which is
something that Linaro is delivering. The Linaro automated validation
architecture (LAVA)—a test and validation platform—will be very
important to that effort as it will help increase the quality of the
software that Linaro delivers.
Getting development platforms into the hands of open source developers is
another area where Linaro can make a difference, Grey said. In the past,
it has been difficult for smaller players to get their hands on these
development platforms because it is hard to get the attention of the
system-on-chip (SoC) vendors. But, these days there are development
platforms at reasonable prices for ARM SoCs from Texas Instruments,
Freescale, and ST-Ericsson (all Linaro members), with more coming.
That solves the hardware problem, and Linaro will be providing software to
run on those boards. That means that companies or developers with limited
budgets can get complete hardware with multiple I/O devices and a product
quality software stack. Grey is excited to see what the community can do
with all of that.
Grey also announced that there would be no Linaro 11.11 (it had been
making releases based on Ubuntu's schedule, though delayed by one month) in
favor of monthly (or more frequent) code drops. The various Linaro working
groups will be continuously pushing their code upstream, while there will
be daily releases of some code, mostly for internal use. There will also be
monthly supported releases of the kernel and toolchain for external use.
Looking to the future, Grey noted that work was progressing on support for
the Cortex
A15 processor. The intent is to have the processor supported by Linux
when it releases, rather than a year or two later as has been the case in
the past. He also said that there "clearly is going to be a market
for ARM-based servers", and Linaro is doing some early work on that
market segment as well.
Linaro VP of Engineering Christian "Kiko" Reis spoke after Grey, mostly
about the nuts and bolts of how LDS would operate, and how attendees could
get the most out of it. He also looked back over Linaro's first year,
noting that a lot of progress had been made, particularly in the areas of
communication and collaboration between various ARM vendors. Starting
Linaro wasn't easy, he said, but there are harder things still to be done,
including bringing the whole ARM community together.
Specifically, Reis mentioned the ARM kernel consolidation work that still
needs to be done. Linaro "spent a year not really doing
this", and now is the time to get it done. Determining the right
course for memory management for
embedded graphics devices is also high on the list. Delivering that will
take more
than just a year, but planning for that is one of the priorities for the week.
The organization of Linaro
David Rusling, Linaro CTO, gave a talk at the Embedded Linux Conference back in
April to give an overview of the organization, highlight some of the
accomplishments in the first ten months, and look ahead to some future
plans. Rusling started off by clarifying that Linaro is meant to be an
engineering organization and not a "tea and cakes in Honolulu
standards thing". He also pointed out that "Linaro" was the "least
hated name" among the candidates, which mirrored Dirk Hohndel's
explanation earlier in the day of the choice of the name "Yocto" for that
project.
Rusling said that he recognized that the fates of ARM and Linux were
intertwined in 2009 or so, when he was at ARM, Ltd., but there were lots of
companies "running around" and not collaborating. There was
a clear need for more collaboration on the things that were common between
various SoCs, but there were not enough engineers working on those
problems. Linaro was born out of that need.
Linaro started out with around 20 engineers and was envisioned as an
"upstream engineering" organization. The "genius
move" was to do all of that in the open, he said. Everything is on
the wiki, though some things may be hard to find, and "upstream is
our mantra".
Much of what Linaro does is "social engineering", Rusling
said. There are a number of misconceptions about Linux and open source that
need to be dispelled, including the idea that open source is difficult to
deal with. There are gatekeepers in Linux and other projects that have
strong views, but interested organizations and vendors simply need to
"engage with them". The "really bad false
statement" is that open source is cheaper. That's not really true
as working in the open source communities requires a deeper involvement
because it's all about influencing development direction; there is no
control, he said.
The six member companies want to drive the technical agenda for Linaro, which
does its work through the
working groups that have been established. Those working groups are
"very independent" and the member companies aren't trying to
run the projects directly, but are instead allowing the groups to work
upstream on solving problems in their areas.
There is also a platform
group that builds, tests, and benchmarks the work that is done by the
working groups (and upstream projects). The idea is to prove that new
kernel features work or that tool changes make things go faster by creating
and testing evaluation builds. "Any time you do any changes you have
to measure" the impact of those changes, he said. There are also
landing teams for each of the member SoC vendors (Samsung, Texas
Instruments, ST-Ericsson, and Freescale) that take the outputs from the
platform team and turn it into usable builds for their customers. The
landing teams are the only teams in Linaro that are closed to community
participation.
It is not just kernel work that lands upstream, as the toolchain working
group is doing a lot of work on GCC and other tools. Support for ARMv7a,
Thumb 2, Neon, and SMP are being added to GCC 4.7, which won't be released
until April 2012, and won't get into distributions until October 2012 or so,
sometime after the 4.7.1 release. In the interim, the toolchain group will
be making "consolidation builds" that can be used by ARM developers prior
to the GCC release. In addition to work on GCC, the group is also adding
functionality to tools like gdb, QEMU, and valgrind, he said.
After the first release in November, two new working groups were added to
address graphics and multimedia issues. In addition, the other working
groups started looking at long-term problems, Rusling said. The kernel
group started adding device tree support for all of the Linaro members'
hardware. Work on vectorizing support for GCC was one focus of the
toolchain group, and the power management group started tackling segmented
memory so that portions of the memory can be powered down. All of those
things are "tricky areas that require a lot of coordination within the
ARM space, but also upstream", he said.
For multimedia, much of the work involves testing, benchmarking, and tuning
various codecs for ARM. Standardizing on the OpenMax media libraries and the
GStreamer framework is the direction that Linaro is going. Android has gone
its own way in terms of multimedia support, he said.
Rusling, like Grey,
also pointed to the work being done on LAVA as something that is very
important to Linaro, but also to the community. It is a "completely
open" test and validation system that could be used by others in the
ARM community or beyond.
There were some hard lessons learned in the first year or so of Linaro's
existence, Rusling said. It is difficult to build a new engineering
organization from scratch with engineers donated from multiple companies.
On the other hand, people thought that the ARM community couldn't
collaborate but Linaro has shown that not to be the case. Everything takes
longer than he would like, and there is still a lot to learn, he
said. "Open source is wonderful", but there are challenges to
using it.
It is clear that ARM has become a very important architecture for Linux,
and is completely dominating the low-power mobile device market. That
doesn't look likely
to change anytime soon, and it may be that ARM's efforts to move into the
server space will bear fruit in the next few years. Certainly power consumption
(and the associated heat produced) are very important not just in pockets,
but in data centers as well. Linaro has, so far, been making many of the
right moves to ensure that ARM is well-supported—and
maintainable—in Linux. It will be interesting to see what the next
year (and beyond) hold.
(
Log in to post comments)