99 lines
3.4 KiB
Plaintext
99 lines
3.4 KiB
Plaintext
OLPC XO Laptops
|
|
===============
|
|
|
|
This document explains how to build and run images that run on the OLPC
|
|
XO laptops.
|
|
|
|
Supported models
|
|
----------------
|
|
|
|
* OLPC XO-1
|
|
The original NS Geode based OLPC laptop, uses the x86 architecture.
|
|
Can be booted either from an internal MTD device formatted with JFFS2
|
|
or from a FAT or EXT4 partition on a SD card or a USB flash stick.
|
|
|
|
* OLPC XO-7.5
|
|
The ARM-based laptop. Needs a recent enough firmware to provide a good
|
|
enough flattened device tree to the kernel. Can be from a FAT or EXT4
|
|
partition on a internal eMMC, a SD card or a USB flash stick.
|
|
|
|
Configure and build
|
|
===================
|
|
|
|
$ make olpc_xo1_defconfig # Configure for XO-1
|
|
|
|
or:
|
|
|
|
$ make olpc_xo175_defconfig # Configure for XO-1.75
|
|
|
|
Then:
|
|
|
|
$ make menuconfig # Customize the build configuration
|
|
$ make # Build
|
|
|
|
Preparing the machine
|
|
=====================
|
|
|
|
Firmware security
|
|
-----------------
|
|
|
|
Most OLPC machines were shipped with the security system that disallows
|
|
booting unsigned software. If this is the case with your machine, in order
|
|
to run the image you've built on it you'll need to get a developer key and
|
|
deactivate the security system.
|
|
|
|
The procedure is descriped in the OLPC wiki:
|
|
http://wiki.laptop.org/go/Activation_and_Developer_Keys
|
|
|
|
Firmware upgrade
|
|
----------------
|
|
|
|
It is always preferrable to use an up to date firmware. The firmware images
|
|
are available at http://wiki.laptop.org/go/Firmware. For the XO-1.75 laptop
|
|
to boot the mainline kernel a firmware Q4E00JA or newer is needed. You can
|
|
get it at http://dev.laptop.org/~quozl/q4e00ja.rom.
|
|
|
|
To update the firmware, place the .rom file on to your bootable media,
|
|
connect a charged battery pack and a wall adapter, and enter the Open
|
|
Firmware prompt by pressing ESC during the early boot (needs an unlocked
|
|
laptop -- see "Firmware security" above). Then use the "flash" command
|
|
to update the firmware:
|
|
|
|
ok flash ext:\q4e00ja.rom \ Flash the "q4e00ja.rom" from the SD card
|
|
ok flash u:\q4e00ja.rom \ Flash the "q4e00ja.rom" from USB stick
|
|
|
|
Create the bootable SD card or USB flash stick
|
|
==============================================
|
|
|
|
When the build is finished, an image file called "sdcard.img" will be created.
|
|
It is suitable for writing directly to a SD card, USB flash stick or (on a
|
|
XO-1.75) the internal eMMC flash.
|
|
|
|
Before writing the image, please double check that you're using the right
|
|
device (e.g. with "lsblk" command). Doing the following will DESTROY ALL DATA
|
|
that's currently on the media.
|
|
|
|
# cat output/images/sdcard.img >/dev/<device>
|
|
|
|
Flashing the JFFS2 image (XO-1 only)
|
|
====================================
|
|
|
|
Unlike XO-1.75, the internal NAND flash on XO-1 is accessed without a
|
|
FTL and needs a flash-friendly filesystem. A build configured for XO-1
|
|
creates a file named "root.jffs2" that can be written to it.
|
|
|
|
One way to write it is from the Open Firmware prompt. First, partition
|
|
and format a USB flash disk with a FAT file system and place the
|
|
"root.jffs2" file onto it. Then power on the machine, enter the
|
|
Open Firmware port by pressing the ESC key and run the following:
|
|
|
|
ok patch noop ?open-crcs copy-nand \ Disable CRC check
|
|
ok copy-nand u:\root.jffs2
|
|
|
|
Booting the machine
|
|
===================
|
|
|
|
Once your machine is unlocked, it will automatically boot from your media
|
|
wherever it will detect it attached to the USB bus or the SD card slot,
|
|
otherwise it will proceed booting from the internal flash.
|