Copyright (c) 1998 Michael Smith All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or othe...
NAMEcs - Ethernet device driver
SYNOPSISTo compile this driver into the kernel, place the following line in your kernel configuration file:
Alternatively, to load the driver as a module at boot time, place the following line in loader.conf5:
In /boot/device.hints hint.cs.0.at=isa hint.cs.0.port=0x300 hint.cs.0.irq=10 hint.cs.0.maddr=0xd000
DESCRIPTIONThe 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 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).
- "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: 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.