/* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ /* bos720 src/bos/kernel/sys/cdli_entuser.rrent.h 1.5.1.2 */ /* */ /* Licensed Materials - Property of IBM */ /* */ /* Restricted Materials of IBM */ /* */ /* COPYRIGHT International Business Machines Corp. 2008,2012 */ /* All Rights Reserved */ /* */ /* US Government Users Restricted Rights - Use, duplication or */ /* disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */ /* */ /* IBM_PROLOG_END_TAG */ /* @(#)46 1.5.1.2 src/bos/kernel/sys/cdli_entuser.rrent.h, pcirrent, bos720 1/14/12 12:03:27 */ #ifndef _H_CDLI_ENTUSER_RRENT #define _H_CDLI_ENTUSER_RRENT /* Miscellaneous definitions */ #define ENT_RR_JUMBO_MAX_MTU (9014) /* Jumbo packet max data size */ #define MAX_QSETS (8) /* Device supports up to 8 QSets */ /* Device specific statistics */ #ifndef LINK_UP #define LINK_UP (1) /* Link is UP */ #define LINK_DOWN (0) /* Link is DOWN */ #define LINK_UNKNOWN (2) /* Link is UNKNOWN */ #define MEDIA_10_HALF (0) /* 10 Mbps Half Duplex */ #define MEDIA_10_FULL (1) /* 10 Mbps Full Duplex */ #define MEDIA_100_HALF (2) /* 100 Mbps Half Duplex */ #define MEDIA_100_FULL (3) /* 100 Mbps Full Duplex */ #define MEDIA_AUTO (4) /* Autonegotiation */ #define MEDIA_1000_FULL (5) /* 1000 Mbps Full Duplex */ #define MEDIA_10000_FULL (6) /* 10 Gbps Full Duplex */ #endif #define dd_stats_t rrent_stats_t struct rrent_stats { #define B_MARK_STATS (0x4445565354415453LL)/* "DEVSTATS" */ uint64_t b_mark; /* Begin structure marker */ uint8_t parent_hba[32]; /* Parent hba device, ie: hba0 */ uint32_t link_status; /* Negotiated link status */ uint32_t media_speed; /* Speed negotiated by adapter */ uint32_t tx_tcpseg_maxsize; /* Maximum large send size */ uint32_t rx_tcpaggr_maxpkt; /* Maximum large receive pkts */ uint32_t prom_count; /* Number of promiscuous CDLI users*/ uint32_t mcast_count; /* Number of multicast CDLI users */ uint32_t mcast_addresses; /* Number of multicast addresses */ uint32_t number_of_qsets_allocated; /* Number of allocated qsets */ uint32_t tx_qset_ofq_packets[MAX_QSETS]; /* Current # of tx ofq pkts*/ uint32_t tx_qset_ofq_bytes[MAX_QSETS]; /*Current # of tx ofq bytes */ uint64_t tx_total_ofq_packets; /* Lifetime number of tx ofq pkts */ uint64_t tx_total_ofq_bytes; /* Lifetime number of tx ofq bytes */ uint64_t functions; /* JUMBOF/TCPSEG/TCPAGG */ uint64_t tx_tcpseg; /* # of large send offload packets */ uint64_t rx_tcpaggr; /* # of large receive packets */ uint64_t rx_tcpaggr_pktcount; /* # of RX TCP packets aggregated */ /* into large receive packets */ uint64_t rx_tcpaggr_bytecount; /* # of RX TCP payload bytes */ /* Aggregated into large receive */ /* packets */ uint64_t library_memory_usage; /* Total # of bytes used in library*/ uint64_t driver_memory_usage; /* Total # of bytes used in NIC */ uint64_t tx_timeout_reset_cnt; /* Reset count due to tx timeout */ uint64_t disable_enable_reset_cnt; /* Reset count due to disable enable*/ uint64_t reserved[126]; /* Reserved for future use */ uint64_t e_mark; /* End structure marker */ #define E_MARK_STATS (0x6465767374617473LL)/* "devstats" */ }; typedef struct rrent_stats rrent_stats_t; /* Bitmaps for functions flag in rrent_stats above */ #define JUMBOF (0x1) #define TCPSEG (0x2) #define TCPAGGR (0x4) #define QSETSRUN (0x8) #define dd_all_stats_t rrent_all_stats_t struct rrent_all_stats { ndd_genstats_t ent_nddstats; /* Network generic statistics */ ent_genstats_t ent_genstats; /* Ethernet generic statistics */ dd_stats_t dd_stats; /* Device specific statistics */ }; typedef struct rrent_all_stats rrent_all_stats_t; /* Trace hooks */ #define HKWD_RRENT_OTHER (0x644) /* Other events */ #define HKWD_RRENT_XMIT (0x645) /* Transmit events */ #define HKWD_RRENT_RECV (0x646) /* Receive events */ #endif /* _H_CDLI_ENTUSER_RRENT */