view · edit · print · history

You must download the source code for the IXP420 Network Processing Engines (NPE) yourself before building either OpenSlug or UcSlugC.

This is because using this source requires that you agree to the corresponding Intel license - this license restricts how you redistribute the resultant binaries. The OpenSlug EULA is an example of how this can be done.

To use the Intel source after downloading it the downloaded .zip files must be placed in the bitbake downloads directory (named ${DL_DIR} within the bitbake .bb files). In a standard build from the master makefile this is just the subdirectory downloads, if you changed DL_DIR or have a different build structure it may be somewhere else.

Downloading the source

Use the web site http://developer.intel.com, the source download page is accessible from the web page for the Intel® IXP420 Network Processor, at present this is:


Note that v2.1 is located in the Archives: http://developer.intel.com/design/network/products/npfamily/ixp400_archives.htm

I just tried the "make slugosle" and it apparently is looking for v2.4, so v2.1 won't help you.

That page may change as Intel updates its web site. You must register on this site to access the software. You may find that the registration processes do not work with your web browser - they don't work with Konqueror 3.4.x - there is no choice but to use one which is supported. It also doesn't work with Firefox 2.0, so I had to use IE7 (worked). Once you have registered you will be able to access the main software download page.

The software you require is the Intel® IXP400 Software and RedBoot* Boot Loader. Current brings you to a page labelled Hardware Access Software & Development Environments. At present we use version 2.1 2.4 and this is the current version, but in the future you may need to access this version off the archived link. The exact names and version specific names can be found in the bitbake .bb files for the ixp4xx package - look at the files in openembedded/packages/ixp4xx. Note that there is a v3.0 but don't use that - use 2.4 for now.

[Unslung 6, requires version 2.1 without Crypto : cwatts ] [SlugOS LE/BE, requires vers 2.4 without Crypto : Rob Lockhart]

In current builds you need two one pieces of software contained in two one separate downloadable .zip files:

  1. Intel Hardware Access Software (the driver software). => no longer needed because alternative open-source version is available.
  2. NPE Microcode (the binary for the NPE encoded as arrays of C constants).

Download both .zip files - you have to accept the respective license agreement for each download.

Storing the downloaded source

It is probably a good idea to keep a copy of the source somewhere outside the master makefile build tree, because it is sometimes convenient and even necessary to delete the whole tree in order to ensure a clean build.

To use the .zip files however they must be copied or linked into the bitbake downloads directory - defined by the variable DL_DIR in the bitbake configuration. This defaults to the directory downloads at the top of the master makefile build tree.

Once the files are in the downloads directory openslug and ucslugc builds should work. bitbake will still attempt to download the files from the deliberately incorrect URI in the relevant .bb files, however when it fails it should still find the complete files in the downloads directory. At this point bitbake generates a 32 character MD5 checksum for the file and stores it in file.zip.md5, this prevents bitbake attempting the download again.

If you find the build still errors out at the fetch step (this has been observed though there may have been another error) you can generate the MD5 checksum file yourself with the following command (for a file 'file'):

md5sum file | while read checksum file
echo -n "$checksum" >"$file".md5

The Makefile now works with version 2.4, so it is no longer necessary to rename the zip-file. To generate the MD5sum file, use the following command when in the download-directory to where you copied the zip-file:

md5sum -b IPL_ixp400NpeLibrary-2_4.zip | awk '{print $1}' > IPL_ixp400NpeLibrary-2_4.zip.md5

After generating the MD5sum file, call make again. The build should continue now without further errors.

view · edit · print · history · Last edited by Rob Lockhart.
Based on work by fcarolo, Lars Bager, Rob Lockhart, Peter Taylor, jbowler, and cwatts.
Originally by jbowler.
Page last modified on May 10, 2008, at 09:00 PM