Texas Instruments TNETE110A Network Card User Manual


 
Interrupt Type Codes
4-13
Interrupt Handling
The error status bits are only relevant for some adapter check failure codes,
as indicated by the following table:
Table 4–3. Relevance of Error Status Bits for Adapter Check Failure Codes
Bit Name Channel List/Data Receive/Transmit Read/Write
01h DataPar Y Y Y Y
02h AdrsPar N N N N
03h Mabort Y Y Y Y
04h Tabort Y Y Y Y
05h ListErr Y N Y N
06h AckErr Y EOC/EOF Y N
07h
IovErr Y EOC/EOF Y N
The first four adapter check codes (0x01 thru 0x04) are due to errors in the
hardware. They include parity errors and PCI cycles aborted. These adapter
checks reveal serious hardware errors; please verify that the attached hard-
ware is correct.
The next three adapter check codes (0x05 through 0x07) are due to inconsis-
tencies between ThunderLAN and the driver. These include errors in the lists
where the frame size given to ThunderLAN does not match the actual frame
size. They also include instances where the driver and ThunderLAN do not
agree on how many EOFs to acknowledge. This is a serious mistake, since
it means that frames have been lost. These adapter checks show faults in the
driver-hardware interaction that must be resolved.
4.4.9 Rx EOC Interrupt. Int_type = 111b
A Rx EOC occurs when ThunderLAN encounters a forward pointer of 0 in the
receive list chain. A 0 forward pointer is an indication that a receive buffer is
not available, and ThunderLAN shuts off the receive process. There is a poten-
tial for frame loss if an Rx EOC occurs when the receive channel is stopped,
so this condition must be avoided or the channel restarted as soon as possible
using the following steps:
Move the pointer to the top of the Rx list and find it’s physical address.
Write it to the CH_PARM
register.
In the HOST_CMD register, acknowledge the Rx EOC and give the Rx GO
command in the same 32-bit move.