FILE NAME:	e1000-4.3.2c-1.src.rpm

TITLE:		HP Tested and Approved e1000 Linux NIC Driver

VERSION:	4.3.2c

LANGUAGE:	English

CATEGORY:	Software Solutions

DIVISIONS:	Enterprise and Mainstream Servers

PRODUCTS AFFECTED: 
                Compaq NC6132 Gigabit Server Adapter
                Compaq NC6133 Gigabit Server Adapter
                Compaq NC6134 Gigabit Server Adapter
                Compaq NC6136 Gigabit Server Adapter 
                Compaq NC7131 Gigabit Server Adapter
                Compaq NC7132 Gigabit Server Adapter

OPERATING SYSTEM:  
	        Red Hat Linux 7.3 Professional with errata kernel 2.4.18-10
        	Red Hat Linux 8.0 Professional
	        Red Hat Linux Advanced Server 2.1 with errata kernel 2.4.9-e.8
	        SuSE Linux Enterprise Server 7 (SLES-7) with SMP errata
		  kernel 2.4.18-224 or UP errata kernel 2.4.18-243

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

                Note: Please visit the following URL to upgrade the ROM
                        http://www.compaq.com/support/files/

EFFECTIVE DATE:	10/31/02

SUPERSEDES:	e1000-4.0.7-1.src.rpm

DESCRIPTION:	This RPM Package contains the HP Tested and Approved Linux
		e1000 driver for use with the Server Adapters mentioned
		in the PRODUCTS AFFECTED section of this document.


ENHANCEMENTS/FIXES:
		Documentation Enhancements


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


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

For Red Hat: /usr/share/doc/e1000-<version>/README
For SuSE: /usr/share/doc/packages/e1000/README

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


Packaging
=========
The driver is released in a source RPM format. The file name for the package
is e1000-<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 
Source RPM Package" have to be executed first time a new kernel is booted

Kernel Source Code Setup
========================
The e1000 driver requires the presence of the kernel source code and
configuring the kernel source before building the e1000 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 e1000 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.

             For Red Hat Linux 8.0 Professional:

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


             For all other Red Hat Linux distributions:

                  # cd /usr/src/linux-<kernel_version>
                  # make mrproper
                  # make oldconfig
                  # make dep


	SuSE 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 Source 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 e1000-<version>.src.rpm

3. Build the binary RPM for the e1000 driver.

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

	SuSE Installation:
	# cd /usr/src/packages
	# rpm -bb SPECS/e1000.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 e1000 driver and man page.

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

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

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

        The e1000.o driver will be installed in the following path:

        Red Hat 8.0
        /lib/modules/<kernel_version>/kernel/drivers/net/e1000/e1000.o

        Red Hat AS 2.1
        /lib/modules/<kernel_version>/kernel/drivers/net/e1000.o

        SuSE
        /lib/modules/<kernel_version>/kernel/drivers/net/e1000.o


5. Configure your network setting and address.  You may need to refer to your
   Linux vendor documentation.  Other helpful network configuration tools such a
   "yast" in SLES 7 or linuxconf/ksconfig (KDE)/redhat-config-network (GNOME)/ 
   netconfig (ncurses) in Red Hat 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 e1000
	alias eth1 e1000

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

        # lsmod

	If e1000 is listed then the e1000 driver is loaded. You can also verify
   that the correct e1000 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/1000 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. 

Hewlett-Packard Company, Copyright 2002.  All rights reserved.

Product names mentioned herein may be trademarks and/or registered trademarks
of their respective companies.