Logo next up previous index
Next: 2. Remote boot from Up: ipcs under linux Previous: ipcs under linux   Index


1. Introduction

1.1 Version

This is Version 1.1 of this howto, written 26. Jan 2001 through 3. Feb 2001 by Bernd Herd. See ChangeLog for a list of Changes.

1.2 Backgrounder

The Intergrated PC Server (IPCS), also named Filesystem I/O processor (FSIOP) or Integrated Netfinity Server (INS) is a PCI-Card extension to the AS/400 operating environment, used to extend the functionality of the AS/400 environment by running an Intel PC-Baser oprating System.

The Card includes a whole small server including a fast CPU, a lot of RAM and access to a PCI bride to the AS/400 I/O process for access to the AS/400 hard disk.

Read http://www-1.ibm.com/servers/eserver/iseries/hardware/handbook_archive/5486m170.htm for more information on a typical configuration.

Since IBM does not supply support for Netware 5, the only operating systems currently supported for the use in the IPCS server are currently Windows NT and Windows 2000.

Linux is not supported, and obviously they dont't plan to support running linux on the IPCS, since the general line is to run applications supported on the native AS/400 environment directly on the AS/400, and http://www.as400.ibm.com/linux/ states that linux will be supported natively, there is little reason for IBM to support linux.

From a users point of view there are good reasons to have linux running on an IPCS. Several commercial binary applications will likely never get released as AS/400 linux binaries. And you'll need both a comparably new machine and a new operating system to run linux nativly on the AS/400.

1.3 Printing this HOWTO

We have prepared this howto both in HTML format for the internet (which you are currently reading) and in acrobat reader PDF format, which is better suited for a nice printout.

Get the PDF-Version from http://www.herdsoft.com/ftp/downloads.html#ipcs .

1.4 Scenario

One of our clients uses some old COBOL/400 software I've developed for them starting in the 1980s. In 2001 we started migrating the applications to newer technologies including JAVA servlets and SQL.

The client bough a used AS/400 Model 170 including an Integrated Netfinity Server, but we couldn't stand running Windows NT Server. The machine was there, but we had no use for it, so we decided to use the incredible flexibility of Linux for our applications by using Linux as the operating System running on the IPCS.

Some search and email-questions addressed to IBM revealed that we obvoiusly cannot rely on them, and on the internet we found the same question from other users, but not the answers.

1.5 IPCS Hardware

The integrated PC server consists essentially from the same chips you'd find in a standalone PC server. Instead of a regular SCSI-Controller a PCI to PCI bride is used to connect the device with access to a hard disk by transfering disk data through the AS/400 I/O system.

A special network device called ``AS/400 Virtual Token Ring adapter'' enables high-speed data transfers to the AS/400 networking system.

Both PCI components are specially designed for the AS/400 and since there is no documentation available there is no way to use them under Linux.

However it is possible to add other PCI devices to the PCI bus. Since Linux can be configured to work without any hard disk access, this is sufficient to run linux and get the flexibility of linux on the expense of an only moderate performance.

   netfinity:/home/bernd# lspci
   00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
   00:07.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II] (rev 01)
   00:07.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
   00:0c.0 Token ring network controller: IBM 16/4 Token ring UTP/STP controller (rev 05)
   00:0d.0 Ethernet controller: 3Com Corporation 3c905C-TX [Fast Etherlink] (rev 74)
   00:10.0 VGA compatible controller: S3 Inc. Trio 64V2/DX or /GX (rev 16)
   00:13.0 Bridge: IBM: Unknown device 0063 (rev 01)

1.6 Things needed

You should be equipped with at least the following things:

1.7 Booting Linux

We currently know about two ways of booting the linux kernel on the netfinity server.

1.7.1 Booting from PC-DOS

When installing Windows NT server, the system also installs a small C: FAT partition. In the boot menu the third menu item allows to start PC-DOS.

Perform the following tasks:

The System will now start a standard debian installation kernel, but it is of very little value since it is not prepared to run from the network.

However you may define your own initrd ram disk image to start any linux environment you need that way.

It should be possible to run Linux on the IPCS using a standard IBM ethernet Feature 2838 by loading the linux kernel that way.

1.7.2 Booting from the Net

Since the IPCS uses standard PCI technology, a 3COM 3c905C network card with remote boot capabilities works nicely when mounted in the bus.

OS/400 will tell you that the card is unknown and not working. However when configuring the card for remote boot, it will retrieve the network parameters using DHCP protocol, get pxelinux.bin via tftp and boot.

Since the hardware is not specifically designed for the AS/400 it might be a thrill for you to place it inside, and I won't take responsibility for anything. At least, it worked for us.

The AS/400 does not simply use a single PCI bus, but a set of PCI busses interconnected by PCI-to-PCI bridges. Be careful to place the adapter card into the right slot for the IPCS. Informations on slot layout can be found on the IBM web server.

What we need next is a remote boot envorinment that can be retrieved from the AS/400 filesystem.

next up previous index
Next: 2. Remote boot from Up: ipcs under linux Previous: ipcs under linux   Index
Herd Software Development, 3. Feb 2001, http://www.herdsoft.com/