diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2000-03-02 02:36:47 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2000-03-02 02:36:47 +0000 |
commit | 8624512aa908741ba2795200133eae0d7f4557ea (patch) | |
tree | d5d3036fccf2604f4c98dedc11e8adb929d6b52e /Documentation/networking/8139too.txt | |
parent | 7b8f5d6f1d45d9f9de1d26e7d3c32aa5af11b488 (diff) |
Merge with 2.3.48.
Diffstat (limited to 'Documentation/networking/8139too.txt')
-rw-r--r-- | Documentation/networking/8139too.txt | 194 |
1 files changed, 194 insertions, 0 deletions
diff --git a/Documentation/networking/8139too.txt b/Documentation/networking/8139too.txt new file mode 100644 index 000000000..6a75c7338 --- /dev/null +++ b/Documentation/networking/8139too.txt @@ -0,0 +1,194 @@ + + "8139too" Fast Ethernet driver for Linux + Improved support for RTL-8139 Fast Ethernet adapters + + Copyright 2000 Jeff Garzik <jgarzik@mandrakesoft.com> + + + 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.41 or later. +A Fast Ethernet adapter containing an RTL8139-based chip. + + + +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) + + (overwrite 8139too driver in kernel tree with different version) + 1) cp 8139too.c $my_source_tree/drivers/net/8139too.c + +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) Identify and fix "rx wedge" when ping flooded. + +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. Solution: +Following technique in sunhme and sunbmac, use a kernel timer to +manually perform autonegotiation in case the network or card cannot do +it automatically. (patches welcome) + +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. + + + + +Change History +-------------- +Version 0.9.3.3.2 - Feb 22, 2000 - second public beta release + +* Begin integration of Daniel Kobras' MMIO flush patch (disabled for now) +* Softnet logic updates to fix bugs and improve performance +* Dynamic sizing of I/O resources (0x80 for older chips, 0xFF for newer ones) +* Remove bogus SiS entries from PCI probe table +* Add support for cards + "Delta Electronics 8139 10/100BaseTX" + "Addtron Technolgy 8139 10/100BaseTX" +* Fix major bug with rx ring buffer size (also present in rtl8139.c 1.08r) +* PCI DMA mapping by Dave Miller +* Complete rewrite of SMP locking logic +* Hotplug support +* Call rtl8139_hw_start from rtl8139_open, and remove duplicated code + from rtl8139_open +* Reset NWay registers to sane defaults on rtl8139_open/hw_start +* Miscellaneous code cleanup + +Version 0.7.0 - Feb 7, 2000 - first public beta release + + +[EOF] + |