ChorusOS 5.0 Installation Guide

Booting the MCP750/74x0 Target System from Flash Using bootMonitor

  1. Configure the ChorusOS system image to be downloaded by bootMonitor:

    1. Set the LOADER to bmon:


      $ configurator -set LOADER=bmon
      $ make chorus
      

      The resulting system image file is located in the build directory, build_dir, and is called chorus.RAM.bmon.


      Note -

      You can also make a smaller system image that includes only the operating system microkernel:


      $ make kernonly
      

  2. Place the bootMonitor image on the boot server.

    See Chapter 5, Setting Up a Boot Server, for instructions on how to configure the boot server.

    1. Copy the system image to the boot server. For example, on a Solaris host workstation:


      $ rcp chorus.RAM.bmon boot_server:/tftpboot/sytem_image_name
      
    2. Verify that at least read permissions are available for the system image on the boot server. For example:


      $ rlogin boot_server
      Password: password_for_user
      $ ls -l /tftpboot/chorus.RAM.bmon
      -rwxr-xr-x   1 user    group     1613824 Dec 15 17:33 chorus.RAM.bmon*
    3. While logged in to the boot server, create a configuration file for the target.

      For a target system with IP address 129.157.173.199 using a boot server with IP address 129.157.173.144, the configuration file contains the following:

      AUTOBOOT=YES
             BOOTFILE=chorus.RAM.bmon
             BOOTSERVER=129.157.173.144

      The configuration file is named /tftpboot/819DADC7.ChorusOS.5.0, which is constructed from the target system IP address 129.157.173.199 as a concatenation of the following:

      • 129 in decimal translates to 81 in hexadecimal

      • 157 in decimal translates to 9D in hexadecimal

      • 173 in decimal translates to AD in hexadecimal

      • 199 in decimal translates to C7 in hexadecimal

      • (optional) A .ChorusOS.5.0 extension identifies the release, and is appended to the concatenation of the IP address expressed in hexadecimal.


      Note -

      The system first attempts to find the configuration file with the .ChorusOS.5.0 extension. If no such file exists, the system attempts to find a configuration file without the .ChorusOS.5.0 extension.


  3. Create a bootMonitor image.

    See the bootMonitor(1M) man page for details about how bootMonitor works.

    1. Create a build directory where you will build a bootMonitor image:


      $ mkdir bootmon
      $ cd bootmon
      

      Not that this build directory is different from the directory where you build system images.

    2. Configure the bootmon directory:


      $ configure -b $DIR/kernel \ 
      -s $DIR/src/nucleus/bsp \ 
      $DIR/src/nucleus/bsp/powerpc/mcp7xx 
      
    3. Generate the build environment:


      $ make
      
    4. Edit the special /conf/mini profile in the bootmon directory so that it reads:

      #
             # Mini Profile
             #
             # Microkernel features
             #
             -set USER_MODE=false
             -set POSIX_SHM=false
             -set VIRTUAL_ADDRESS_SPACE=false
             -set SEM=false
             -set EVENT=false
             -set MONITOR=false
             -set TIMER=false
             -set DATE=false
             -set RTC=false
             -set PERF=false
             -set IPC=false
             -set MIPC=false
             -set LAPBIND=true # must be 'true'
             -set LAPSAFE=true # must be 'true'
             -set MON=false
             -set LOG=false
             -set DEBUG_SYSTEM=false
             -set SOLARIS_SYSEVENT=false

      Note -

      This is file is slightly different from the default mini file.


    5. Configure the build environment for bootMonitor:


      $ configurator -p conf/mini
      $ configurator -set BOOT_MODE=ROM
      $ configurator -set LOADER=ppc1-bug
      $ configurator -setenv BOOTCONF=RARP
      

      Note -

      For details about the BOOTCONF environment variable and available options, see the bootConfig(1M) and bootAgent(1M) man pages.


    6. Build a bootMonitor image:


      $ make bootMonitor
      

The resulting image file is located in the build directory, bootmon and is called bootMonitor.ROM.