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 card: Sun X1059A SunFastEthernet-2.x (SFE/S, Colossus-Lite)
- PCI card: Sun X1033A SunFastEthernet-PCI (SFE/P, Freshchoice-Lite)
- SBus card: Sun X1018A SunSwift/S (Colossus) [also provides Single-Ended Fast-Wide SCSI interface]
- PCI card: Sun X1032A SunSwift/P (Freshchoice) [also provides Single-Ended Wide-Ultra SCSI interface]
- built-in network interface on Sun Ultra-1E, Ultra-2, Ultra-5, Ultra-10 workstations (and probably some other Sun UltraSPARC-based workstations)
- built-in network interface on Enterprise E3000-E6500 SBus-Expansion boards
- built-in network interface on Enterprise E3000-E6500 PCI-Expansion boards
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).