Linaro Connect - Kernel Working Group Summary
dsaxena at linaro.org
Wed Aug 10 18:00:02 UTC 2011
I wanted to provide an update of what the kernel team accomplished at
Linaro Connect last week for those who were unable to attend.
The team was split into two main groups, the first being led by Grant
Likely and focusing on continuing the work on enabling Device Tree
support on ARM platforms. In addition to Linaro members, David Brown
and Nicolas Ferre also worked on DT support for their platforms
and all together the team got much accomplished in 5 days there
with a number of patches ready for the 3.2 merge windows:
* Several device drivers for the Freescale iMX were converted
to use DT-base discovery.
* Code was written to bridge between the Device Tree model and
TI OMAP's HWMOD.
* Initial support for DT was added to the Samsung Exynos, Qualcomm MSM86,
and Atmel AT91 by Nicolas Ferre
* DT skeleton code was written for the ARM Versatile and ST-E platforms.
The rest of the team primarilly focused on code cleanup and development
to work towards a multi-SOC zImage. Nicolas posted and original
email with info at http://bit.ly/oVQRQm and folks took individual
bits to work on. Russel King was also in attendance and there was
good discussion around some of these topics. What we discovered
is that many of these issues are multi-layered and as we start
cleaning up one bit of code, we need to fix other areas to make
them work consistently. The areas we looked into were:
* Replacing low level IO accessor macros with runtime selected functions
based on platform type.
* Replacing the global NR_IRQS constant with per-board information
* Removing duplicated low-level serial output functions. Currently the
code to print "Uncompressing kernel..." and the code for low-level
in-kernel serial output are completely different but could be made
to be the same. At the end of the day, the method we're looking
at using is providing a special node in the DT that contains the
physical mapping of the debug serial registers in place.
* Removing CLOCK_TICK_RATE from the kernel
* Replace CONSISTENT_DMA_SIZE with a runtime variable
* Removing arch_idle() and moving to using the run time
selected pm_idle hooks. Similar work to be done with
* Getting rid of VMALLOC_END. Russel and Nicolas agreed
that we'll just use a static VMALLOC_END for everyone
and insert static I/O mappings in there.
In addition the the above work, KWG members also were involved in
discussions about continuous integration and testing of the upstream
kernels on ARM platforms, kernel development process at Linaro and
how to better stay in sync with upstream, -stable patches for ARM
platforms, Android development, and flash storage roadmap to name a few.
Overall, the team had an extremely productive week of hacking on existing
projects and on coming up with more detailed plans on what other items
on which we need to focus.
I want to thank everone on the team for their hard work last week
and also the non-Linaro developers David Brown, Will Deacon, Nicolas
Ferre, and Marc Zyngier for taking time to join us in hacking and planning.
All together connect was a great technically focused event and I highly
encourage folks to join us in Orlando in November. You can register now
More information about the linaro-kernel