Firmware/Building

From OLPC
< Firmware
Revision as of 02:11, 13 September 2013 by Quozl (talk | contribs) (→‎XO-1.75)
Jump to navigation Jump to search

Recipes for building Open Firmware for the OLPC XO.

Fedora - native self-hosting

Building on the hardware, or the same architecture, on which Open Firmware will be run.

Warning: we have experienced bricks as a result of compiler changes, the most recent being the switch from Fedora 11 to Fedora 14 on ARM. A brick test is when the build is checked on a laptop that can be easily debricked. We may mark recipes that are brick tested.

XO-1

How to build Open Firmware for an XO-1, on an XO-1:

  • start with OLPC OS 13.2.0 build 8,
yum install -y gcc git svn make glibc-static iasl
svn checkout -q svn://openfirmware.info/openfirmware
(cd openfirmware/cpu/x86/pc/olpc/build; make olpc.rom)
  • brick tested.

XO-1.75

How to build Open Firmware for an XO-1.75, on an XO-1.75:

yum install -y gcc git svn make glibc-static wget
svn checkout -q svn://openfirmware.info/openfirmware
(cd openfirmware/cpu/arm/olpc/1.75/build; make olpc.rom)
  • brick tested on 2013-09-13 with svn 3703 using 32013o2.zd,
  • brick tested on each release, as this is the basis of the configuration used for building the release, although an XO-4 is used as the builder rather than XO-1.75,

XO-4

How to build Open Firmware for an XO-4, on an XO-4:

  • start with OLPC OS 13.2.0 build 8,
yum install -y gcc git svn make glibc-static wget
svn checkout -q svn://openfirmware.info/openfirmware
(cd openfirmware/cpu/arm/olpc/4.0/build; make olpc.rom)
  • brick tested on each release, as this is the basis of the configuration used for building the release,

Ubuntu

An XO-1.5 build using an Ubuntu 13.04 Raring chroot:

apt-get install debootstrap schroot
debootstrap --arch i386 raring raring-i386 http://archive.ubuntu.com/ubuntu
cp -p /etc/apt/apt.conf raring-i386/etc/apt/      # for universe, security, etc
cp -p /etc/apt/sources.list raring-i386/etc/apt/  # for proxy settings
cp -p /etc/environment raring-i386/etc/           # for proxy and locale settings
cp -p /etc/sudoers raring-i386/etc/               # for %admin on Ubuntu
ln -s /proc/mounts raring-i386/etc/mtab
cat << EOF > /etc/schroot/chroot.d/raring-i386
[raring-i386]
directory=/home/james/ephemeral.iso/raring-i386
type=directory
personality=linux32
groups=users,admin
EOF
schroot -c raring-i386
apt-get update
apt-get install git subversion gcc patch make wget iasl
svn checkout -q svn://openfirmware.info/openfirmware
(cd openfirmware/cpu/x86/pc/olpc/via/build; make olpc.rom)
  • brick tested with q3c15,