[9] | 1 | /*
|
---|
| 2 | server/gen/ip/eth_io.h
|
---|
| 3 | */
|
---|
| 4 |
|
---|
| 5 | #ifndef __SERVER__IP__GEN__ETH_IO_H__
|
---|
| 6 | #define __SERVER__IP__GEN__ETH_IO_H__
|
---|
| 7 |
|
---|
| 8 | typedef struct nwio_ethopt
|
---|
| 9 | {
|
---|
| 10 | u32_t nweo_flags;
|
---|
| 11 | ether_addr_t nweo_multi, nweo_rem;
|
---|
| 12 | ether_type_t nweo_type;
|
---|
| 13 | } nwio_ethopt_t;
|
---|
| 14 |
|
---|
| 15 | #define NWEO_NOFLAGS 0x0000L
|
---|
| 16 | #define NWEO_ACC_MASK 0x0003L
|
---|
| 17 | # define NWEO_EXCL 0x00000001L
|
---|
| 18 | # define NWEO_SHARED 0x00000002L
|
---|
| 19 | # define NWEO_COPY 0x00000003L
|
---|
| 20 | #define NWEO_LOC_MASK 0x0010L
|
---|
| 21 | # define NWEO_EN_LOC 0x00000010L
|
---|
| 22 | # define NWEO_DI_LOC 0x00100000L
|
---|
| 23 | #define NWEO_BROAD_MASK 0x0020L
|
---|
| 24 | # define NWEO_EN_BROAD 0x00000020L
|
---|
| 25 | # define NWEO_DI_BROAD 0x00200000L
|
---|
| 26 | #define NWEO_MULTI_MASK 0x0040L
|
---|
| 27 | # define NWEO_EN_MULTI 0x00000040L
|
---|
| 28 | # define NWEO_DI_MULTI 0x00400000L
|
---|
| 29 | #define NWEO_PROMISC_MASK 0x0080L
|
---|
| 30 | # define NWEO_EN_PROMISC 0x00000080L
|
---|
| 31 | # define NWEO_DI_PROMISC 0x00800000L
|
---|
| 32 | #define NWEO_REM_MASK 0x0100L
|
---|
| 33 | # define NWEO_REMSPEC 0x00000100L
|
---|
| 34 | # define NWEO_REMANY 0x01000000L
|
---|
| 35 | #define NWEO_TYPE_MASK 0x0200L
|
---|
| 36 | # define NWEO_TYPESPEC 0x00000200L
|
---|
| 37 | # define NWEO_TYPEANY 0x02000000L
|
---|
| 38 | #define NWEO_RW_MASK 0x1000L
|
---|
| 39 | # define NWEO_RWDATONLY 0x00001000L
|
---|
| 40 | # define NWEO_RWDATALL 0x10000000L
|
---|
| 41 |
|
---|
| 42 | typedef struct eth_stat
|
---|
| 43 | {
|
---|
| 44 | unsigned long ets_recvErr, /* # receive errors */
|
---|
| 45 | ets_sendErr, /* # send error */
|
---|
| 46 | ets_OVW, /* # buffer overwrite warnings,
|
---|
| 47 | (packets arrive faster than
|
---|
| 48 | can be processed) */
|
---|
| 49 | ets_CRCerr, /* # crc errors of read */
|
---|
| 50 | ets_frameAll, /* # frames not alligned (# bits
|
---|
| 51 | not a mutiple of 8) */
|
---|
| 52 | ets_missedP, /* # packets missed due to too
|
---|
| 53 | slow packet processing */
|
---|
| 54 | ets_packetR, /* # packets received */
|
---|
| 55 | ets_packetT, /* # packets transmitted */
|
---|
| 56 | ets_transDef, /* # transmission defered (there
|
---|
| 57 | was a transmission of an
|
---|
| 58 | other station in progress */
|
---|
| 59 | ets_collision, /* # collissions */
|
---|
| 60 | ets_transAb, /* # transmissions aborted due
|
---|
| 61 | to accesive collisions */
|
---|
| 62 | ets_carrSense, /* # carrier sense lost */
|
---|
| 63 | ets_fifoUnder, /* # fifo underruns (processor
|
---|
| 64 | is too busy) */
|
---|
| 65 | ets_fifoOver, /* # fifo overruns (processor is
|
---|
| 66 | too busy) */
|
---|
| 67 | ets_CDheartbeat, /* # times unable to transmit
|
---|
| 68 | collision signal */
|
---|
| 69 | ets_OWC; /* # times out of window
|
---|
| 70 | collision */
|
---|
| 71 | } eth_stat_t;
|
---|
| 72 |
|
---|
| 73 | typedef struct nwio_ethstat
|
---|
| 74 | {
|
---|
| 75 | ether_addr_t nwes_addr;
|
---|
| 76 | eth_stat_t nwes_stat;
|
---|
| 77 | } nwio_ethstat_t;
|
---|
| 78 |
|
---|
| 79 | #endif /* __SERVER__IP__GEN__ETH_IO_H__ */
|
---|