Ixp Installation Procedure

(This report was prepared by IIT Bombay after sucessfully completing the IXP Installation. For any help, please send email to Professor S S S P Rao and a copy to D Sivakumar)

It is advised to go through manuals given before proceeding.

There are various methods for installing IXP and make it work depending on various hardware configurations. This document explains how to install IXP and boot linux.

Hardware required

  1. IXP1200 Network Processor with Ethernet Evaluation Platform
  2. Host PC running Windows 2000 / Windows NT 4.0 with service pack 5 or later
  3. Host running Redhat Linux 6.2 or later. To work with Windows Host environment, you can have cygwin installed on NT host and can proceed.

Software required

You can find the software necessary in Intel's IXA SDK 2.0 or Netwinder site. Software required is mentioned at the corresponding sections.

Hardware Installation

  1. Unpack the Evaluation Board and also remove the system box cover.
  2. Install the evaluation board in slot 0 of the backplane (also called the system slot or J4)
  3. There will be serial port to the evaluation board. Connect this to the console port connector of system box using console cable present in the system box.
  4. Giving power supply can be done in two methods: better to refer manual. Check that it might have been already done.
  5. There will be one power supply selection switch between the two power connectors on the rear of system box. Set it to correct value as per your region (Select 230 in India). Use appropriate power cable to give power supply.
  6. At this point you can replace the system box cover unless you want to configure ethernet platform in hardware. (This may not be necessary, if curious refer manual for configuring using hardware).
  7. Connect a serial line cable from the serial line connector on the rear of the system box to a host PC running winNT/win2k.
  8. Connect the network processor evaluation platform and NT host to the network using appropriate cable (connect both to a hub).
  9. Testing Installation

    1. To see messages by IXP, you have to use console or hyperterminal. you can do this by opening hyperterminal in host PC by clicking Start> Programs > Accessories > Communications > Hyperterminal.
    2. Select appropriate serial port COM1/COM2 based on your connections.
    3. Set the console to 9600 baud, 8 databits, 1 stop bit, no parity and no flowcontrol,
    4. Power up the Evaluation platform and you will see the following message.
       Press space to stop autoboot 
      15
    5. Press space before countdown value reaches 0 and you will see BootMgr prompt. This confirms your hardware installation part is valid.

Software Installation

Booting Linux

  1. Setting up tftp server

    1. Download tftp-server rpm that appropriate to your linux version.
    2. Login as root and install it by
       rpm -ivh tftp-server-*.rpm 
    3. create a directory /tftpboot and set it to 777 permissions by
       mkdir /tftpboot; chmod 777 /tftpboot 
    4. If your Linux version is 7.0 or later, then
      1. open /etc/xinetd/tftp file
      2. If there is a line with
        disable=yes
        change it to
        disable=no
      3. There will be another line with
         server_args =
        -s /tftpboot.
        If you are not able to boot into linux in the end, then it may be because of wrong path here. It may be searching /tftpboot/tftpboot directory for images. So set it to "-s /".
      4. Reload xinetd by
         /etc/rc.d/init.d/xinetd reload 
    5. If your linux version is 6.2 then
      1. you will have /etc/inetd.conf file. Search for the line that contains tftp and uncomment it.
      2. Rerun inetd by /sbin/service inetd reload
    6. You can test tftp by tftping to this linux host from any other pc connected to the network.

  2. Burning cygmon into flash,

    1. you need Futil host program called FUtil.exe and flash.img files for this. These are present in Intel's IXA SDK or you can download from Netwinder
    2. Power up the evaluation system and press space to go to BootMgr prompt.
    3. press c to configure and select Flash utility as default OS and leave remaining as default by pressing enter key. Boot by typing b.
    4. The program then waits for the host program to run. Here, before waiting, you may see some garbage on the console, of just flash version or simply waiting depending on the version.
    5. Flash Utility is based on two parts:
      FUtil PROM -- boots and runs on the IXP1200
      FUtil host -- Runs on a PC running Win2k/winNT.
    6. A serial cable must be installed between the PC running the FUtil Host and the serial port on the Evaluation Board. The user interacts with the FUtil Host sending commands PROM running on IXP1200, which modifies the Flash.
    7. You have to close the hyperterminal at this point to free the usage of serial port. (Hanging the connection).
    8. Goto directory where FUtil.exe and flash.img are present in the Host PC.
    9. Type Futil to execute it
    10. It asks for serial port, specify it appropriately, specify filename to be flash.img and the bank to be 0. For the option "Do you wish to skip the Flash utility block", choose no and for the rest choose default by simply typing return.
    11. Now FUtil PROM will modify flash and cygmon is present in the flash and will be able to boot linux.

  3. Booting Linux

    1. Initial setup: NThost and evaluation system are connected to each other by serial port and network. Linux PC is connected to these through network. Store the files linux kernel image (zimage) and ramdisk image (ramdisk_img.gz) in /tftpboot.
    2. Power up the evaluation system and hit space to enter BootMgr.
    3. Press c to configure and select cygmon as default OS. Boot by typing b.
    4. At cygmon prompt, set ip address for remote machine and local machine (IXP) by
       s rip  IP_of_Linux_PC
       s lip  IP_for_IXP 
    5. type "gl" or "g0 linux" to boot linux. It will use tftp to boot linux.
    6. At the login prompt, login as root. Type password appropriate to the ramdisk image.
    7. You have to setup network by
       ifup IP_for_IXP subnet_mask broadcast_IP gateway
      
    8. This sets the network and starts the portmapper and microcode debugger daemons.
    9. This configuration should be done everytime you boot into linux. (you can use minicom script to avoid this).

  4. Installing cross hosted tool chain

    1. Files needed: ixa-arm-v4b-1.i386.rpm
      Get it from netwinder or IXA SDK 2.0.
    2. add path to /usr/local/armbe/bin
    3. Otherwise install it by downloading ixp1200_linux.tar.gz and untar it and read README to compile it.

  5. Using developer workbench

    1. Install Developer Workbench in CD on NT or win2k pc.
    2. If you are not running DNS on the IXP1200, add the name of your NThost to /etc/hosts file. Do this by typing
      cat > /etc/hosts 
      then type
      ip_of_NThost  domainname_of_NThost
      then, ctrl-d to quit.
    3. If you are not using Intel's IXA SDK ACE programming Framework, then to debug a microengine C module, type
      insmod /lib/modules/ue.o; rs_udebug & 
    4. This starts the microcode debugger daemon on the IXP1200 network processor. These two files (ue.o and rs_udebug) are present in the ramdisk image.
  6. To transfer files onto IXP, you can either set NFS server on Linux host or you can use ftp.