Contents

  1. Preparation
  2. Installation
    1. Partitioning
    2. Cancelling the Installation
    3. Mounting the new filesystem
  3. Cross-compiling the new Kernel
  4. Copying the new Kernel
  5. Extracting Sets
  6. Rebooting
  7. Booting into Sysinst
  8. Making Device Nodes
  9. Editing fstab
  10. Editing rc.conf
  11. Copying the new Kernel
  12. Rebooting to Windows CE
  13. Booting into NetBSD

Note: try the regular old 2.0.2 sysinst first, before following this howto. If you experience any strange errors or panics during the install process while partitioning the CF card, fetching the sets, or untarring the sets, try this howto. Another note: I've heard some people who used to have these errors have not received them when installing NetBSD 2.1. I'm gonna wait until 3.0 to do a fresh install, so we'll see how that goes in a few weeks.

Preparation

You're going to need to boot the 1.6.2 sysinst in order to partition the Compact Flash card and untar the sets, so fetch the 1.6.2 pbsdboot.exe and gunzipped sysinst kernel (netbsd.gz) from ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6.2/hpcmips/installation/. You'll also need the same two files from 2.0.2, so get them from ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/hpcmips/installation/. Place the 1.6.2 and 2.0.2 files in separate directories on the CF card, unless you want to name them pbsdboot-1.6.2.exe, netbsd-1.6.2.gz, etc.

Installation

Now that the CF card is all set to boot sysinst, place it in the MobilePro (if it isn't there already) and run the 1.6.2 copy of pbsdboot.exe. This is pretty straightforward, just make sure you select the 1.6.2 kernel to boot and set the hardware type as MobilePro 780. The path to the 1.6.2 sysinst kernel on my CF card is \Storage Card2\1.6.2\netbsd-SYSINST.gz. Keep in mind booting sysinst will effectively wipe out your Windows CE installation and all your settings.

Partitioning

Once sysinst is up and running, go through the install process normally, making sure to select "use only part of the disk", and keeping at least 10MB for the MSDOS partition at the beginning of the CF card. You can partition to rest to NetBSD, and it won't wipe out what you already have on the MSDOS part of the card (the two copies of pbsdboot.exe and netbsd.gz).

Cancelling the Installation

Once sysinst does newfs on the new partitions, and asks you where you want it to fetch the sets, cancel the installation and return to the initial sysinst menu. Configure the network from the utility menu if you're going to use it (usually to fetch the sets) and then run /bin/sh in the menu.

Mounting the new filesystem

Mount the new filesystem (usually /dev/wd0a) on /mnt by issuing the command

# mount /dev/wd0a /mnt 

(simple enough, eh?).

Cross-compiling the new Kernel

Cross-compile the kernel and userland on another NetBSD box, after patching the source tree with the patch found at

in case that ever goes down it is mirrorated at:

Everything regarding the patch is covered on the NetBSD mailing lists. You can read the thread if you search the mailing lists for trouble installing NetBSD 2.0 on NEC MobilePro 780. Cross-compiling is a pretty simple procedure if you follow the instructions at

Copying the new Kernel

Place the cross-compiled sets and kernel in the /mnt directory of the CF card (provided you've mounted /dev/wd0a on /mnt).

Extracting Sets

Untar the sets you wish to install with

# tar pxzvf set.tgz 

(the p flag maintains file permissions, I found this out the hard way :P). This will probably take a while.

Rebooting

Once that's done, run

# shutdown -p now

and boot Windows CE by pressing the reset buttton on the bottom of the MobilePro (you can reach it with the stylus). A nice hint is to hold down shift while Windows CE boots so you don't have to go through the initial touchscreen calibration and other equally annoying setup routines.

Booting into Sysinst

Run the 2.0.2 copy of pbsdboot.exe and make sure you select the 2.0.2 sysinst kernel to boot (path to mine: \Storage Card2\2.0.2\netbsd-SYSINST.gz).

Making Device Nodes

Once 2.0.2 sysinst is booted, run /bin/sh from the utility menu, and

# mount /dev/wd0a on /mnt 

with the same command as before. Go to /mnt/dev and run

# sh ./MAKEDEV all 

to make device nodes.

Editing fstab

Edit /mnt/etc/fstab to your liking. Mine looks like this:

/dev/wd0a / ffs rw,noatime,nodevmtime 1 1
/dev/wd0b none swap sw 0 0
/dev/wd0f /wince msdos rw 1 2
kernfs /kern kernfs rw
procfs /proc procfs rw,noauto
lordnikon:/home/brain/mobilepro/pkgsrc /usr/pkgsrc nfs rw,soft,intr,noauto 0 0
lordnikon:/home/brain/mobilepro/swap none swap sw,nfsmntpt=/swap,noauto 0 0

Editing rc.conf

Edit /mnt/etc/rc.conf, and make sure you change

rc_configured=NO 

to

rc_configured=YES

or else your system will boot into single user mode.

Copying the new Kernel

Copy the new kernel (/mnt/netbsd) to the MSDOS partition of the CF card, so you can boot it with pbsdboot.exe.

Rebooting to Windows CE

Run

# umount /mnt

and

# umount /mnt2

if you have anything mounted there, and shutdown. Use the reset button on the bottom of the MobilePro again to boot into Windows CE.

Booting into NetBSD

Run the 2.0.2 copy of pbsdboot.exe and select the kernel you copied to the MSDOS partition (path to mine: \Storage Card2\2.0.2\netbsd).

You're done!

Other resources:

Add a comment