Linux on a HP Jornada 720

filip

2006-11-04 14:54:08 Edytuj

Yes, one can run linux kernel and arm userspace on a Jornada 720 :). This is a short description of things one needs to do:
  1. Get a CF card

    Size depends on your needs. If you just want to play with it, you could even play with a 4MB card. I use a 1GB PQI 100x CF card.

  2. Partition it

    Jornada 720 has its operating system stored on ROM memory, so it cannot be overwritten permanently. Fortunately there is a straightforward way to make it overwrite itself in RAM with linux image :) (BEWARE: this will evaporate all your data on the handheld!). But to do that it needs to read the image first. So we will need at least a FAT partition on the CF card. I prefer to have a small (10MB) FAT16 (type 6) partition for booting and Linux partition (type 83) for userspace storage:

    cacko ~ # fdisk -l /dev/sdb
    
    Disk /dev/sdb: 1039 MB, 1039933440 bytes
    32 heads, 63 sectors/track, 1007 cylinders
    Units = cylinders of 2016 * 512 = 1032192 bytes
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1               1          11       11056+   6  FAT16
    /dev/sdb2              12        1007     1003968   83  Linux
    cacko ~ # 
    
    
    If you are desperate, you may build your userspace on a FAT16 filesystem :). I do the partitioning from my laptop with attached universal USB card reader. Kernel allocated sdb device for the card. It depends on you previous scsi layer devices and reader type (check dmesg command output to determine device name).

  3. Make filesystems

    Use mkdosfs and/or mkfs.ext2 commands to create filesystems. Do not use journaling filesystem (ext3/xfs/reiser etc) for userspace partition. Journal updating will kill your flash card pretty soon. Journalling Flash File System (JFFS) is unfortunately useless for us, because it operates on memory-mapped flash chips, not ones accessible through block device nodes in Linux.

  4. Copy kernel image and bootloader onto a FAT partition

    You will need a kernel, bootloader and bootloader config file. Put them on a FAT16 filesystem without any subdirectories. Don't rename bootloader config file, because boot.exe is looking for it under this name. This file is a regular dos (CRLF line endings) text file. First line contains kernel filename (absolute path, may be other than Storage Cardkernel if you have some weird language pack on your Jornada), second points to initrd filename (we don't need initrd with 2.6 kernel, so we leave it empty - 2.4 used userspace utilities for PCMCIA initialization), and third contains kernel parameters. CF card is hda, because on a jornada it works in pcmcia-ide mode (CF is electrically PCMCIA in this case). If you use your first FAT16 partition as the root filesystem, change hda2 to hda1.

  5. Build your userspace

    You will need some userspace stuff. You can use Jlime's experimental donkey bootstrap image. Just unpack it onto your root filesystem:

    tar -C /where/you/mounted/userspace/fs -jxf bootstrap-image-Donkey-jornada7xx.rootfs.tar.bz2
    

  6. Launch it!

    Go to "My Handheld PC" on your Jornada, then "Storage Card" and run boot.exe. Everything will freeze for a while (writing kernel to memory), and then kernel should start booting. Enjoy :).

Watch Jlime project homepage, we should release an user friendly version of GNU/Linux for a Jornada soon :). I am responsible for 2.6 kernel branch development in this project.

Notka dodana do: jornada .

Komentowana 0 raz(y)

Zostaw komentarz

Wymagane

Dozwolone tagi XHTML:
<a> <b> <i> <u> <tt> <code> <pre> <blockquote> <ul> <ol> <li> <acronym>

Link do trackbackowania  |  Śledź tę notkę (RSS)

Kategorie

Blogroll  |  Edytuj

Linki  |  Edytuj

Feeds