3 * Purpose: Driver for the Fast Ethernet Controller (FEC)
16 /********************************************************************/
18 /* External Interface Modes */
19 #define FEC_MODE_7WIRE 0 /* Old 7-wire (AMD) mode */
20 #define FEC_MODE_MII 1 /* Media Independent Interface */
21 #define FEC_MODE_RMII 2 /* Reduced MII */
22 #define FEC_MODE_LOOPBACK 3 /* Internal Loopback */
24 #define INTC_LVL_FEC 3
26 * FEC Configuration Parameters
30 uint8 ch; /* FEC channel */
31 uint8 mode; /* Transceiver mode */
32 MII_SPEED speed; /* Ethernet Speed */
33 MII_DUPLEX duplex; /* Ethernet Duplex */
34 uint8 prom; /* Promiscuous Mode? */
35 uint8 mac[6]; /* Ethernet Address */
36 uint8 phyaddr; /* PHY address */
37 uint8 initphy; /* Init PHY? */
38 int nrxbd; /* Number of RxBDs */
39 int ntxbd; /* Number of TxBDs */
47 int errors; /* total count of errors */
48 int hberr; /* heartbeat error */
49 int babr; /* babbling receiver */
50 int babt; /* babbling transmitter */
51 int gra; /* graceful stop complete */
52 int txf; /* transmit frame */
53 int txb; /* transmit buffer */
54 int rxf; /* receive frame */
55 int rxb; /* received buffer */
57 int eberr; /* FEC/DMA fatal bus error */
58 int lc; /* late collision */
59 int rl; /* collision retry limit */
60 int un; /* Tx FIFO underflow */
61 int rfsw_inv; /* Invalid bit in RFSW */
62 int rfsw_l; /* RFSW Last in Frame */
63 int rfsw_m; /* RFSW Miss */
64 int rfsw_bc; /* RFSW Broadcast */
65 int rfsw_mc; /* RFSW Multicast */
66 int rfsw_lg; /* RFSW Length Violation */
67 int rfsw_no; /* RFSW Non-octet */
68 int rfsw_cr; /* RFSW Bad CRC */
69 int rfsw_ov; /* RFSW Overflow */
70 int rfsw_tr; /* RFSW Truncated */
73 void vFECInit( void );
74 unsigned short usFECGetRxedData( void );
75 void vFECSendData( void );
76 void vFECRxProcessingCompleted( void );
78 /********************************************************************/