How to install NetBSD 2.0.2 on an NEC MobilePro 780
From NetBSD Wiki
Contents |
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:
- http://www.netbsd.org/Ports/hpcmips/install.txt - Building a Filesystem on a Compact Flash Card
- http://netbsd.org/Ports/hpcmips/ - NetBSD/hpcmips
- http://netbsd.org/Documentation/ - NetBSD documentation
