Intel(R) Ethernet Connection E800 Series Linux Driver
===================================================================

Intel ice Linux driver.
Copyright(c) 2018 Intel Corporation.

Contents
========
- Enabling the driver
- Support

The driver in this release supports Intel's E800 Series of products. For
more information, visit Intel's support page at http://support.intel.com.

Enabling the driver
===================

The driver is enabled via the standard kernel configuration system,
using the make command:

     Make oldconfig/silentoldconfig/menuconfig/etc.

The driver is located in the menu structure at:

	-> Device Drivers
	  -> Network device support (NETDEVICES [=y])
	    -> Ethernet driver support
	      -> Intel devices
	        -> Intel(R) Ethernet Connection E800 Series Support

Support
=======

For general information, go to the Intel support website at:

    http://support.intel.com

If an issue is identified with the released source code, please email
the maintainer listed in the MAINTAINERS file.
