[Community-news] OLPC News (2007-01-20)

Walter Bender walter.bender at gmail.com
Sat Jan 20 13:09:33 EST 2007


1. The software team has released to manufacturing our firmware
(version Q2B21) and with the exception of some final test, has the
completed the candidate build for the software image for B2 machines
(Build 239). This is the software that will be used in testing with
children in the coming month in the launch countries.

2. Sydney: Chris Blizzard, Dave Woodhouse, and Jim Gettys attended
linux.conf.au.  It is a volunteer-run conference located in a
different city in Australia or New Zeland and organized by different
people every year; it is considered one of the best conferences in the
world in support of free and open source software. There were about
800 international attendees and another 400 locals who came for the
"open day." Chris gave one of the keynotes at the conference: he
talked about Firefox, OLPC, and the relevance of free software outside
of the context of the server room. He gave a separate talk on the OLPC
user interface. Jim gave a talk on the process of building the OLPC
hardware.

3. Thomas Vander Stichele from Fluendo gave a demo of streaming video
from a laptop to a laptop that did video encoding to yet another
laptop where it was streamed to the Internet at large.

4. Kernel: The wireless driver has gone through two rounds of reviews
with the upstream kernel networking folks and work continues to get it
into the Linux mainline kernel. Marcelo Tosatti also reports that we
are down to 5–6 interrupts per second (minus a really bad i8042
driver). This is compared with a ~200 per second in a standard Linux
desktop. This will have a huge positive effect on our battery life.

5. UI: Marco Presenti Gritti made numerous small changes to the UI to
try to improve some of the experience. Dan Williams, Erik Blankinship,
Bakhtiar Mikhak, and Eben Eliason worked on the camera activity. Dan
also spent time pulling together some multimedia extension (MMX)
optimizations for our platform that should help with Cairo and X
performance.

6. Firmware: Mitch Bradley reports that the firmware for the B2 build
is released and seems to be stable. Several new firmware features are
working, to be deployed after the B2 build: SD driver for booting from
SD; audio driver for startup sound; fixed a longstanding bug that was
causing some USB keys (that violate the USB2 spec in a minor way) not
to work; a graphical touchpad diagnostic that illustrates the detailed
behavior of the "jumping cursor" issue; and Open Firmware can now do
the wireless-chip firmware uploading/rewriting process (thanks to
Lilian Walter).

7. Community: As we go into B2, we would like to take this opportunity
to acknowledge the much larger community of people and projects, that
have made it possible. It is easy to lose sight of them in the
day-to-day engineering we do.

Firmware: Ron Minnich (LANL) and the LinuxBIOS team, Sun Microsystems
for freeing up Open FirmWare, Richard Smith (OLPC), Mitch Bradley
(OLPC). Tom Sylla has been invaluable with his in-depth knowledge of
the AMD Geode.

Audio drivers: Jaya Kumar has, behind the scenes done a superb job
with the AD1888 driver and 5536 ALSA support, and has added support
for analog input to the driver and the controls to support them, which
is dear to the heart of Seymour Papert. He did so in such a quiet,
timely way that it has been easy to overlook his contributions. The
Alsa project in Linux provides the driver framework we use.

Camera driver: Jon Corbet, well known in the open source community as
the editor of LWN, wrote the camera driver under contract to OLPC: but
the frame work into which it fits is the Video-4-Linux project.

LED driver: Reynaldo Verdejo wrote our keyboard LED driver (which he
wrote without having access to a laptop!).

SD driver: Pierre Ossman is the maintainer of the Linux SD driver and
is an invaluable aide in ensuring proper correct support of SD for
OLPC. Richard Smith (OLPC) has been debugging the driver and hardware.

NAND Flash driver: Dave Woodhouse of Red Hat's OLPC team implemented
our NAND Flash driver and is the original author of the JFFS2 file
system, but we'd also like to thank the many people who have
contributed to that project over its life.

Power management: Matthew Garret, a PHD student in BioInformatics at
Cambridge University has been helping with power management, posting
an initial patch for suspend/resume for OLPC and much advice. He is
one of Linux's experts at suspend/resume.

Linux kernel: Our kernel, of course, is maintained by a community of
over a thousand people from all over the world, too innumerable to
name; our immediate thanks to Andy Tannenbaum, who with Minix inspired
Linus Torvalds to start Linux. The response of this community to OLPC
is overwhelming and our thanks to everyone who in their own way has
done their bit to help us.  Dave Jones (Red Hat) is doing great work
finding performance problems in Linux applications and raising
community awareness.

X Window System: The X.org community maintains the window system on
OLPC. The template for rotation support in our driver that Jordan
Crouse implemented for this release comes from work of Eric Anholt and
Keith Packard of Intel, whom we would like to thank for the great work
that they are doing to improve the base driver infrastructure. Daniel
Stone of Nokia has been working on the new input system for X
(Zephaniah Hull has contributed to this work.)  Open Hand's Matchbox
window manager has been the platform upon which we have been
developing our UI.

Cairo graphics: The Cairo Graphics library community started by Carl
Worth and Keith Packard has been rapidly improving its performance,
which forms the basis of the increasingly high quality of graphics on
our system.

GTK+ and Pango libraries: These form the GUI toolkit and
internationalization foundation, Behdad Esfahbod (Red Hat) has helped
greatly in our internationalization support as well as performance of
Pango and Cairo.

Python: The Python community lead by Guido Van Rossum provides the
language we use in Sugar, our user interface. They have already
started performance work that should appear immediately in our builds
after the B2 build.

Sugar: Red Hat's Marco Presenti Gritti has been the lead designer and
implementor of Sugar, our UI. Pentagram's Lisa Strausfeld, Christian
Marc Schmidt, and Takaaki Okada and OLPC's Eben Eliason and Walter
Bender have worked on the user interface and graphics design, the
"look and feel" of our system.

Camera: A new camera application written by Erik Blankinship and
Bakhtiar Mikhak of Media Mods replaces our quick and dirty video demo
on the B1 build. Eben Eliason, Dan Williams, and  John Palmieri all
contributed to this effort.

Abiword: A new version of Abiword is in this release, which should be
able to handle complex writing scripts much better; this will also
form the input applet for our journal application, when it is ready.

xBook: Manusheel Gupta, Tomeu Vizoso, and Marco Gritti tuned up the
PDF viewer for the new build.

Etoys: The Squeak Etoys development is now so well integrated with
OLPC release engineering that it "just happens"; there are numerous
improvements, too many to note here.

Web Browser: Our web browser is based on the Gecko rendering engine of
the Firefox project.  Our display, being significantly higher
resolution than conventional displays is presenting difficulties; but
the the Firefox community is hard at work on a new version which will
improve this situation at some point in the future.  A new reflow
engine should also greatly improve performance in a future version of
our system.

Bug reporting: Often overlooked is the work that people do to record
bugs so that we can fix them. More and more are from users of our
systems, rather than those directly developing the software.

Network testing: James Cameron has been an immense aid at early
testing of the OLPC system in radio quiet areas (he lives in the
Australian outback).  Two of our machines have been able to talk to
each other over 1.3km apart.

Infrastructure: It is easy to overlook the importance of
infrastructure work that people do. Reynaldo Verdejo's work is
essential to the tinderbox we use for performance. The Mozilla
organization originally developed the first tinderboxes for automated
build and performance regression testing.

Performance: Other often unsung heroes include those who work on
performance, only some of which has started to land in our builds.
Johan Dahlin wrote (http://blogs.gnome.org/view/johan/2007/01/18/0) a
Python-launcher prototype this week that cuts a full second of "import
GTK." This translates into at least one second off every activity
startup. Chris Ball also worked with Tomeu Vizoso, Adam Jackson (Red
Hat), and Dan Williams (Red Hat) on the activity launch notification
speedup. They have done numerous sysprof traces and benchmarking, and
found the right combination of MMX functions to use; our X performance
is much higher now as a result.

Release Engineering: At the inevitable danger of overlooking someone
(our apologies), we would like to to thank those directly contributing
to the release engineering of this software, including Chris Ball,
Walter Bender, Chris Blizzard (Red Hat), Mitch Bradley, Javier Cardona
(Cozybit), Ronak Chokshi (Marvell), Jordan Crouse (AMD), Eben Eliason,
Jim Gettys, Marco Presenti Gritti (Red Hat), Zephaniah Hull, Adam
Jackson (Red Hat),  Vance Ke (Quanta), Ivan Krstić, Ted Juan (Quanta),
Aswath Mohan (Marvell), John Palmieri (Red Hat), Andres Salomon,
Richard Smith, Marcelo Tosatti (Red Hat), Lilian Walter, Bruce Wang
(Marvell), Dan Williams (Red Hat), and David Woodhouse (Red Hat).

-walter
-- 
Walter Bender
One Laptop per Child
http://laptop.org


More information about the Community-news mailing list