CS(4)

NAME
cs - Ethernet device driver

SYNOPSIS
To compile this driver into the kernel, place the following line in your kernel configuration file:

device cs

Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5):

    if_cs_load="YES"

In /boot/device.hints:
hint.cs.0.at="isa"
hint.cs.0.port="0x300"
hint.cs.0.irq="10"
hint.cs.0.maddr="0xd000"

DESCRIPTION
The cs driver provides support for ISA Ethernet adapters based on the Crystal Semiconductor CS8900 and CS8920 NICs. These devices are used on the IBM EtherJet ISA adapters and in many embedded applications where the high integration, small size and low cost of the CS89x0 family compensate for their drawbacks.

The cs driver will obtain configuration parameters either from /boot/device.hints or from the card. At least the I/O port number must be specified. Other parameters specified in /boot/device.hints will be used if present; the card may be soft-configured so these may be any valid value. Adapters based on the CS8920 normally offer PnP configuration and the driver will detect the IBM EtherJet and the CSC6040 adapters automatically.

Note that the CS8900 is limited to 4 IRQ values; these are normally implemented as 5, 10, 11 and 12. The CS8920 has no such limitation.

Memory-mapped and DMA operation are not supported at this time.

In addition to the ISA devices, the PC Card devices based on the CS889x0 family are also supported. The IBM EtherJet PCMCIA Card is the only known device based on this chip. The PC Card support does not need the above specific ISA hints to work. The PC Card support may not work for 10base2 (thinnet) connections and may bogusly claim to support 10base5 (there are no known cards that have an AUI necessary for 10base5 support on their dongles).

DIAGNOSTICS

cs%d: full/half duplex negotiation timeout The attempt to negotiate duplex settings with the hub timed out. This may indicate a cabling problem or a faulty or incompatible hub.

cs%d: failed to enable <media> The CS89x0 failed to select the nominated media, either because it is not present or not operating correctly.

cs%d: No EEPROM, assuming defaults The CS89x0 does not have an EEPROM, or the EEPROM is hopelessly damaged. Operation will only be successful if the configuration entry lists suitable values for the adapter.

cs%d: Invalid irq The IRQ specified in the configuration entry is not valid for the adapter.

cs%d: Could not allocate memory for NIC There is a critical memory shortage. The adapter will not function.

cs%d: Adapter has no media The adapter is not configured for a specific media type. The media type will have to be manually set.

This is a %s, but LDN %d is disabled The PnP probe code found a recognised adapter, but the adapter is disabled.

failed to read pnp parms A PnP adapter was found, but configuration parameters for it could not be read.

failed to pnp card parameters The parameters obtained via PnP were not accepted by the driver. The adapter may not function.

SEE ALSO
arp(4), netintro(4), ng_ether(4), ifconfig(8)

AUTHORS
-nosplit The cs device driver was written by Maxim Bolotin and Oleg Sharoiko. This manpage was written by Michael Smith.

CAVEATS
The CS89x0 family of adapters have a very small RAM buffer (4K). This may cause problems with extremely high network loads or bursty network traffic. In particular, NFS operations should be limited to 1k read/write transactions in order to avoid overruns.