FILE NAME:      e100-2.2.21c-1.src.rpm

TITLE:          HP Proliant NC31XX Fast Ethernet NIC Driver For Linux

VERSION:        2.2.21c

LANGUAGE:       English

CATEGORY:       Software Solutions

DIVISIONS:      Enterprise and Mainstream Servers

PRODUCTS AFFECTED: 
		HP NC3120 Fast Ethernet Adapter
		HP NC3121 Fast Ethernet Adapter
		HP NC3122 Fast Ethernet Adapter
		HP NC3123 Fast Ethernet Adapter 
		HP NC3131 Fast Ethernet Adapter
		HP NC3132 Fast Ethernet Adapter
		HP NC3133 Fast Ethernet Adapter
		HP NC3134 Fast Ethernet Adapter 
		HP NC3135 Fast Ethernet Adapter 
		HP NC3163 Fast Ethernet Adapter

OPERATING SYSTEM:  
		Red Hat Linux 8.0 Professional
			- Errata kernel 2.4.20-20 (SMP,UP and BigMem)
		Red Hat Linux 7.3 Professional
			- Errata kernel 2.4.20-20 (SMP,UP and BigMem)
		Red Hat Linux 7.2 Professional
			- Errata kernel 2.4.20-20 (SMP,UP and BigMem)
		Red Hat Enterprise Linux 3
		Red Hat Enterprise Linux 2.1 - QU2
			- Errata kernel 2.4.9-e.27 (SMP,UP and Enterprise)
		SuSE Linux Enterprise Server 7 (SLES-7)
			- Errata kernel 2.4.18-280 (SMP)
			- Errata kernel 2.4.18-280 (UP)
		Conectiva Linux Enterprise Edition, SCO Linux 4.0, SuSE Linux
			Enterprise Server 8 and Turbolinux 8 all powered by
			UnitedLinux 1.0.
			- Service Pack 3

NOTE: For Red Hat Linux 7.2 Professional BigMem installations,
      the system needs to be pre-configured before setting up
      the kernel sources and building the NIC and intermediate
      drivers. Refer to the Customer Advisory EU030812_CW01 
      for details on how to pre-configure the system. To access 
      the customer advisory, visit www.hp.com and search for 
      EU030812_CW01.

PREREQUISITES:  Pentium based computer
                128MB RAM minimum
                Latest HP system ROM

                Note: Please visit the following URL to upgrade the ROM
                        http://h18000.www1.hp.com/support/files

EFFECTIVE DATE: 11/23/03

SUPERSEDES:     e100-2.2.21b-1.src.rpm

DESCRIPTION:   This driver enables the HP ProLiant NC31XX Fast
		Ethernet NICs running under Linux.

ENHANCEMENTS/FIXES:
		- Updated errata kernel versions
		- This driver now supports Red Hat Enterprise Linux 3
		- The documentation for this driver now provides a
			description regarding future discontinuation of
			the /proc file system

Table of Contents
=================
  Introduction
  Packaging
  Kernel Source Code Setup
  Installing the RPM Package
  Statistics
  Limitations


Introduction
============
This file describes the Linux driver for the HP Server
Adapters mentioned in the PRODUCTS AFFECTED section.
After installation additional information can be found in the
MAN page for e100, and in the RELEASE.TXT file located at:

For Red Hat: /usr/share/doc/e100-<version>/README
For SuSE SLES7: /usr/share/doc/packages/e100/README
For UnitedLinux 1.0: /usr/share/doc/packages/e100/README

User guides and additional HP Network Adapter information can be
found at:
        http://h18000.www1.hp.com/support/networking/nics/index.html

NOTE: The entries in /proc/net/PRO_LAN_Adapters, currently
	provided by the HP Proliant NC31XX Fast Ethernet NIC Driver
	will not be available after 2003. Most of the information
	being provided in these /proc entries will be obtainable
	through the ethtool utility.

Packaging
=========
The driver is released in a source RPM format. The file name for
the package is e100-<version>.src.rpm and is dependent on the
kernel source code.  If you have not installed the kernel source
code and/or setup the source tree on your Linux system, please
see the "Kernel Source Code Setup" section below.

The steps in the following section (kernel Source Code setup)
and "Installing the RPM Package" have to be executed
first time a new kernel is booted.

Kernel Source Code Setup
========================

The e100 driver requires the presence of the kernel source code
and configuring the kernel source before building the e100 driver.
The following steps need to be done once for each kernel that is
booted. For example, if the current kernel is UP (uni-processor)
and an SMP (symmetrical-multi-processor) kernel is booted, these
steps must be performed again to configure the kernel source for
SMP before building the e100 driver for the SMP kernel.

	Red Hat installation:
	If the /usr/src/linux-<kernel-version> directory does
	not exist, install the kernel source code per Red Hat
	instructions.  Once installed, follow the commands
	listed below to configure the kernel source to match
	the running kernel.

	# cd /usr/src/linux-<kernel_version>
	# make mrproper
	# make -e KERNELRELEASE=`uname -r` oldconfig
	# make -e KERNELRELEASE=`uname -r` dep

	UnitedLinux 1.0 Installation:
	If the /usr/src/linux-<kernel-version> directory does not exist
	please install the kernel source code per SuSE instructions.
	Once installed, please follow the commands listed below to setup
	the kernel source tree.

	# cd /usr/src/linux-<kernel_version>.SuSE
	# make mrproper
	# make cloneconfig
	# make dep

	SuSE SLES 7 Installation:
	If the /usr/src/linux-<kernel-version> directory does not exist
	please install the kernel source code per SuSE instructions.
	Once installed, please follow the commands listed below to setup
	the kernel source tree.

	# cd /usr/src/linux-<kernel_version>.SuSE
	# cp /boot/vmlinuz.config .config
	# cp /boot/vmlinuz.version.h include/linux/version.h
	# cp /boot/vmlinuz.autoconf.h include/linux/autoconf.h
	# make oldconfig
	# make dep

Installing the RPM Package
=============================
1. This package requires the kernel source code as well as
   setting up the source tree.  Verify the source code 
   /usr/src/linux-<kernel-version> directory exist.

        # cd /usr/src/linux-<kernel-version>

   If the kernel source code is not present then please refer
   to the "Kernel Source Code Setup" section.

2. Install the source RPM package.

        # rpm -ivh e100-<version>.src.rpm

3. Build the binary RPM for the e100 driver.

	Red Hat Installation:
	# cd /usr/src/redhat
	# rpmbuild -bb SPECS/e100.spec

	SuSE SLES7 and UnitedLinux 1.0 Installations:
	# cd /usr/src/packages
	# rpm -bb SPECS/e100.spec

        If you get an error during the build process, please refer
	to the "Kernel Source Code Setup" section to correctly setup
	the source tree.

4. Install the new RPM package.  This installs the e100 driver and man page.

	Note to Red Hat users:

		The e100 driver installed by this RPM supersedes the
		default eepro100 driver. The existing eepro100 driver
		will have to be removed prior to installing the e100
		driver. This e100 driver has been tested and approved
		by HP. To rename the existing eepro100 driver, use the
		following command.

	# mv /lib/modules/<kernel_version>/kernel/drivers/net/eepro100.o
	    /lib/modules/<kernel_version>/kernel/drivers/net/eepro100.o.old

	# rpm -ivh RPMS/i386/e100-<version>.i386.rpm

        If an older version of e100 already exists or a conflict occurs,
        please use the "force" command as shown below.

	# rpm -ivh RPMS/i386/e100-<version>.i386.rpm --force

	Note: It is observed that the installation of this e100 driver
	package takes some time after the above installation command
	is invoked and this should not be mistaken for the package
	installation hanging. Please allow for some time and the
	installation should complete succesfully.

	The e100.o module is installed in the following directory:

	Red Hat 8.0
	/lib/modules/<kernel_version>/kernel/drivers/net/e100

	Red Hat 7.3
	/lib/modules/<kernel_version>/kernel/drivers/net/e100

	Red Hat 7.2
	/lib/modules/<kernel_version>/kernel/drivers/net/e100

	Red Hat EL 3
	/lib/modules/<kernel_version>/kernel/drivers/net/e100

	Red Hat EL 2.1
	/lib/modules/<kernel_version>/kernel/drivers/addon/e100

	SuSE SLES7
	/lib/modules/<kernel_version>/kernel/drivers/net/e100

	UnitedLinux 1.0
	/lib/modules/<kernel_version>/kernel/drivers/net/e100

5. Configure your network setting and address.  You may need to refer
   to your Linux vendor documentation.  Use the "netconfig" tool for
   RedHat configuration. Other helpful network configuration tools
   such as "yast" in SLES 7 and UnitedLinux exist for easy configuration.

6. Ensure that the /etc/modules.conf file is configured similar to the
   example listed below.  The example below is presented as if more 
   than one adapter is present.  If so, one eth# instance should exist
   for each ethernet port.  View the modules.conf man page for more
   information.

	alias eth0 e100
	alias eth1 e100

7. You can now reboot your server. Upon reboot the network should start
   with the e100 driver loaded and the correct network configuration.
   To verify that the e100 driver is loaded use the following command.

        # lsmod

   If e100 is listed then the e100 driver is loaded. You can also
   verify that the correct e100 driver is loaded through any of the
   following methods.  Please note that version of the driver loaded
   should be same as that of the package version.

	1. Look for driver load messages in the system log.

		#dmesg | grep Intel

		You should see messages of the following type,

		Intel(R) PRO/100 Network Driver - version x.x.x

	2. Check the ethernet adapter driver information through the /proc
	   interface.

		#grep Driver_Version /proc/net/PRO_LAN_Adapters/*.info


Statistics
==========
Detailed statistics, configuration information and driver information can be 
viewed by:

        # more /proc/net/PRO_LAN_adapters/eth#.info.


Limitations
===========

     Some Linux distributions may not add the default route back
     to a specified network device when a network stop/start command
     is used.  Use the route command to add the default router back
     to the network device.

     Some Linux distributions may not add the default assigned IP
     address back to a specified network device when using the
     following:

            ifconfig eth(x) down
            rmmod <module name>
            insmod <module name> <optional parameter changes>
            ifconfig eth(x) up

     Another step to reassign the IP address back to the device
     may be required:

            ifconfig eth(x) <ip address>

     Some Linux distributions may add multiple IP addresses with the
     same system name in the /etc/hosts file when configuring multiple 
     network devices. 

Uninstalling the RPM
====================

The following command will uninstall the e100 RPM.

     # rpm -e e100-<version>

Copyright 2002,  2003  Hewlett-Packard Development Company, L.P.
Product names mentioned herein may be trademarks and/or registered trademarks
of their respective companies
