1 /* 2 * Copyright (c) 1986 Regents of the University of California. 3 * All rights reserved. 4 * 5 * This code is derived from software contributed to Berkeley by 6 * Micom-Interlan Inc. 7 * 8 * %sccs.include.redist.c% 9 * 10 * @(#)if_ix.h 7.3 (Berkeley) 06/28/90 11 */ 12 13 union ix_stats { 14 struct { /* General statistics below */ 15 u_char macg_physaddr[6]; 16 u_short macg_pad; 17 u_long dlag_rcvmac; /* packets received by DLA from MAC */ 18 u_long dlag_rcvpass; /* packets passed to users by DLA */ 19 u_long dlag_txreq; /* packets sent by users to DLA */ 20 u_long dlag_txsnt; /* packets sent by DLA to MAC */ 21 u_short dlag_chaopn; /* channels open */ 22 u_short dlag_maxopn; /* max channels opened concurrently */ 23 u_long macg_frmtos; /* packets discarded by MAC */ 24 u_long macg_frmpas; /* packets sent to DLA by MAC */ 25 u_long macg_x2x; /* packets put on wire by MAC */ 26 u_long macg_x2r; /* packets looped by MAC */ 27 u_long macg_xrty; /* transmitter retries */ 28 u_short macg_noap; /* open MAC paths */ 29 u_short macg_nprom; /* open promiscuous paths */ 30 u_short macg_conopn; /* max concurrent MAC paths */ 31 u_short sysg_crce; /* CRC errors */ 32 u_short sysg_alne; /* alignment errors */ 33 u_short sysg_rsce; /* resource errors */ 34 u_short sysg_ovre; /* overrun errors */ 35 } ixg; 36 struct { /* Channel statistics below */ 37 u_long dabc_rcvacc; /* packets received */ 38 u_long dabc_rcvtoss; /* packets discarded, queue full */ 39 u_long dabc_rcvpass; /* packets passed to user */ 40 u_long dabc_txreq; /* packets sent by user */ 41 u_long dabc_txsent; /* packets sent to MAC */ 42 u_long macc_rcvcnt; /* packets received by MAC */ 43 u_long macc_txtcnt; /* packets sent by MAC to wire */ 44 u_long macc_lowmem; /* packets discarded, no mem */ 45 } ixc; 46 }; 47 #define IXC_MAP(a) (((a) << 6) | 0100077) 48 49 #define IXC_OPEN IXC_MAP(1) /* Open Channel */ 50 #define IXC_CLOSE IXC_MAP(2) /* Close Channel */ 51 #define IXC_MCAST IXC_MAP(3) /* Set Multicast Addresses */ 52 #define IXC_RECV IXC_MAP(4) /* Receive Frame */ 53 #define IXC_RECVF IXC_MAP(5) /* Receive Fragment */ 54 #define IXC_XMIT IXC_MAP(6) /* Send Frame */ 55 #define IXC_GSTAT IXC_MAP(7) /* Get General Statistics */ 56 #define IXC_CSTAT IXC_MAP(8) /* Get Channel Statistics */ 57 #define IXC_GSCLR IXC_MAP(9) /* Clear General Statistics */ 58 #define IXC_CSCLR IXC_MAP(10) /* Clear Channel Statistics */ 59 #define IXC_RESET IXC_MAP(11) /* Reset DLA module */ 60 #define IXC_LDPA IXC_MAP(12) /* Load Physical Address */ 61