Intel IXDP425 ------------- 1. Compiler Tool Chain Before you can compile the Linux kernel, libraries and applications to generate an IXP425 image you must install an appropriate compiler tool chain. I suggest you use the arm-linux tool chain that accompanies this source distribution (the arm-linux-tools-XXXXXXXX.tar.gz package). To install this toolchain do: 1. login as root 2. cd / 3. tar xvzf arm-linux-tools-XXXXXXXX.tar.gz This package contains binaries of the following tools: binutils-2.14 gcc-3.3.2 glibc-2.2.5 2. Building the Source Follow these simple steps to compile binary images ready to run on the Intel IXDP425 board: 1. tar xvzf uClinux-dist-XXXXXXXX.tar.gz 2. cd uClinux-dist 3. make xconfig . Choose the "Target Platform Selection" menu item . Select the "Vendor/Product" tab and choose "Intel/IXP425" . Select the "Libc version" tab and choose "Glibc" . "Save and Exit" this configuration 4. make dep 5. make That is it! The final make step will run through and compile the Linux kernel, glibc library and a sample application set. It will also package the result into two files ready to load onto the IXDP425 board, zImage and ramdisk.gz. Most often linux-2.4.x and glibc are used on this target, but uClibc and linux-2.6.x are also supported on this board. 3. Loading and Running You will need an Intel IXDP425 board fitted with the RedBoot loader in flash. You should firstly setup RedBoot configuration with a client and server IP address (alternatively you can use the builtin DHCP support). Copy the binary files from uClinux-dist, images/zImage and images/ramdisk.gz to the TFTP area of the download server. To load and run Linux with RedBoot v1.92, issue the following commands: load -r -v -b 0x01600000 zImage load -r -v -b 0x00800000 ramdisk.gz go -n 0x01600000 To load and run Linux with RedBoot v2.0, issue the following commands: load -r -v -b 0x11600000 zImage load -r -v -b 0x10800000 ramdisk.gz go 0x11600000 You should see the Linux boot banner, and then be presented with a bash shell prompt. A reasonable utility set is in place, mostly using the busybox tool set. By default the rc script will run a dhcp client, and so with a local dhcp server in place Linux will acquire an IP address. 4. Saving to Flash with RedBoot You can setup the flash memory from within RedBoot to directly load and run linux. The following procedure describes howto setup and load Linux into the flash: fis init load -r -v -b 0x01600000 zImage fis create -b 0x01600000 -l 0xb0000 zImage load -r -v -b 0x00800000 ramdisk.gz fis create -b 0x00800000 -l 0x1d0000 ramdisk Then create a boot script to automatically load and run: fconfig >> fis load -b 0x00800000 ramdisk >> fis load -b 0x01600000 zImage >> go -n 0x01600000 Note: the go "-n" argument is used to halt the NPE's BEFORE control is passed to kernel loaded as the NPE's can be in use by RedBoot. 5. Customizing the Build Using "make xconfig" in uClinux-dist you can customize the kernel and application configurations. There is a large selection of packages in the application configuration. Consult the README file at the top level of uClinux-dist for some more information about configuration and building. Note also that uClinux-dist does not contain the Intel Access Library or Drivers patch. So only the external PCI EEPRO 10/100 ethernet board can be used by default, neither of the builtin ethernet ports are active. To build with the Intel AccessLibrary to get the ethernet support goto Rob Ranslam's sourceforge project site: http://ixp4xx-osdg.sourceforge.net The "uClinux on the IXDP425 and IXP400 Access Library v1.2.2 Integration HOWTO" provides instructions and a script to integrate the Access Library with uClinux. There is also general information un using the IXDP425 and uClinux.