Using 'tftplilo' to boot the Debian installation system.

1. Configure the MVME or BVME boot roms see below.

2. Copy the following files to the /tftpboot directory (/boot on debian
   systems).

   For BVME4000/6000: bvme6000/linux         --> /boot/linuxbvme6000
                      bvme6000/root.bin      --> /boot/rootbvme.bin
                      bvme6000/tftplilo.bvme --> /boot/tftplilo.bvme
                      bvme6000/tftplilo.conf --> /boot/tftplilo.conf

   For MVME162:       mvme162/linux          --> /boot/linuxmvme162
                      mvme162/root.bin       --> /boot/rootmvme.bin
                      mvme162/tftplilo.mvme  --> /boot/tftplilo.mvme
                      mvme162/tftplilo.conf  --> /boot/tftplilo.conf

   For MVME166/167:   mvme167/linux          --> /boot/linuxmvme167
                      mvme167/root.bin       --> /boot/rootmvme.bin
                      mvme167/tftplilo.mvme  --> /boot/tftplilo.mvme
                      mvme167/tftplilo.conf  --> /boot/tftplilo.conf

3. Invoke the network boot procedure:

   For BVME enter 'bpg' <return> at the BVMBug prompt.

   For MVME enter 'nbo' <return> at the MVMEBug prompt.

4. The appropriate 'tftplilo' will be loaded and present a list of
   boot configurations.  At the 'LILO Boot:' prompt enter:

   i6000 <return>   to install a BVME4000/6000
   i162 <return>    to install an MVME162
   i167 <return>    to install an MVME166/167

5. Tftplilo will then proceed to load the appropriate kernel and
   initial ramdisk.


If there is no floppy or CD_ROM drive it will be necessary to retrieve
the resc1440, drv1440 and base2_1.tgz files using NFS.

1. Copy the rescue, drivers and base2_1.tgz files to an NFS mountable file
   system.

2. In 'dbootstrap' configure the network as the first step.

3. Select NFS when chosing the installation medium.


To install an NFS root filesystem.

1. Create and export the target root filesystem, the 'tftplilo.conf'
   file provided assumes a directory named
   /nfshome/<client ip address>.

2. In 'dbootstrap' configure the network as the first step.

3. Select 'mount previously initialised partition' then 'NFS' from the
   presented list.

4. Then enter the NFS mount point as <server ip>:/nfshome/<client ip>

5. Install as normal using either floppy disks, CD-ROM or NFS as
   described above.

6. Reboot system.

7. Boot using 'tftplilo' again, selecting one of the following at the
   'LILO Boot:' to complete the installation.

   b6000 <return>   to boot a BVME4000/6000
   b162 <return>    to boot an MVME162
   b167 <return>    to boot an MVME166/167

8. When installation is complete add one of the following to the top
   of 'tftplilo.conf' to disable the installation options for the
   installed system.

   For BVME4000/6000:

   [crate]
   ip     = <ip address of installed system>
   prompt = No
   boot   = b6000


   For MVME162:

   [crate]
   ip     = <ip address of installed system>
   prompt = No
   boot   = b162


   For MVME166/167:

   [crate]
   ip     = <ip address of installed system>
   prompt = No
   boot   = b167


Machine configuration
---------------------

BVME4000/6000
-------------

In order to use TFTPLILO the BVM SBC must be fitted with BVMBug Revision
G or later boot ROMs.

Front panel DIP switch usage:

Switch  Left position  Right position  Function
------  -------------  --------------  --------------------------------
 SW1    disable        enable          VMEbus system controller functions
 SW2    0x00000000     0xE900000000    BVMBug workspace address (64Kb)
 SW3    disable        enable          Map VMEbus into low 256Mb
 SW4    enable         disable         Autoboot

New to BVMBug revision G is the ability to choose which area of RAM to
use for its local workspace. Previous revisions always used the
onboard SRAM at address E9000000. With revision G, the front panel DIP
switch 2 is used to select between address E9000000 (SRAM) when
switched to the right and address 00000000 (DRAM) when switched to the
left. If TFTPLILO is configured to call BVMBug just before calling the
Linux kernel (calldbg = Yes) then the DIP switch should be set to use
the SRAM at address E9000000 because the linux kernel will have been
moved to the bottom area of memory overwriting what would have been
BVMBug's workspace.

Flip the lower front panel DIP switch 4 to the right to cause the
BVMBug prompt to be displayed at reset. Using the BVMBug 'rc'
(reconfigure command) the machines network boot parameters can be
configured. When done flip DIP switch 4 back to the left to cause
BVMBug to auto boot.


BVME4000/6000 Generic Bootstrap - Revision G
Copyright (c) 1997-1998 BVM Ltd.

tcr:0000          dttn:F00FA040 00000000                ittn:00000000 00000000
vbr:E9000000 sfc:0 dfc:0   cacr:00000000       urp:00000000       srp:00000000
dn: 00000000 00000000  00000000 00000000  00000000 00000000  00000000 00000000
an: 00000000 00000000  00000000 00000000  00000000 00000000  E9000400 E900F800
pc: E800052C  sr:2700 (--S--7-----)t:OFF                 usp:E900F000  ^ssp^
0xE800052C          >2C7C00000000         movea.l #0,a6
BVMBug: rc

SYSTEM RECONFIGURATION

VMEbus snooping is enabled, LANC snooping is enabled
VME A16 slave address window is disabled
VME A24 slave address window is disabled
VME A32 slave address window is disabled
IP IRQ's: A0=1 A1=1 B0=1 B1=1 C0=1 C1=1 D0=1 D1=1 E0=1 E1=1 F0=1 F1=1
IPA is slow/async, IPB is slow/async, IP exp is slow/async
The boot ROM baud rate is 115200
The initiator SCSI ID is 7
The Ethernet Address is 00:80:FB:02:04:65
Internet address is determined using BOOTP
Server address is determined using BOOTP
Gateway address is determined using BOOTP
Subnet mask is 128.0.0.0
Default net boot file load address is 0x00000000
Net boot file name is "bootfile"
Boot argument string is ""
The current boot order is : Disk on ID 2

Set default values? (y/n/q/f) : n
Reconfigure the ethernet address? (y/n/q/f/b) : n
Reconfigure the snoop control? (y/n/q/f/b) : n
Reconfigure the slave addressing? (y/n/q/f/b) : n
Reconfigure the IP IRQ levels? (y/n/q/f/b) : n
Reconfigure the IP modes? (y/n/q/f/b) : n
Reconfigure the baud rate? (y/n/q/f/b) : n
Reconfigure the initiator SCSI ID? (y/n/q/f/b) : n
Reconfigure net boot parameters? (y/n/q/f/b) : y

Internet address is determined using BOOTP
Server address is determined using BOOTP
Gateway address is determined using BOOTP
Subnet mask is 0.0.0.0
Default net boot file load address is 0x00000000
Net boot file name is "bootfile"

Internet address    :  (n.n.n.n or 0 to use bootp) : 192.168.1.3
TFTP server address :  (n.n.n.n or 0 to use bootp) : 0
Gateway address     :  (n.n.n.n or 0 to use bootp) : 0
Number of subnet mask bits (0-31) : 24
Enter default net boot file load address (hex) : 10000
Net boot file name ("NULL" for none) : tftplilo.bvme

Reconfigure boot file arguments? (y/n/q/f/b) : y

Boot argument string is ""

Boot arguments ("NULL" for none) : tftplilo.conf

Reconfigure the boot devices? (y/n/q/f/b) : y
The current boot order is : Disk on ID 2

Available boot drivers:
 1. BOOTP/TFTP
 2. SCSI CD-ROM, Hard or Floppy Disk

The order you specify these boot drivers determines the order
in which they will be tried when the system is configured to boot
automatically. Each driver is selected with a 1 or 2 digit code,
the first digit represents the boot driver number as listed above,
and the second the SCSI device ID where applicable

Enter the numbers of the boot drivers in the order that you want
them prioritised: 1


VMEbus snooping is enabled, LANC snooping is enabled
VME A16 slave address window is disabled
VME A24 slave address window is disabled
VME A32 slave address window is disabled
IP IRQ's: A0=1 A1=1 B0=1 B1=1 C0=1 C1=1 D0=1 D1=1 E0=1 E1=1 F0=1 F1=1
IPA is slow/async, IPB is slow/async, IP exp is slow/async
The boot ROM baud rate is 115200
The initiator SCSI ID is 7
The Ethernet Address is 00:80:FB:02:04:65
Internet address is 192.168.1.3
Server address is determined using BOOTP
Gateway address is not used
Subnet mask is 255.255.255.0
Default net boot file load address is 0x00010000
Net boot file name is "tftplilo.bvme"
Boot argument string is "tftplilo.conf"
The current boot order is : BOOTP/TFTP

Is this the configuration you want? (y/n/b/q) : y

Notes:

1. TFTPLILO will always load at address 0x00010000 regardless of the
   "Default net boot file load address" configuration.

2. TFTPLILO uses the "Boot argument string" as its configuration file
   name. If not set it will use the compiled in default value. Boards
   earlier than revision F cannot configure this parameter (there is not
   enough non-volatile storage) and will always use the compiled in
   default (tftplilo.conf).

3. Boards earlier than revision F cannot configure the net boot file
   name (not enough non-volatile storage) and have a hard coded name
   string of "bootfile". Space is reserved in the BVMBug prom image at
   address 0xE8000410 to patch an alternative name (up to 64 bytes
   including null terminator) if you have the facility to copy and
   reprogram the proms. If not the "tftplilo.bvme" file must be
   renamed to "bootfile" or BVMBug must be configured to use the BOOTP
   protocol in which case it will use the bootfile name returned from
   the BOOTP server.

4. BVMBug only uses the BOOTP protocol if either the client or the
   server's IP address is set to zero, or on a revision F or later
   board the net bootfile name is not set. The gateway address is set
   from the BOOTP response only if both it and the server IP address
   are set to zero.  The subnet mask is set from the BOOTP response
   only if it is non zero and the client IP address is zero. When
   transfering the data from the TFTP server the gateway address is
   used only if it is non-zero and the client and server addresses are
   on different subnets.


MVME16x
-------

To reconfigure the MVME network boot parameters use the 'niot' command.


167-Bug>niot
Controller LUN =00? 0
Device LUN     =00? 0
Node Control Memory Address =FFE10000?
Client IP Address      =0.0.0.0? 192.168.1.4
Server IP Address      =0.0.0.0? 192.168.1.1
Subnet IP Address Mask =0.0.0.0? 255.255.255.0
Broadcast IP Address   =0.0.0.0? 192.168.1.255
Gateway IP Address     =0.0.0.0?
Boot File Name ("NULL" for None)     =? tftplilo.mvme
Argument File Name ("NULL" for None) =? tftplilo.conf
Boot File Load Address         =00000000? 10000
Boot File Execution Address    =00000000? 10000
Boot File Execution Delay      =00000000?
Boot File Length               =00000000?
Boot File Byte Offset          =00000000?
BOOTP/RARP Request Retry       =00?
TFTP/ARP Request Retry         =00?
Trace Character Buffer Address =00000000?
BOOTP/RARP Request Control: Always/When-Needed (A/W)=W? w
BOOTP/RARP Reply Update Control: Yes/No (Y/N)       =Y?

Update Non-Volatile RAM (Y/N)? y
167-Bug>

Notes:

1. TFTPLILO will always load at the address specified by the "Boot File
   Load Address" configuration. This should always be set to 0x00010000
   and the "Boot File Execution Address" should always match.

2. TFTPLILO uses the "Argument File Name" string as its configuration file
   name. If not set it will use the compiled in default value (tftpilo.conf).


Nick Holgate <holgate@debian.org>