NetBSD/mipsco: Installation Notes

This document is still in the early stages of construction, and will eventually be replaced once a INSTALL manpage has been written

Supported Hardware

The following devices are currently supported on the Mips Magnum 3000 workstation

  • Onboard NCR 53c94 SCSI Controller
  • Onboard AM7990 Lance Ethernet controller
  • Onboard Z8530 Serial Ports 0 and 1

The following devices are not currently supported:

  • ISA Expansion Bus
  • Intel 82072 Floppy Disk controller
  • Framebuffer (both mono and colour)
  • PS/2 Keyboard Controller

Getting Started

Currently you can only bootstrap the NetBSD kernel from a RISC/os disk partition or across the network using bootp.

The NetBSD partition has to be created on another big-endian machine such as NetBSD/sparc or NetBSD/newsmips

Work is underway to simplify the installation procedure with a miniroot filesystem and a pre-built snapshot that will allow you to partition your disks and install NetBSD directly.

Firstly obtain a copy of the most recent kernel from

Booting From a RISC/os disk partition

If you have a running version of RISC/os installed on your machine it is by far the easiest method to boot the kernel.

You can simply copy across the netbsd kernel file into / of the RISC/os operating system, shutdown and boot the new kernel using:

boot dksd(,,0)/netbsd

This procedure will initially load the stand alone shell (SASH) from dksd(,,8)sash then load the NetBSD kernel.

Network boot using bootp and tftp

The Mips PROM firmware has a number of restrictions with its bootp protocol:

  • The machines IP address is not determined using bootp - it must be setup in 'netaddr' in the prom environment
  • The broadcast address used is strict a Class A B or C netmask based on the netaddr setting
  • The broadcast address used is the all-zero's variant of the broadcast address. Some OS's don't accept this address by default and you must specify it in the ifconfig args.

With above restrictions in mind please refer to the Diskless NetBSD HOW-TO  for details on setting up a bootp and tftp daemon.

The easiest way of determining the Ethernet MAC address is to snoop the network using tcpdump -e.

Once you have a server setup with bootpd and tftpd running you can boot the kernel from the firmware using the following commands in bold

Rx3230 MIPS Monitor: Version 5.43 OPT Mon May 13 17:31:12
PDT 1991 root
Memory size: 33554432 (0x2000000) bytes, 32 MB
Icache size: 32768 (0x8000) bytes
Dcache size: 32768 (0x8000) bytes
>> setenv bootfile bootp()netbsd
>> setenv netaddr
>> boot
Obtaining netbsd from server
1026032+501367+124032 entry: 0x80021000
Copyright (c) 1996, 1997, 1998, 1999, 2000
    The NetBSD Foundation, Inc.  All rights
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California. 
All rights reserved.

Setting up a NetBSD Filesystem

One you have successfully booted the NetBSD/mipsco kernel you will need to setup a filesystem with the rest of the distribution.

  1. On a Big Endian NetBSD machine, label a disk and create a suitable filesystem. The reason why you currently need a big endian machine is the disklabel values are stored in host byte order. This needs to be the same byte order as the MIPS R3000 native format. This procedure is known to work from NetBSD/sparc which places a disklabel at offset 0x80 on the first disk sector.
  2. Download and untar the NetBSD distribution files onto the root of the new filesystem. You can download a binary snapshot from the NetBSD/mipsco snapshot area of the ftp server.
  3. Change into <rootdir>/dev and run ./MAKEDEV all to create the default device nodes.
  4. Change into <rootdir>/etc and configure rc.conf and other startup files by hand.
  5. Unmount the disk and connect the drive to the Mips machine
  6. Boot the kernel using bootp or off the RISC/os disk partition. When prompted for the root device answer with the device name for the root filesystem disk you just created.

Back to NetBSD/mipsco Port Page