ANN: Public beta test of new RTL-8139 Fast Ethernet driver

From: Jeff Garzik (jgarzik@mandrakesoft.com)
Date: Mon Feb 07 2000 - 07:17:05 EST


The first public beta test release of "8139too" is now available for
download, testing, and non-production use from
http://gtf.org/garzik/drivers/8139too/

Kernel 2.3.40 or later is required for use, though a 2.2.x-compatible
version is currently being developed.

"8139too" driver features improved performance, bug fixes, and
portability over the existing experimental "rtl8139" driver, from which
8139too is derived.

Testing feedback and patches are greatly appreciated. The README is
attached below for more details.

        Jeff Garzik
        MandrakeSoft, Inc.

--

"8139too" Fast Ethernet driver for Linux 2.4.0 Improved support for RTL-8139 Fast Ethernet adapters

Copyright 2000 Jeff Garzik <jgarzik@mandrakesoft.com>

Version 0.7.0 - a.k.a. the first public beta release February 7, 2000

Architectures supported (all PCI platforms): x86, Alpha AXP, PowerPC, Sparc64

Disclaimer ----------

THIS DRIVER IS A DEVELOPMENT RELEASE FOR A DEVELOPMENT KERNEL. DO NOT USE IN A PRODUCTION ENVIRONMENT.

DO NOT CONTACT DONALD BECKER FOR SUPPORT OF THIS DRIVER, his driver is completely different and maintained independently of the 8139too code base.

Requirements ------------ Kernel 2.3.40 or later. RTL-8139-based Fast Ethernet adapters.

Introduction ------------

The "8139too" Fast Ethernet driver for Linux 2.4.0 is a substantial modification of the experimental rtl8139 driver from Donald Becker, some versions of which appeared in 2.2.x and 2.3.x kernels. The RTL-8139 is a very low-cost Fast Ethernet chip, which makes it very popular.

The step from 2.2.x to 2.4.x kernels brings many new features to Linux device drivers. Features for MMIO resources, a standard hot-plug API, and other interfaces are now becoming requirements, as drivers move off the x86 platform. With that in mind, I have begun updating the RTL-8139 driver to current 2.3.x (2.4) kernel standards and APIs, and fixing the problems that users have been encountering.

Features of 8139too ------------------- [note - this list intended for people familiar with kernel drivers]

** 100% MMIO, for full speed operation. All users (so far) have reported performance increases over their existing RTL drivers.

** Multi-platform support: x86, Alpha, PPC, ...

** Use proper SMP spinlocking, fixing SMP interrupt bugs, making the driver portable to non-x86 SMP platforms in the process.

** Use new PCI driver API for seamless, low-maintenance hot-plug support

** Several bugs fixes from original rtl8139 1.08r (October 5, 1999), including the very common "transmit timeout" problem.

* Use new resource allocation API, required for hot-plug support * Use new register read/write macros * initcall support (module_init/exit) * vastly improved debug tracing support * code formatting in many places for readability * use new init_etherdev() facilities

...and probably some other less important changes which I forgot.

Installation ------------

OPTION 1: Build inside kernel tree (into kernel image, or as module)

1) cp 8139too.c $my_source_tree/drivers/net/rtl8139.c 2) cp kcompat24.[ch] $my_source_tree/drivers/net 3) Apply the patch "patch-2.3.x". OPTION 2: Build outside kernel tree

Use the included Makefile.

Tested Adapters --------------- AOpen ALN-325C KTI KF-230TX KTI KF-230TX/2

(please add your adapter model to this list)

Status of Platform Support --------------------------

(see errata below for details)

x86: tested, stable Alpha AXP: tested, stable PowerPC: tested, unstable Sparc64: not tested

Special Thanks -------------- The following people contributed invaluable testing time, feedback and/or patches during the development of this driver. Thanks to all of them.

Donald Becker, Alan Cox, Richard Stallman, Linus Torvalds - inspiration

Alan Cox, Gerard Roudier - insight on posted MMIO writes

Martin Mares - code review

Tigran Aivazian - testing, code review, and a bug fix

Chmouel Boudjnah, Alexander Dietrich, Oleg Drokin, James Fidell, Taso Hatzi, Peter K - intrepid test team

And thanks to every supporter free software.

Known Bugs / Errata / To-Do --------------------------- The following issues are known, and are actively being pursued. Patches to resolve these issues is welcome. If a problem occurs which is not in the list, please report it. That's why we do beta releases, after all...

1) Work with Donald to merge fixes and updates into his driver.

2) 2.2.x COMPATIBILITY SUPPORT IS BROKEN. DO NOT USE IT. It is included only for enterprising hackers willing to help fix it.

3) PPC platform has stability problems.

4) Sparc64 platform not tested at all.

5) RTL-8129 support. 8129 support was temporarily removed for lack of any test adapters. Owners of 8129 chips help test this driver!

6) CardBus support. Hot-plug support is mostly complete, but not tested at all. Do not rely on hot-plug support.

7) N-Way auto-negotiation is known to fail in some cases. This problem also occurs in the rtl8139 driver in kernels 2.2.x/2.3.x.

8) Much improved command line / module parameter setup. (patches and suggestions welcome)

9) Better documentation. (patches welcome)

10) User-mode (or maybe optional /proc) diagnostics program.

[EOF]

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Feb 07 2000 - 21:00:14 EST