File:  [NetBSD Developer Wiki] / wikisrc / tutorials / how_to_install_netbsd_on_hpcsh.mdwn
Revision 1.2: download - view: text, annotated - select for diffs
Sun Feb 5 07:14:36 2012 UTC (2 years, 2 months ago) by schmonz
Branches: MAIN
CVS tags: HEAD
dos2unix

This how-to describes how to install NetBSD/hpcsh on a Jornada 620LX. We will be using a 2 GB compact flash card and no swap.

The following is a basic recollection of the steps required to wrangle NetBSD 4.99.69 onto my 75MHz, 16MB/RAM HP Jornada 620LX. I know of at least one other 620LX with NetBSD on it, but that was 1.6; Most of the directions I found with regards to putting NetBSD on a Jornada were with the 720+ lines, which host a 200+MHz StrongARM CPU as well as 32-64+MB RAM.

Also, not having a serial cable for this (somewhat) rare Jornada I did the entire install through the in-ROM Windows CE and a CF Disk.

**Contents**

[[!toc]]

#List of things necessary for this install

* An x86 machine capable of running NetBSD
* Your Jornada 620LX
* A ~>1GB CF Disk
* A CF Disk reader for x86 machine 

#The process over-simplified

1. Install NetBSD on x86 and bring it up to -current
2. Build tools/kernel/release for HPCSH on the x86 machine
3. Partition (fdisk) & DiskLabel CF Disk
4. Unpack release onto CF Disk
5. Boot Jornada into CE and run HPCBoot.exe from CF Disk
6. Enjoy NetBSD 

#The REAL breakdown

* Install onto a spare x86 machine, I'm not going to hand-hold through this install, as a basic install is perfectly fine.
* In /usr/src, build the HPCSH(-3) tools: 

    $ cd /usr/src/ && ./build.sh -u -m hpcsh tools

* Build the HPCSH(-3) kernel: 

    $ ./build.sh -u -m hpcsh kernel=GENERIC

* Build the HPCSH(-3) release: 

    $ ./build.sh -u -m hpcsh -U release

* NOTE: on building release I had it fail multiple times because I had not cleared out my /usr/src/../obj/* and my /usr/src/../tools/* and then rebuilt my tools for x86 after moving to -current.
* Attach the CFDisk to the NetBSD machine. Partition it into two partitions (I used a 2GB card and partitioned into 24MB and a 1.9GB).
* You can get away with using as little as a few MB, but I figured better safe than sorry with the extra space the 2GB card allots me.
* Note: Delete all partitions using fdisk before creating/editing these ones! 
<pre><code>
fdisk /dev/sd1
Do you want to change our idea of what BIOS thinks? [n] [enter]
Which partition do you want to change?: [none] 0
sysid: 1
start: 0
size: 24M
bootmenu [enter]
The bootselect code is not installed, do you want to install it now? [n] [enter]
Which partition do you want to change?: [none] 1
sysid: 169
start: (offset of partition 0's sectors)
size: (last sectors)
bootmenu [enter]
The bootselect code is not installed, do you want to install it now? [n] [enter]
Which partition do you want to change?: [none] [enter]
Update the bootcode from /usr/mdec/mbr? [n] [enter]
Should we write new partition table? [n] y
</code></pre>
* Now create filesystems on the two partitions: 

    newfs_msdos sd1e && newfs sd1a (your lettering here may differ)

* Mount your filesystems so we can use them: 

    mount -o softdep /dev/sd1a /mnt && mount -o -l /dev/sd1e /mnt2

* Copy your kernel and HPCBoot.exe to the msdos partition: 

    cd /usr/src/obj/releasedir/hpcsh/binary/kernel
    cp netbsd-GENERIC.gz /mnt2/netbsd.gz
    cd ../sets
    mv kern-GENERIC.tgz kern-GENERIC.tar.gz
    mv kern-HPW650PA.tgz kern-HPW650PA.tar.gz
    for tgz in *.tgz; do tar -xpvzf $tgz -C /mnt; done

* This got me booting; however I hadn't set a root password anywhere! So make sure the first time to boot hpcboot.exe with the "single-user" checkbox, then mount / read-write and change the root password: 

    mount -u /
    mount
    /dev/wd0b on / type ffs (noatime, nodevmtime, local)

#References

Original content from <http://dayid.org/os/netbsd/doc/NetBSD-on-HPJornada620LX.html>

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb