cm(4) SMC Arcnet Ethernet device driver


To compile this driver into the kernel, place the following lines in your kernel configuration file:
device isa device cm

Alternatively, to load the driver as a module at boot time, place the following line in loader.conf5:



The driver provides support for the Arcnet ISA network adapters.

This driver also has quirks preset in the device.hints5 file for card detection.


The driver supports the following card models:

  • SMC90c26
  • SMC90c56
  • SMC90c66 in '56 compatibility mode.


When the NOARP flag is set on the interface, it does not employ the address resolution protocol described in arp(4) to dynamically map between Internet and Ethernet addresses on the local network. Instead it uses the least significant 8 bits of the IP address as the hardware address like described in RFC 1051 and RFC 1201.

With the IFF_LINK0 flag cleared IP/ARP/RARP encoding is done according to RFC 1201 that is, with Packet Header Definition Standard header and packet type 212 / 213. The MTU is normally 1500. The IFF_LINK0 flag is cleared by default.

With the IFF_LINK0 flag set, IP and ARP encoding is done according to the deprecated RFC 1051 encoding, that is with simple header, packet type 240 / 241, and the MTU is 507.

When switching between the two modes, use

ifconfig interfacename down up
to switch the MTU


The following driver specific error messages may be reported:

"reset: card reset, link addr = 0x%02x (cm%d)"
The card is being reset and a new link address assigned.
"srint: restarted rx on buf cm%d"
The rx buffer has been emptied and will be reset.


The device was ported from Nx by An Max Khon Aq [email protected] and first appeared in Fx 4.6 . This manual page first appeared in Fx 5.3 .


This manual page was written by An Tom Rhodes Aq [email protected] . The Sx IMPLEMENTATION NOTES section was submitted by An Max Khon Aq [email protected] and originated from Nx .


The driver code could do with a bit of improvement, it would be nice if some one could come along and take care of this.

The Sx IMPLEMENTATION NOTES section is specific to all Arcnet devices (see sys/net/if_arcsubr.c and should be moved to a more generic location.