SunFastEthernet 2.x

This page has info and SunOS/Solaris NIC drivers for SunFastEthernet 2.x interfaces (ie: all those NICs that are based on the "HappyMealEthernet" controller core and use the SunOS/Solaris "hme" driver).

In particular, this page does not cover the somewhat buggy prior-generation "BigMac" SunFastEthernet 1.x hardware (which uses the SunOS/Solaris "be" driver), nor does it cover the later Sun 4-way QuadFastEthernet hardware (which uses the Solaris "qfe" driver, even though the core controller is the same).

Also, this page is focused on SunOS/Solaris: other operating systems, such as NetBSD, Linux, et al, have different device-driver requirements and naming, and are not discussed here.

Note also that use of the resources here are completely at your own risk. No guarantees of anything are provided or even implied.

NIC Hardware

There are several different hardwares equipped with the HappyMealEthernet NIC and that use the SunOS/Solaris "hme" driver:

SBus Note

The above SBus cards are only officially supported in those SMCC sun4u, sun4d and sun4m-class systems that have physical SBus slots (excluding the SPARCclassic-X, SPARCstation Voyager, SPARCstation-4, Xterminal-1 and the equivalent Netra systems).

Having said that, I have heard reports of successful use of SunSwift cards in Ross HyperSTATION, Ross SPARCplug, Tatung COMPstation-10, and the Hyundai/Axil 311 and S/420 workstations. True exotica such as the the Cray CS6400, ICL DRS-6000, Fujitsu TeamServers and Fujitsu SuperServers are a somewhat unknown quantity!

The above SBus cards definitely do not work properly in sun4c systems (SPARCstation-1, SPARCstation-2, SPARCstation-IPC, SPARCstation-IPX, and clones thereof, and so on).

CPU Speed

In 1996, Sun official advice for obtaining maximum throughput out of "hme" interfaces was that you needed one 60 MHz or faster CPU (with 1Mb of L2 cache) per each such interface in use. You can get by with less, but under SunOS 4.x, Solaris 2.3 or 2.4, you probably would not then be able to get even close to sustaining full 100Mb/sec throughput. Solaris 2.5 introduced "zero-copy TCP" which significantly reduced the per-packet-processing overheads in many circumstances and (in my experience) helps tremendously on weaker systems such as the SPARCclassic.

IMPORTANT: Duplex Negotiation

Some revisions of the HappyMeal controller and firmware often fail to correctly negotiate duplex-mode with some FastEthernet switches or media-conversion bridges, and the resulting performance is terrible (eg: 1Mb/sec) under heavy load.

The key indicator of this problem is the presence of "late collision" warnings in the system log (/var/adm/messages on Solaris). If you see such messages, under Solaris 2.x you should force the interface into full-duplex mode using the /etc/system technique mentioned in the Sun Fast Ethernet PSD.

Host System OpenBOOT Firmware

On sun4m systems, if you have very early revision OBP firmware, you might need to update the system OBP firmware to sucessfully use the SBus NICs listed above.

SunOS/Solaris Support Matrix

SunOS Name Solaris Name Driver Software
SunOS 4.1.2 and earlier Solaris 1.0.1 and earlier none available
SunOS 4.1.3 Solaris 1.1 SMCC Release A none available
SunOS 4.1.3C Solaris 1.1C none available
SunOS 4.1.3U1 Solaris 1.1.1 SunFastEthernet Software 2.1 (see below)
SunFastEthernet 2.1 hardware only; the 2.0 controller is not supported.
SunOS 4.1.3U1B Solaris 1.1.1B SunFastEthernet Software 2.1 (see below)
SunFastEthernet 2.1 hardware only; the 2.0 controller is not supported.
SunOS 4.1.4 Solaris 1.1.2 SunFastEthernet Software 2.1 (see below)
SunOS 5.2 and earlier Solaris 2.2 and earlier none available
SunOS 5.3 Solaris 2.3 SunFastEthernet Software 2.1 (see below);
SBus SunFastEthernet 2.1 hardware only; the 2.0 controller is not supported, nor are the PCI versions
SunOS 5.4 Solaris 2.4 SunFastEthernet Software 2.1 (see below);
SBus only, PCI versions not supported.
SunOS 5.5 Solaris 2.5 Solaris 2.5 11/95 requires SunFastEthernet Software 2.1 (see below), later releases of Solaris 2.5 include the drivers in the base O/S (as packages SUNWhmd and SUNWhmdu);
SBus only, PCI versions not supported.
SunOS 5.5.1 through 5.10 Solaris 2.5.1 through 10 included with base O/S (PCI versions require Solaris 2.5.1 4/97 or later)

SunFastEthernet Software 2.1

Except as noted above, software version 2.1 supports both the 2.1 controller hardware revision and the 2.0 controller hardware revision.

And Finally...

If all else fails, and you are having trouble getting your HappyMeal NIC to work acceptably/reliably/at-all, or you want to know more about the history of 100Mb/sec Sun hardware, please consult the Sun Fast Ethernet PSD (an official Sun-published FAQ).