/**/ /***************************************************************************/ /** **/ /** © Copyright 2010, Hewlett-Packard Development Company, L.P. **/ /** **/ /** Confidential computer software. Valid license from HP and/or **/ /** its subsidiaries required for possession, use, or copying. **/ /** **/ /** Consistent with FAR 12.211 and 12.212, Commercial Computer Software, **/ /** Computer Software Documentation, and Technical Data for Commercial **/ /** Items are licensed to the U.S. Government under vendor's standard **/ /** commercial license. **/ /** **/ /** Neither HP nor any of its subsidiaries shall be liable for technical **/ /** or editorial errors or omissions contained herein. The information **/ /** in this document is provided "as is" without warranty of any kind and **/ /** is subject to change without notice. The warranties for HP products **/ /** are set forth in the express limited warranty statements accompanying **/ /** such products. Nothing herein should be construed as constituting an **/ /** additional warranty. **/ /** **/ /***************************************************************************/ /********************************************************************************************************************************/ /* Created: 30-Mar-2010 17:38:01 by OpenVMS SDL EV3-3 */ /* Source: 24-FEB-2009 08:30:34 $1$DGA7274:[LIB_H.SRC]LANIDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $LSBDEF ***/ #ifndef __LSBDEF_LOADED #define __LSBDEF_LOADED 1 #pragma __nostandard /* This file uses non-ANSI-Standard features */ #pragma __member_alignment __save #pragma __nomember_alignment #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __save /* Save the previously-defined required ptr size */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif #ifdef __cplusplus extern "C" { #define __unknown_params ... #define __optional_params ... #else #define __unknown_params #define __optional_params ... #endif #ifndef __struct #if !defined(__VAXC) #define __struct struct #else #define __struct variant_struct #endif #endif #ifndef __union #if !defined(__VAXC) #define __union union #else #define __union variant_union #endif #endif #include /* SDL has a bug which causes the BLISSF file to produce invalid LSB fields (missing commas). */ /* Workaround is to not allow it to produce a BLISSF definition for the LSB. */ /*++ */ /* Define the LAN Station Block (LSB) fields. */ /* */ /* This structure represents a LAN station entity. There will be one used */ /* to represent each station. Each driver extends this structure to add its */ /* own device specific fields. */ /*-- */ #define LSB$M_CREATED 0x1 #define LSB$M_ENABLED 0x2 #define LSB$M_BENABLED 0x4 #define LSB$M_NMDIS 0x8 #define LSB$M_ELAN 0x10 #define LSB$M_CLIP 0x20 #define LSB$M_TIMER 0x40 #define LSB$M_LLAN 0x80 #define LSB$M_FAILDEV 0x100 #define LSB$M_FAST_TIMER 0x200 #define LSB$M_FAIL_NVALID 0x400 #define LSB$M_NM_MAC_ADDR 0x1 #define LSB$C_TIMUSB 240 /* Seconds with no USBs before we */ /* reduce RCVFIL/RCVADD */ #define LSB$C_MIN_RCV_MIN 32 /* Minimum value for RCVMNR */ #define LSB$C_DEF_RCV_MIN 128 /* Default value for RCVMNR */ #define LSB$C_MAX_RCV_MIN 1024 /* Maximum value for RCVMNR */ #define LSB$C_MIN_RCV_MAX 64 /* Minimum value for RCVMXR */ #define LSB$C_DEF_RCV_MAX 256 /* Default value for RCVMXR */ #define LSB$C_MAX_RCV_MAX 1536 /* Maximum value for RCVMXR */ #define LSB$C_RCV_INC 8 /* Increase when SBU occurs */ #define LSB$C_RCV_DEC 1 /* Decrease when no SBU occurs */ #define LSB$C_RCV_ADD 64 /* Number of additional buffers that */ /* can be added to the rcvbuf queue */ #define LSB$C_QUEUES 1000 /* Start of LSB queues */ #define LSB$C_ABORT_QS 1 /* Number of queues from which we */ #define LSB$C_QS_CLEAN_ACT 7 /* Number of Queues to clean up when */ #define LSB$C_QS_CLEAN_INACT 8 /* Number of Queues to clean up when */ #define LSB$C_INIT_QS 10 /* Number of Queues to be initialized */ #define LSB$G_V4_CTRSECT 1136 /* Start of counter section */ #define LSB$G_END_V4_CTRSECT 1320 /* End of MOP V4 counter section */ /* The following counters are CSMACD architected counters, but they are */ #define LSB$C_QUAD_CTRSIZE_C 248 /* Size of quadword CSMACD counter area */ /* The following are the FDDI specific counters that are needed in addition */ #define LSB$G_PIVCLR 1680 /* Start of Phase IV clear counters */ #define LSB$C_PIVSIZ 552 /* Size of Phase IV clear counters */ #define LSB$G_CTRSECT 2234 /* Start of counter section */ #define LSB$M_SFL_EXC 0x1 #define LSB$M_SFL_CCF 0x2 #define LSB$M_SFL_SHC 0x4 #define LSB$M_SFL_OPC 0x8 #define LSB$M_SFL_FTL 0x10 #define LSB$M_SFL_RFD 0x20 #define LSB$M_SFL_TUR 0x40 #define LSB$M_SFL_TFL 0x80 #define LSB$M_RFL_BCE 0x1 #define LSB$M_RFL_FME 0x2 #define LSB$M_RFL_FTL 0x4 #define LSB$M_RFL_RSE 0x8 #define LSB$M_RFL_RLE 0x10 #define LSB$G_END_CTRSECT 2288 /* End of counter section */ #define LSB$M_TRSFL_TUR 0x1 #define LSB$M_TRSFL_LE 0x2 #define LSB$M_TRSFL_ABS 0x4 #define LSB$M_TRSFL_LF 0x8 #define LSB$M_TRSFL_TE 0x10 #define LSB$M_TRSFL_UF 0x20 #define LSB$M_TRSFL_RC 0x40 #define LSB$M_TRRFL_RC 0x1 #define LSB$M_TRRFL_FCE 0x2 #define LSB$M_TRIFL_LWF 0x1 #define LSB$M_TRIFL_SLE 0x2 #define LSB$M_TRIFL_TMO 0x4 #define LSB$M_TRIFL_RPT 0x8 #define LSB$M_TRIFL_BCN 0x10 #define LSB$M_TRIFL_DAD 0x20 #define LSB$M_TRIFL_PSF 0x40 #define LSB$M_TRIFL_RR 0x80 #define LSB$M_TRTFL_LWF 0x1 #define LSB$M_TRTFL_SSD 0x2 #define LSB$M_TRTFL_ARF 0x4 #define LSB$M_TRTFL_RR 0x8 #define LSB$C_CTRSIZE 262 /* Size of counter area */ /* Miscellaneous characteristics of the device/driver */ #define LSB$M_DEVCTR 0x1 #define LSB$M_DEVXIDTEST 0x2 #define LSB$M_MULSEG 0x4 #define LSB$M_RCVMGT 0x8 #define LSB$M_VLAN 0x10 #define LSB$M_VIRTUAL 0x20 #define LSB$M_LINKVALID 0x40 #define LSB$M_AUTOVALID 0x80 #define LSB$M_JUMBOVALID 0x100 #define LSB$M_RUN 0x1 #define LSB$M_INITED 0x2 #define LSB$M_MCA_OVF 0x4 #define LSB$M_FAT_ERR 0x8 #define LSB$M_BLKCTL 0x10 #define LSB$M_PCHACT 0x20 #define LSB$M_NEED_DAT_LOCK 0x40 #define LSB$M_GOT_DAT_LOCK 0x80 #define LSB$M_RING_AVAIL 0x100 #define LSB$M_FULL_DUPLEX 0x200 #define LSB$M_HOT_REPLACE_DRVR 0x400 #define LSB$M_HOT_REPLACE_ADAP 0x800 #define LSB$M_FP_CPUAFF 0x1000 #define LSB$M_AUTO_ENA 0x2000 #define LSB$M_JUMBO_ENA 0x4000 #define LSB$C_ALLPRM 2536 /* Start of settable parameters */ #define LSB$C_ALLPRMSIZ 12 /* End of the parameters that must match for all users. */ #define LSB$C_CPYPRMSIZ 24 /* End of the parameters that are copied into the LSB on INIT. */ #define LSB$C_MCA_TABLE_SIZE 512 #define LSB$C_MBX_MAX 12 #define LSB$C_LLAN_FSET_MAX 136 /* S-Logical LAN's failset info.(SETMAC) */ #define LSB$C_SRVRTN_PCLI_PAR 1 /* PCLI device specific paramter, */ #define LSB$C_SRVRTN_VLAN_CONNECT 2 /* Connect VLAN block */ #define LSB$C_SRVRTN_VLAN_DISCONNECT 3 /* disconnect VLAN block */ #define LSB$C_SRVRTN_AFFINITY 4 /* Underlying device has changed CPUDB */ #define LSB$K_SPARE_LONGWORDS 16 #define LSB$C_FIXED_LENGTH 7536 /* Size of fixed portion of the LSB */ /* This is the end of the common section for all drivers. However, we have */ #define LSB$M_CSMACD_ELAN_ACTIVE 0x1 #define LSB$M_CSMACD_ELAN_START 0x2 #define LSB$M_CSMACD_ELAN_SHUT 0x4 #define LSB$M_CSMACD_ELAN_UNAVAILABLE 0x8 #define LSB$M_CSMACD_LIS_ACTIVE 0x1 #define LSB$M_CSMACD_LIS_START 0x2 #define LSB$M_CSMACD_LIS_SHUT 0x4 #define LSB$M_CSMACD_LIS_UNAVAILABLE 0x8 #define LSB$C_CSMACD_LENGTH 7984 /* Size of base CSMACD LSB */ #define LSB$M_FDDI_BOO 0x1 #define LSB$M_FDDI_CTY 0x2 #define LSB$M_FDDI_UNTO 0x4 #define LSB$C_FDDI_LENGTH 7696 /* Size of base FDDI LSB */ /* Values for LSB$L_LINK_STATE */ #define LSB$C_FDDI_OFF_INIT 0 #define LSB$C_FDDI_OFF_READY 1 #define LSB$C_FDDI_OFF_FAULT_REC 2 #define LSB$C_FDDI_ON_RING_INIT 3 #define LSB$C_FDDI_ON_RING_RUN 4 #define LSB$C_FDDI_BROKEN 5 /* Values for LSB$L_RP_STATE */ #define LSB$C_FDDI_OFF 0 #define LSB$C_FDDI_CAND_PURGER 1 #define LSB$C_FDDI_NON_PURGER 2 #define LSB$C_FDDI_PURGER 3 /* Values for LSB$L_FDDI_DAT */ #define LSB$C_FDDI_UNK 0 /* Unknown */ #define LSB$C_FDDI_SUC 1 /* Success */ #define LSB$C_FDDI_FAIL 2 /* Failed */ /* Values for LSB$L_FDDI_PHY_STATE */ #define LSB$C_FDDI_INT_LOOP 0 /* Internal loopback */ #define LSB$C_FDDI_PHY_BROKEN 1 /* Broken */ #define LSB$C_FDDI_PHY_OFF_READY 2 /* Off ready */ #define LSB$C_FDDI_WAITING 3 /* Waiting */ #define LSB$C_FDDI_STARTING 4 /* Starting */ #define LSB$C_FDDI_FAILED 5 /* Failed */ #define LSB$C_FDDI_WATCH 6 /* Watch */ #define LSB$C_FDDI_IN_USE 7 /* In use */ /* Default values for MAC parameters */ #define LSB$C_FDDI_T_REQ_DFLT 100000 /* 8 ms in 80ns units */ #define LSB$C_FDDI_TVX_DFLT 32768 /* 2.62144 ms in 80ns units */ #define LSB$C_FDDI_RTTO_DFLT 12500000 /* 1000 ms in 80ns units */ #define LSB$C_MAX_XPLOR_BUF 6 #define LSB$C_TR_LENGTH 7664 /* Size of base TR LSB */ #define LSB$C_TR_SPEED_4 0 /* Speed Values */ #define LSB$C_TR_SPEED_16 1 #define LSB$C_TR_LNK_OFF 1 /* Link State Values */ #define LSB$C_TR_LNK_INI 2 #define LSB$C_TR_LNK_RUN 3 #define LSB$C_TR_LNK_RCY 4 #define LSB$C_TR_LNK_CNT 5 #define LSB$C_TR_LNK_BRK 2 #define LSB$C_ATM_LENGTH 7656 /* Size of base ATM LSB */ #ifdef __cplusplus /* Define structure prototypes */ struct _vlan; #endif /* #ifdef __cplusplus */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif typedef struct _lsbdef { /* Embedded extended fork blocks */ /* The first part of the LSB is the fork block for the Interrupt Service */ /* Routine. That fork block is always first because it is the most used */ /* fork block and placing it first makes that code more efficient. The */ /* other fork blocks follow the ISR fork block */ #pragma __nomember_alignment char lsb$g_efbisr [64]; /* S-Interrupt Service Rtn Fork Block */ char lsb$g_efbipl8 [64]; /* S-IPL 8 Fork Block */ char lsb$g_efbreset [64]; /* S-Reset Fork Block */ char lsb$g_efbnm [64]; /* S-Network Management Fork Block */ unsigned int lsb$l_error; /* S-Fatal error code */ int lsb$l_extra_l_0; /* Preserve quadword alignment */ /* Fields for ring pointers/indices for PUT/GET RCV/XMT/CMD/UNS/SMT */ unsigned int lsb$l_putrcv; /* S-Put RCV field */ unsigned int lsb$l_getrcv; /* S-Get RCV field */ unsigned int lsb$l_putxmt; /* S-Put XMT field */ unsigned int lsb$l_getxmt; /* S-Get XMT field */ unsigned int lsb$l_putcmd; /* S-Put CMD field */ unsigned int lsb$l_getcmd; /* S-Get CMD field */ unsigned int lsb$l_putuns; /* S-Put UNS field */ unsigned int lsb$l_getuns; /* S-Get UNS field */ unsigned int lsb$l_putsmt; /* S-Put SMT field */ unsigned int lsb$l_getsmt; /* S-Get SMT field */ /* Counters for requests outstanding/available */ unsigned int lsb$l_xmtavl; /* S-XMT entries owned by host */ unsigned int lsb$l_rcvcnt; /* S-RCV buffers owned by device */ unsigned int lsb$l_xmtcnt; /* S-XMT entries owned by device */ unsigned int lsb$l_cmdcnt; /* S-CMD entries owned by device */ unsigned int lsb$l_unscnt; /* S-UNS entries owned by device */ unsigned int lsb$l_smtcnt; /* S-SMT entries owned by device */ /* Fields for pointing at rings for SDA display */ void *lsb$a_rcvrng; /* Address of RCV ring */ unsigned int lsb$l_rcvent; /* Number of entries in RCV ring */ unsigned int lsb$l_rcvsiz; /* Number of bytes in RCV entry */ void *lsb$a_xmtrng; /* Address of XMT ring */ unsigned int lsb$l_xmtent; /* Number of entries in XMT ring */ unsigned int lsb$l_xmtsiz; /* Number of bytes in XMT entry */ void *lsb$a_cmdrng; /* Address of CMD ring */ unsigned int lsb$l_cmdent; /* Number of entries in CMD ring */ unsigned int lsb$l_cmdsiz; /* Number of bytes in CMD entry */ void *lsb$a_unsrng; /* Address of UNS ring */ unsigned int lsb$l_unsent; /* Number of entries in UNS ring */ unsigned int lsb$l_unssiz; /* Number of bytes in UNS entry */ void *lsb$a_smtrng; /* Address of SMT ring */ unsigned int lsb$l_smtent; /* Number of entries in SMT ring */ unsigned int lsb$l_smtsiz; /* Number of bytes in SMT entry */ /* These scratch fields are not "extra" fields. They are fields that are */ /* used as temporary storage by any piece of the LAN drivers. */ unsigned int lsb$l_scratch1; /* Scratch longword */ unsigned int lsb$l_scratch2; /* Scratch longword */ unsigned int lsb$l_scratch3; /* Scratch longword */ unsigned int lsb$l_scratch4; /* Scratch longword */ unsigned int lsb$l_scratch5; /* Scratch longword */ /* Fields that describe the driver and device version */ unsigned int lsb$l_lan_code; /* S-Address of LAN code */ unsigned int lsb$l_drv_code; /* S-Address of Driver code */ unsigned int lsb$l_dev1_code; /* S-Address of Device code */ unsigned int lsb$l_dev2_code; /* S-Address of Device code */ unsigned __int64 lsb$q_lan_version; /* S-LAN version number */ unsigned __int64 lsb$q_drv_version; /* S-DRV version number */ unsigned __int64 lsb$q_dev1_version; /* S-Device version number */ unsigned __int64 lsb$q_dev2_version; /* S-Device version number */ char lsb$t_hw_serial [12]; /* S-Hardware serial number (12 char) */ unsigned int lsb$l_hw_version; /* S-Hardware version number */ unsigned __int64 lsb$q_hw_bvc; /* Hardware boot verification code */ /* Fields that describe the station */ char lsb$g_ldc [32]; /* The structure for the LAN */ /* device characteristics */ unsigned int lsb$l_device; /* S-The DT$_ value for this device */ unsigned int lsb$l_next_lsb; /* Linked list of LSBs */ void *lsb$a_baselsb; /* Parent LSB pointer */ int lsb$l_extra_l_1; /* Preserve quadword alignment */ __union { unsigned int lsb$l_flags; __struct { unsigned lsb$v_created : 1; /* S-Station is created */ unsigned lsb$v_enabled : 1; /* S-Station is enabled */ unsigned lsb$v_benabled : 1; /* S-Station has been enabled */ unsigned lsb$v_nmdis : 1; /* S-Net Man disable in progress */ unsigned lsb$v_elan : 1; /* Station is for an Emulated LAN */ unsigned lsb$v_clip : 1; /* Station is for Classical IP */ unsigned lsb$v_timer : 1; /* One-second timer enabled */ unsigned lsb$v_llan : 1; /* Station is for a Logical LAN */ unsigned lsb$v_faildev : 1; /* Station can be in a failover set */ unsigned lsb$v_fast_timer : 1; /* Transmit timer is faster */ unsigned lsb$v_fail_nvalid : 1; /* Station is down in LAN FAILOVER set */ unsigned lsb$v_fill_46_ : 5; } lsb$r_fill_21_; } lsb$r_fill_20_; /* Related data structure pointers */ unsigned int lsb$l_adp; /* S-Address of the ADP */ unsigned int lsb$l_idb; /* S-Address of the IDB */ unsigned int lsb$l_ucb0; /* Address of UCB #0 */ /* Network management fields */ void *lsb$a_eib; /* S-Entity Instance Block address */ unsigned int lsb$l_events; /* S-Number of events logged */ void *lsb$a_nm_llb; /* S-Pointer to LLB (LAN Link Block) */ void *lsb$a_nm_lhb; /* S-Pointer to LHB (LAN PHYPort Block) */ unsigned __int64 lsb$q_nm_lpb; /* S-LPB (LAN Port Block) queue head */ int lsb$l_nm_snm_len; /* S-Size of station name item list */ void *lsb$a_nm_snm; /* S-Pointer to station name item list */ unsigned int lsb$l_nm_last_port; /* Last used port name extension */ __union { unsigned int lsb$l_nm_flags; /* Flags - */ __struct { unsigned lsb$v_nm_mac_addr : 1; /* 0 = no address specified */ /* 1 = address specified */ unsigned lsb$v_fill_47_ : 7; } lsb$r_fill_23_; } lsb$r_fill_22_; unsigned int lsb$l_nm_min_tid; /* Lowest SMT Transaction ID in the */ /* Network Management TID range, */ /* initialized by driver. */ unsigned int lsb$l_nm_max_tid; /* Highest SMT Transaction ID in the */ /* Network Management TID range, */ /* initialized by driver. */ unsigned __int64 lsb$q_nm_desc; /* Generic descriptor */ unsigned int lsb$l_station_buf; /* Station buffer parameter */ unsigned int lsb$l_nm_scratch; /* Scratch field for calling C code */ /* Medium specific LAN routines available through the LSB. */ void *lsb$a_init_vcib; /* Init VCIB for this medium */ void *lsb$a_allocate_vcrp; /* Allocate VCRP for this medium */ /* Time stamp fields (all values stored from ABSTIMTICS) */ unsigned int lsb$l_cretim; /* S-Time the module was last created */ unsigned int lsb$l_deltim; /* S-Time the module was last deleted */ unsigned int lsb$l_enatim; /* S-Time the module was last enabled */ unsigned int lsb$l_distim; /* S-Time the module was last disabled */ unsigned int lsb$l_lstrcvtim; /* S-Time of last station receive */ unsigned int lsb$l_lstxmttim; /* S-Time of last transmit complete */ unsigned int lsb$l_lstftltim; /* S-Time of last fatal error */ unsigned int lsb$l_prvftltim; /* S-Time of previous fatal error */ unsigned int lsb$l_lstexctim; /* S-Time of last excessive collision */ unsigned int lsb$l_lstcartim; /* S-Time of last loss of carrier error */ unsigned int lsb$l_lstcoltim; /* S-Time of last late collision error */ unsigned int lsb$l_lstcrctim; /* S-Time of last receive CRC error */ unsigned int lsb$l_lstlentim; /* S-Time of last length error */ unsigned int lsb$l_lstusbtim; /* S-Time of last USB error */ unsigned int lsb$l_lstuubtim; /* S-Time of last UUB error */ unsigned int lsb$l_lstxertim; /* S-Time of last generic transmit error */ unsigned int lsb$l_lstrertim; /* S-Time of last generic receive error */ unsigned int lsb$l_datxmttim; /* S-Time a DAT transmit completed */ unsigned int lsb$l_datrcvtim; /* S-Time a DAT receive was found */ unsigned int lsb$l_lstrnatim; /* S-Time of last ring not available */ unsigned int lsb$l_lstravtim; /* S-Time of last ring available */ unsigned int lsb$l_lstriitim; /* S-Time of last Ring Inits initiated (locally) */ unsigned int lsb$l_lstrirtim; /* S-Time of last Ring Inits initiated (remotely) */ unsigned int lsb$l_lstrbitim; /* S-Time of last Ring Beacon initiated */ unsigned int lsb$l_lstdattim; /* S-Time of last DAT failure */ unsigned int lsb$l_lstdtdtim; /* S-Time of last Duplicate Token received */ unsigned int lsb$l_lstrprtim; /* S-Time of last Ring Purger error */ unsigned int lsb$l_lstfcitim; /* S-Time of last FCI strip errors */ unsigned int lsb$l_lsttritim; /* S-Time of last PC Trace initiated */ unsigned int lsb$l_lsttrrtim; /* S-Time of last PC Trace received */ unsigned int lsb$l_lstdbctim; /* S-Time of last Directed beacon received */ unsigned int lsb$l_lstebetim; /* S-Time of last Elasticity buffer error */ unsigned int lsb$l_lstlcttim; /* S-Time of last LCT Reject error */ unsigned int lsb$l_lstlemtim; /* S-Time of last LEM Reject error */ unsigned int lsb$l_lstlnktim; /* S-Time of last Link error */ unsigned int lsb$l_lstcnctim; /* S-Time of last Connections Completed */ unsigned int lsb$l_lsteentim; /* S-Time of last ELAN enable */ unsigned int lsb$l_lsteditim; /* S-Time of Last ELAN disable */ unsigned int lsb$l_lsteactim; /* S-Time of Last ELAN active */ unsigned int lsb$l_lsteuntim; /* S-Time of Last ELAN unavailable */ /* Timer fields */ unsigned int lsb$l_ctltim; /* S-Control timer */ unsigned int lsb$l_xmttim; /* S-Transmit timer */ unsigned int lsb$l_sidtim; /* S-Periodic SYSID timer */ unsigned int lsb$l_unatim; /* S-Ring unavailable timer */ unsigned int lsb$l_usbtim; /* S-Seconds remaining for no USB - for */ /* adjusting receive buffers */ unsigned int lsb$l_usbsav; /* Saved USB value for checking for */ /* a change in USB since last second */ /* Receive buffer fields */ unsigned int lsb$l_rcvmnr; /* S-Minimum buffers request by mgmt */ unsigned int lsb$l_rcvmxr; /* S-Maximum buffers request by mgmt */ unsigned int lsb$l_rcvmin; /* S-Minimum limit for RCVFIL */ unsigned int lsb$l_rcvmax; /* S-Maximum limit for RCVFIL */ unsigned int lsb$l_rcvcur; /* S-Current number of buffers */ unsigned int lsb$l_rcvfil; /* S-Desired number of buffers */ unsigned int lsb$l_rcvadd; /* S-Number of buffers allowed when */ /* adding buffers from upper layers */ /* Generic counters (all counters wrap) (end all names in CTR) */ unsigned int lsb$l_crectr; /* S-Number of times module was created */ unsigned int lsb$l_enactr; /* S-Number of times module was enabled */ unsigned int lsb$l_prtctr; /* S-Number of ports */ unsigned int lsb$l_excctr; /* Number of excessive collisions */ unsigned int lsb$l_ftlctr; /* S-Number of fatal errors detected */ unsigned int lsb$l_xmttmo; /* S-Number of transmit timeouts */ unsigned int lsb$l_ctltmo; /* S-Number of control timeouts */ unsigned int lsb$l_rsfctr; /* S-Number of restart failures */ unsigned int lsb$l_powerf; /* S-Number of powerfailures */ unsigned int lsb$l_xnwctr; /* S-Number of no work transmits */ unsigned int lsb$l_xbpctr; /* S-Number of Bad PTE transmits */ unsigned int lsb$l_xgpctr; /* S-Number of Global Page transmits */ unsigned int lsb$l_xsbctr; /* S-Number of SVAPTE/BOFF transmits */ unsigned int lsb$l_xbactr; /* S-Number of BUFFER_ADDRESS transmits */ unsigned int lsb$l_arpctr; /* S-Number of auto restarts pending */ /* Duplicate address test fields */ unsigned int lsb$l_dat_inictr; /* S-Number of times DAT was started */ unsigned int lsb$l_dat_errctr; /* S-Number of times DAT failed */ unsigned int lsb$l_dat_stage; /* S-The DAT stage */ unsigned int lsb$l_dat_vcrp; /* S-VCRP to xmt the LOOPBACK request */ unsigned __int64 lsb$q_dat_xmtsts; /* S-Status of the LOOPBACK transmit */ unsigned int lsb$l_dat_reqnum; /* DAT request number */ void *lsb$a_dat_ucb; /* S-For TR only -- DATing UCB */ /* Internal diagnostic fields */ unsigned int lsb$l_devdepend; /* S-Extra status flags */ unsigned int lsb$l_lsterrcsr; /* S-Value of CSR afer last fatal error */ unsigned int lsb$l_lstftlcod; /* S-Fatal error code */ unsigned int lsb$l_prvftlcod; /* S-Previous Fatal error code */ unsigned __int64 lsb$q_lstcrcsrc; /* S-Last source address of CRC error */ /* Trace fields. */ void *lsb$a_trace; /* Trace buffer address */ unsigned int lsb$l_trclen; /* Trace buffer allocated length */ unsigned __int64 lsb$q_trcmask; /* Trace mask */ unsigned __int64 lsb$q_trcstop; /* Trace stop mask */ unsigned int lsb$l_trcindex; /* Trace current index */ unsigned int lsb$l_trccount; /* Trace buffer entry count */ unsigned int lsb$l_trcseq; /* Trace data sequence number */ unsigned int lsb$l_trcintp; /* Trace data interrupt producer */ unsigned int lsb$l_trcintc; /* Trace data interrupt consumer */ void *lsb$a_trcdev; /* Trace data (device specific) */ unsigned int lsb$l_trcdevlen; /* Trace data (length of device specific) */ void *lsb$a_trcmaskdef; /* Trace mask definition */ /* Queues for holding requests. Note that the ABORT queues cannot be */ /* queues that hold requests that have set the BLKCTL flag. If so, there */ /* will be a hang when the request that blocked the CTLHLD queue is aborted */ /* because the flag is not cleared by the abort process. The flags that */ /* can hold control requests that have set the BLKCTL flag include CTLREQ, */ /* CTLPND, XMTPND, POST, and DELAY. */ /* */ /* CTLHLD queue was moved to be non-abortable due to an existing dependency */ /* by the DAT process. */ unsigned __int64 lsb$q_xmtreq; /* S-Transmit request queue */ /* abort requests */ unsigned __int64 lsb$q_ctlhld; /* S-Control hold queue */ unsigned __int64 lsb$q_ctlreq; /* S-Control request queue */ unsigned __int64 lsb$q_ctlpnd; /* S-Control pending queue */ unsigned __int64 lsb$q_post; /* S-Post process queue */ unsigned __int64 lsb$q_delay; /* S-Delay queue (must be last) */ unsigned __int64 lsb$q_xmtpnd; /* S-Transmit pending queue */ /* the device remains active */ unsigned __int64 lsb$q_rcvpnd; /* S-Receive pending queue */ /* the device is inactive */ /* The autorestart queue should not be part of the regular queues because */ /* it should not be emptied when there is a fatal error. */ unsigned __int64 lsb$q_autors; /* S-Automatic restart queue */ unsigned __int64 lsb$q_nmhold; /* S-Network management hold queue */ /* The RCVBUF queue is a single linked list and hence does not need to */ /* be initialized as a queue. */ unsigned __int64 lsb$q_rcvbuf; /* S-Receive buffer list */ /* Chaining information */ unsigned int lsb$l_min_chain; /* S-Minimum number of bytes in the */ /* first entry of a transmit chain */ unsigned int lsb$l_min_xmt; /* S-Minimum number of bytes that can */ /* be transmitted (either 0 or 60) */ unsigned int lsb$l_align_phy; /* S-Physically contiguous flag */ /* (zero if not requested, bit number */ /* of alignment if so) */ unsigned int lsb$l_align_mask; /* Receive buffer alignment mask (if */ /* ALIGN_PHY set then it is the offset */ /* into VCRP for VCRP$T_LAN_DATA) */ unsigned int lsb$l_bsz; /* S-Size of receive buffer data area */ unsigned int lsb$l_devhdr_len; /* S-Device specific xmit header length */ unsigned int lsb$l_svapte; /* Address of first system PTE */ unsigned int lsb$l_sva; /* SVA of first byte of first page */ /* Non-architected counters */ unsigned __int64 lsb$q_lbuctr; /* S-Link buffer unavailable (FDDI) */ /* Note: This "CTR" section must match the clear ("CLR") section that */ /* follows this section. */ /* Architected Phase V counter section (These must match the MOP V4 */ /* counter response packet format) */ __union { unsigned __int64 lsb$q_quad_ctrsect; /* Start of quadword counters */ unsigned __int64 lsb$q_zerctr; /* S-Seconds since last zeroed */ } lsb$r_lsb_quad_ctr_overlay; unsigned __int64 lsb$q_ocrctr; /* S-Octets received */ unsigned __int64 lsb$q_octctr; /* S-Octets sent */ unsigned __int64 lsb$q_pdrctr; /* S-PDUs received */ unsigned __int64 lsb$q_pdtctr; /* S-PDUs sent */ unsigned __int64 lsb$q_morctr; /* S-Multicast octets received */ unsigned __int64 lsb$q_mprctr; /* S-Multicast PDUs received */ unsigned __int64 lsb$q_defctr; /* S-Initially deferred PDUs sent */ unsigned __int64 lsb$q_sinctr; /* S-Single collision PDUs sent */ unsigned __int64 lsb$q_mulctr; /* S-Multiple collision PDUs sent */ unsigned __int64 lsb$q_excctr; /* S-Excessive collisions */ unsigned __int64 lsb$q_ccfctr; /* S-Carrier check failures */ unsigned __int64 lsb$q_shcctr; /* S-MOP ONLY Short circuit failure */ unsigned __int64 lsb$q_opcctr; /* S-MOP ONLY Open circuit failure */ unsigned __int64 lsb$q_ttlctr; /* S-MOP ONLY Transmit too long */ unsigned __int64 lsb$q_latctr; /* S-Late collisions */ unsigned __int64 lsb$q_fcectr; /* S-Frame check errors */ unsigned __int64 lsb$q_alictr; /* S-Alignment errors */ unsigned __int64 lsb$q_ftlctr; /* S-Frames too long */ unsigned __int64 lsb$q_uidctr; /* S-Unrecognized individual dest PDUs */ unsigned __int64 lsb$q_dorctr; /* S-Data overruns */ unsigned __int64 lsb$q_usbctr; /* S-Unavailable station buffers */ unsigned __int64 lsb$q_uubctr; /* S-Unavailable user buffers */ unsigned __int64 lsb$q_cdcctr; /* S-Collision detect check failures */ /* not part of the MOP V4 Counter Response packet format so they do not */ /* have to be in any special order and they cannot be included with the */ /* counters above this comment. */ unsigned __int64 lsb$q_motctr; /* S-Multicast octets sent */ unsigned __int64 lsb$q_mptctr; /* S-Multicast PDUs sent */ unsigned __int64 lsb$q_fsectr; /* S-Frame size errors */ unsigned __int64 lsb$q_slectr; /* S-Send data length errors */ unsigned __int64 lsb$q_rdlctr; /* S-Receive data length errors */ unsigned __int64 lsb$q_umdctr; /* S-Unrecognized multicast dest PDUs */ unsigned __int64 lsb$q_stfctr; /* S-Station failures */ /* to some of the counters above. */ unsigned __int64 lsb$q_turctr; /* S-Transmit underrun */ unsigned __int64 lsb$q_tflctr; /* S-Transmit failure */ unsigned __int64 lsb$q_rsectr; /* S-Frame status error */ unsigned __int64 lsb$q_rlectr; /* S-Frame length error */ unsigned __int64 lsb$q_mfcctr; /* S-MAC frame count */ unsigned __int64 lsb$q_mecctr; /* S-MAC error count */ unsigned __int64 lsb$q_mlcctr; /* S-MAC lost count */ unsigned __int64 lsb$q_riictr; /* S-Ring initializations initiated */ unsigned __int64 lsb$q_rirctr; /* S-Ring initializations received */ unsigned __int64 lsb$q_rbictr; /* S-Ring beacons initiated */ unsigned __int64 lsb$q_datctr; /* S-Duplicate address test failures */ unsigned __int64 lsb$q_dtdctr; /* S-Duplicate tokens detected */ unsigned __int64 lsb$q_rprctr; /* S-Ring purge errors */ unsigned __int64 lsb$q_fcictr; /* S-FCI strip errors */ unsigned __int64 lsb$q_trictr; /* S-Traces initiated */ unsigned __int64 lsb$q_trrctr; /* S-Traces received */ unsigned __int64 lsb$q_dbcctr; /* S-Directed beacons received */ unsigned __int64 lsb$q_ebectr; /* S-Elasticity buffer error */ unsigned __int64 lsb$q_lctctr; /* S-LCT rejects */ unsigned __int64 lsb$q_lemctr; /* S-LEM rejects */ unsigned __int64 lsb$q_lnkctr; /* S-Link errors */ unsigned __int64 lsb$q_cncctr; /* S-Connections completed */ /* Token Ring Specific Counters. */ /* */ /* The following counters are used from FDDI. */ /* S-TURCTR */ /* S-TFLCTR */ /* S-RBICTR */ unsigned __int64 lsb$q_berctr; /* S-Burst Errors */ unsigned __int64 lsb$q_raectr; /* S-Ring Poll errors */ unsigned __int64 lsb$q_lerctr; /* S-Line Errors */ unsigned __int64 lsb$q_tlfctr; /* S-Lost Frames Errors */ unsigned __int64 lsb$q_fcpctr; /* S-Frame Copied Errors */ unsigned __int64 lsb$q_terctr; /* S-Token Errors */ unsigned __int64 lsb$q_sigctr; /* S-Signal Loss */ unsigned __int64 lsb$q_rbectr; /* S-Ring Beaconing */ unsigned __int64 lsb$q_serctr; /* S-Soft Errors Reported */ unsigned __int64 lsb$q_lwfctr; /* S-Lobe Wire Fault */ unsigned __int64 lsb$q_arectr; /* S-Auto Removal Error */ unsigned __int64 lsb$q_rmrctr; /* S-Remove Received */ unsigned __int64 lsb$q_sstctr; /* S-Single Station Detected */ unsigned __int64 lsb$q_rrectr; /* S-Ring Recovery */ unsigned __int64 lsb$q_adsctr; /* S-Abort Delimiters sent (transmit) */ unsigned __int64 lsb$q_ierctr; /* S-Internal Errors */ /* Phase IV clear counter section (This section must match the Phase V */ /* counter section above) */ unsigned __int64 lsb$q_zerclr; /* Seconds since last zeroed */ unsigned __int64 lsb$q_ocrclr; /* Octets received */ unsigned __int64 lsb$q_octclr; /* Octets sent */ unsigned __int64 lsb$q_pdrclr; /* PDUs received */ unsigned __int64 lsb$q_pdtclr; /* PDUs sent */ unsigned __int64 lsb$q_morclr; /* Multicast octets received */ unsigned __int64 lsb$q_mprclr; /* Multicast PDUs received */ unsigned __int64 lsb$q_defclr; /* Initially deferred PDUs sent */ unsigned __int64 lsb$q_sinclr; /* Single collision PDUs sent */ unsigned __int64 lsb$q_mulclr; /* Multiple collision PDUs sent */ unsigned __int64 lsb$q_excclr; /* Excessive collisions */ unsigned __int64 lsb$q_ccfclr; /* Carrier check failures */ unsigned __int64 lsb$q_shcclr; /* MOP ONLY Short circuit failure */ unsigned __int64 lsb$q_opcclr; /* MOP ONLY Open circuit failure */ unsigned __int64 lsb$q_ttlclr; /* MOP ONLY Transmit too long */ unsigned __int64 lsb$q_latclr; /* Late collisions */ unsigned __int64 lsb$q_fceclr; /* Frame check errors */ unsigned __int64 lsb$q_aliclr; /* Alignment errors */ unsigned __int64 lsb$q_ftlclr; /* Frames too long */ unsigned __int64 lsb$q_uidclr; /* Unrecognized individual dest PDUs */ unsigned __int64 lsb$q_dorclr; /* Data overruns */ unsigned __int64 lsb$q_usbclr; /* Unavailable station buffers */ unsigned __int64 lsb$q_uubclr; /* Unavailable user buffers */ unsigned __int64 lsb$q_cdcclr; /* Collision detect check failures */ unsigned __int64 lsb$q_motclr; /* Multicast octets sent */ unsigned __int64 lsb$q_mptclr; /* Multicast PDUs sent */ unsigned __int64 lsb$q_fseclr; /* Frame size errors */ unsigned __int64 lsb$q_sleclr; /* Send data length errors */ unsigned __int64 lsb$q_rdlclr; /* Receive data length errors */ unsigned __int64 lsb$q_umdclr; /* Unrecognized multicast dest PDUs */ unsigned __int64 lsb$q_stfclr; /* Station failures */ unsigned __int64 lsb$q_turclr; /* Transmit underrun */ unsigned __int64 lsb$q_tflclr; /* Transmit failure */ unsigned __int64 lsb$q_rseclr; /* Frame status error */ unsigned __int64 lsb$q_rleclr; /* Frame length error */ unsigned __int64 lsb$q_mfcclr; /* MAC frame count */ unsigned __int64 lsb$q_mecclr; /* MAC error count */ unsigned __int64 lsb$q_mlcclr; /* MAC lost count */ unsigned __int64 lsb$q_riiclr; /* Ring initializations initiated */ unsigned __int64 lsb$q_rirclr; /* Ring initializations received */ unsigned __int64 lsb$q_rbiclr; /* Ring beacons initiated */ unsigned __int64 lsb$q_datclr; /* Duplicate address test failures */ unsigned __int64 lsb$q_dtdclr; /* Duplicate tokens detected */ unsigned __int64 lsb$q_rprclr; /* Ring purge errors */ unsigned __int64 lsb$q_fciclr; /* FCI strip errors */ unsigned __int64 lsb$q_triclr; /* Traces initiated */ unsigned __int64 lsb$q_trrclr; /* Traces received */ unsigned __int64 lsb$q_dbcclr; /* Directed beacons received */ unsigned __int64 lsb$q_ebeclr; /* Elasticity buffer error */ unsigned __int64 lsb$q_lctclr; /* LCT rejects */ unsigned __int64 lsb$q_lemclr; /* LEM rejects */ unsigned __int64 lsb$q_lnkclr; /* Link errors */ unsigned __int64 lsb$q_cncclr; /* Connections completed */ unsigned __int64 lsb$q_berclr; /* Burst Errors */ unsigned __int64 lsb$q_raeclr; /* Ring Poll errors */ unsigned __int64 lsb$q_lerclr; /* Line Errors */ unsigned __int64 lsb$q_tlfclr; /* Lost Frames Errors */ unsigned __int64 lsb$q_fcpclr; /* Frame Copied Errors */ unsigned __int64 lsb$q_terclr; /* Token Errors */ unsigned __int64 lsb$q_sigclr; /* Signal Loss */ unsigned __int64 lsb$q_rbeclr; /* Ring Beaconing */ unsigned __int64 lsb$q_serclr; /* Soft Errors Reported */ unsigned __int64 lsb$q_lwfclr; /* Lobe Wire Fault */ unsigned __int64 lsb$q_areclr; /* Auto Removal Error */ unsigned __int64 lsb$q_rmrclr; /* Remove Received */ unsigned __int64 lsb$q_sstclr; /* Single Station Detected */ unsigned __int64 lsb$q_rreclr; /* Ring Recovery */ unsigned __int64 lsb$q_adsclr; /* Abort Delimiters sent (transmit) */ unsigned __int64 lsb$q_ierclr; /* Internal Errors */ short int lsb$w_extra_w_0; /* Preserve quadword alignment */ unsigned short int lsb$w_zerctr; /* Seconds since last zeroed */ unsigned int lsb$l_brcctr; /* Bytes received */ unsigned int lsb$l_bsnctr; /* Bytes sent */ unsigned int lsb$l_dbrctr; /* Frames received */ unsigned int lsb$l_dbsctr; /* Frames sent */ unsigned int lsb$l_mbyctr; /* Multicast bytes received */ unsigned int lsb$l_mblctr; /* Multicast frames received */ unsigned int lsb$l_bidctr; /* Frames sent, initially deferred */ unsigned int lsb$l_bs1ctr; /* Frames sent, single collision */ unsigned int lsb$l_bsmctr; /* Frames sent, multiple collisions */ unsigned short int lsb$w_sflctr; /* Send failure */ __union { unsigned short int lsb$w_sflmap; /* Send failure reason bitmap */ __struct { unsigned lsb$v_sfl_exc : 1; /* Excessive collisions */ unsigned lsb$v_sfl_ccf : 1; /* Carrier check failure */ unsigned lsb$v_sfl_shc : 1; /* Short Circuit */ unsigned lsb$v_sfl_opc : 1; /* Open Circuit */ unsigned lsb$v_sfl_ftl : 1; /* Frame too long */ unsigned lsb$v_sfl_rfd : 1; /* Remote failure to defer */ unsigned lsb$v_sfl_tur : 1; /* Transmit underrun */ unsigned lsb$v_sfl_tfl : 1; /* Transmit failure */ } lsb$r_fill_25_; } lsb$r_fill_24_; unsigned short int lsb$w_rflctr; /* Receive failure */ __union { unsigned short int lsb$w_rflmap; /* Receive failure reason bitmap */ __struct { unsigned lsb$v_rfl_bce : 1; /* Block Check error */ unsigned lsb$v_rfl_fme : 1; /* Framing error */ unsigned lsb$v_rfl_ftl : 1; /* Frame too long */ unsigned lsb$v_rfl_rse : 1; /* Frame status error */ unsigned lsb$v_rfl_rle : 1; /* Frame length error */ unsigned lsb$v_fill_48_ : 3; } lsb$r_fill_27_; } lsb$r_fill_26_; unsigned short int lsb$w_ufdctr; /* No protocol type counter */ unsigned short int lsb$w_ovrctr; /* Data overrun */ unsigned short int lsb$w_sbuctr; /* System buffer unavailable */ unsigned short int lsb$w_ubuctr; /* No buffer available on all PTs */ unsigned int lsb$l_mbsctr; /* Multicast messages sent */ unsigned int lsb$l_msnctr; /* Multicast bytes sent */ /* Phase IV FDDI counters */ unsigned int lsb$l_mfcctr; /* MAC frame count */ unsigned int lsb$l_mecctr; /* MAC error count */ unsigned int lsb$l_mlcctr; /* MAC lost count */ unsigned int lsb$l_riictr; /* Ring initializations initiated */ unsigned int lsb$l_rirctr; /* Ring initializations received */ unsigned int lsb$l_rbictr; /* Ring beacons initiated */ unsigned int lsb$l_datctr; /* Duplicate address test failures */ unsigned int lsb$l_dtdctr; /* Duplicate tokens detected */ unsigned int lsb$l_rprctr; /* Ring purge errors */ unsigned int lsb$l_fcictr; /* FCI strip errors */ unsigned int lsb$l_trictr; /* Traces initiated */ unsigned int lsb$l_trrctr; /* Traces received */ unsigned int lsb$l_dbcctr; /* Directed beacons received */ unsigned int lsb$l_ebectr; /* Elasticity buffer error */ unsigned int lsb$l_lctctr; /* LCT rejects */ unsigned int lsb$l_lemctr; /* LEM rejects */ unsigned int lsb$l_lnkctr; /* Link errors */ unsigned int lsb$l_cncctr; /* Connections completed */ /* Phase IV Token Ring Counters */ unsigned int lsb$l_sfrctr; /* Send Failures */ __union { unsigned int lsb$l_trsflmap; __struct { unsigned lsb$v_trsfl_tur : 1; /* Transmit Underrun */ unsigned lsb$v_trsfl_le : 1; /* Line Error */ unsigned lsb$v_trsfl_abs : 1; /* Abort Delimiter Sent */ unsigned lsb$v_trsfl_lf : 1; /* Lost Frame */ unsigned lsb$v_trsfl_te : 1; /* Token Error */ unsigned lsb$v_trsfl_uf : 1; /* Unrecognized Frame */ unsigned lsb$v_trsfl_rc : 1; /* Remote Congestion */ unsigned lsb$v_fill_49_ : 1; } lsb$r_fill_29_; } lsb$r_fill_28_; unsigned int lsb$l_rfrctr; /* Receive Failures */ __union { unsigned int lsb$l_trrflmap; __struct { unsigned lsb$v_trrfl_rc : 1; /* Receiver Congested */ unsigned lsb$v_trrfl_fce : 1; /* Frame Copied Error */ unsigned lsb$v_fill_50_ : 6; } lsb$r_fill_31_; } lsb$r_fill_30_; unsigned int lsb$l_ifrctr; /* Insertion Failures */ __union { unsigned int lsb$l_triflmap; __struct { unsigned lsb$v_trifl_lwf : 1; /* Lobe Wire Fault */ unsigned lsb$v_trifl_sle : 1; /* Signal Loss Error */ unsigned lsb$v_trifl_tmo : 1; /* Timeout */ unsigned lsb$v_trifl_rpt : 1; /* Ring Purge Timeout */ unsigned lsb$v_trifl_bcn : 1; /* Beaconing */ unsigned lsb$v_trifl_dad : 1; /* Duplicate Address Detected */ unsigned lsb$v_trifl_psf : 1; /* Parameter Server Failure */ unsigned lsb$v_trifl_rr : 1; /* Remove Received */ } lsb$r_fill_33_; } lsb$r_fill_32_; unsigned int lsb$l_rgfctr; /* Ring Failures ('R' already used) */ __union { unsigned int lsb$l_trtflmap; __struct { unsigned lsb$v_trtfl_lwf : 1; /* Lobe Wire Fault */ unsigned lsb$v_trtfl_ssd : 1; /* Single Station Detected */ unsigned lsb$v_trtfl_arf : 1; /* Auto Removal Failure */ unsigned lsb$v_trtfl_rr : 1; /* Remove Received */ unsigned lsb$v_fill_51_ : 4; } lsb$r_fill_35_; } lsb$r_fill_34_; unsigned int lsb$l_rpgctr; /* Ring Purges */ unsigned int lsb$l_mncctr; /* Monitor Conention */ unsigned int lsb$l_bcnctr; /* Beaconing Conditions */ unsigned int lsb$l_lerctr; /* Line Errors */ unsigned int lsb$l_ierctr; /* Internal Errors */ unsigned int lsb$l_berctr; /* Burst Errors */ unsigned int lsb$l_raectr; /* Ring Poll AC errors */ unsigned int lsb$l_adsctr; /* Abort Delimiters sent */ unsigned int lsb$l_piectr; /* Private Isolating Errors */ unsigned int lsb$l_tlfctr; /* Transmit Lost Frames */ unsigned int lsb$l_rcectr; /* Receiver Congestion Errors */ unsigned int lsb$l_fcectr; /* Frame Copied Errors */ unsigned int lsb$l_ferctr; /* Frequency Errors */ unsigned int lsb$l_terctr; /* Token Errors */ unsigned int lsb$l_pnectr; /* Private Non-Isolating Errors */ /* Miscellaneous counters returned in QIO */ unsigned short int lsb$w_cdcctr; /* Transmit collision check failure */ short int lsb$w_extra_w_1; /* Preserve longword alignment */ /* Miscellaneous internal counters */ unsigned int lsb$l_chlmsg; /* S-Number of Channel Loopbacks sent */ unsigned int lsb$l_chlerr; /* S-Number of Channel Loopback failures */ unsigned int lsb$l_sidmsg; /* S-Number of System IDs sent */ unsigned int lsb$l_siderr; /* S-Number of System ID failures */ unsigned int lsb$l_rqcmsg; /* S-Number of Request Counters msg sent */ unsigned int lsb$l_rqcerr; /* S-Number of Request Counters msg fail */ unsigned int lsb$l_ravctr; /* S-Number of ring avail transitions */ unsigned int lsb$l_rnactr; /* S-Number of ring unavail transitions */ __union { unsigned int lsb$l_char; /* S-Device characteristics word */ __struct { unsigned lsb$v_devctr : 1; /* S-When set, the device maintains */ /* some of the counters */ unsigned lsb$v_devxidtest : 1; /* S-When set, the device responds to */ /* XID/TEST directed to the NULL or */ /* SNAP SAP */ unsigned lsb$v_mulseg : 1; /* S-When set, the device allows */ /* multiple chain segments per transmit */ unsigned lsb$v_rcvmgt : 1; /* S-When set, the driver does its own */ /* buffer management for receive */ unsigned lsb$v_vlan : 1; /* S-Device is VLAN capable */ unsigned lsb$v_virtual : 1; /* S-Device is virtual */ unsigned lsb$v_linkvalid : 1; /* S-Link state is valid */ unsigned lsb$v_autovalid : 1; /* S-Auto-negotiation enable status is valid */ unsigned lsb$v_jumbovalid : 1; /* S-Jumbo frames enable status is valid */ unsigned lsb$v_fill_52_ : 7; } lsb$r_fill_37_; } lsb$r_fill_36_; __union { unsigned int lsb$l_sts; /* S-Driver status */ __struct { unsigned lsb$v_run : 1; /* S-Device is running */ unsigned lsb$v_inited : 1; /* S-Initialization has begun in LAN */ unsigned lsb$v_mca_ovf : 1; /* S-The LSB multicast table has */ /* overflowed, so enable software */ /* filtering */ unsigned lsb$v_fat_err : 1; /* S-When set, we are in the LAN */ /* cleanup routine for fatal errors */ unsigned lsb$v_blkctl : 1; /* S-When set, we are blocking control */ /* requests */ unsigned lsb$v_pchact : 1; /* S-When set, we are in the */ /* PROCESS_CTLHLD routine */ unsigned lsb$v_need_dat_lock : 1; /* S-When set, we are waiting for */ /* another LSB to complete its DAT */ /* so we can start ours */ unsigned lsb$v_got_dat_lock : 1; /* S-When set, we are holding the DAT */ /* LOCK because we are doing a DAT */ unsigned lsb$v_ring_avail : 1; /* S-When set, the ring is available */ /* indicating that PORT USABLE events */ /* should be reported to all VCI users */ /* who start successfully */ unsigned lsb$v_full_duplex : 1; /* S-When set, the adapter is in full */ /* duplex mode */ unsigned lsb$v_hot_replace_drvr : 1; /* S-When set, the driver is being replaced */ unsigned lsb$v_hot_replace_adap : 1; /* S-When set, the adapter is being replaced */ unsigned lsb$v_fp_cpuaff : 1; /* S-When set, adapter is fast path enabled for CPU affinity */ unsigned lsb$v_auto_ena : 1; /* S-Auto-negotiation is enabled */ unsigned lsb$v_jumbo_ena : 1; /* S-Jumbo frames are enabled */ unsigned lsb$v_sts_filler : 17; /* force longword */ } lsb$r_fill_39_; } lsb$r_fill_38_; unsigned int lsb$l_mlt; /* S-Multicast (all) address state */ unsigned int lsb$l_prm; /* S-Promiscuous mode */ unsigned int lsb$l_prmuser; /* S-Promiscuous user's UCB address */ unsigned int lsb$l_media; /* S-Media selection */ unsigned int lsb$l_speed; /* S-Line speed in megabits/sec */ unsigned int lsb$l_jumbo; /* Jumbo frame mode flag */ unsigned int lsb$l_autoneg; /* Auto-negotiation mode flag */ unsigned int lsb$l_flowcnt; /* Flow control mode flag */ /* Start of the parameters that must match for all users. */ unsigned int lsb$l_con; /* S-Controller mode */ unsigned int lsb$l_ilp; /* S-Internal loopback mode */ unsigned int lsb$l_crc; /* S-CRC generation mode */ int lsb$l_extra_l_3; /* Preserve quadword alignment */ unsigned short int lsb$g_pha [4]; /* S-User defined physical address (6 bytes) */ unsigned short int lsb$g_hwa [4]; /* S-Hardware address (6 bytes) */ unsigned short int lsb$g_nmpha [4]; /* S-Network management assigned address (6 bytes) */ unsigned int lsb$l_line_param; /* Address of line parameter validation table */ unsigned int lsb$l_circuit_param; /* Address of circuit parameter validation table */ /* Miscellaneous */ unsigned int lsb$l_untcnt; /* S-Number of active units (UCB's) */ unsigned int lsb$l_gen_multi; /* Address of a driver specific multicast table */ unsigned int lsb$l_mca_max; /* Maximum number of entries allowed in multicast table */ unsigned int lsb$l_mca_cur; /* Number of entries enabled in the multicast table */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif unsigned __int64 lsb$g_mca_table [512]; /* Multicast Table */ #pragma __nomember_alignment unsigned int lsb$l_dev_opr; /* Current device operational state */ unsigned int lsb$l_fdx_ena; /* S-Full Duplex Enable */ unsigned int lsb$l_fdx_opr; /* S-Full Duplex Operational */ unsigned int lsb$l_maxfsz; /* Maximum Frame Size (excluding CRC) */ unsigned int lsb$l_qos; /* Quality of Service specifier */ /* Driver entry points */ unsigned int lsb$l_reg_hwa; /* Address of Register Hardware Address Routine */ unsigned int lsb$l_valid_cnm; /* Address of CNM validation routine */ unsigned int lsb$l_valid_fmt; /* Address of FMT validation routine */ unsigned int lsb$l_valid_gsp; /* Address of GSP validation routine */ unsigned int lsb$l_valid_mca; /* Address of MCA validation routine */ unsigned int lsb$l_valid_src; /* Address of SRC validation routine */ unsigned int lsb$l_valid_pha; /* Address of PHA validation routine */ unsigned int lsb$l_valid_pid; /* Address of PID validation routine */ unsigned int lsb$l_valid_prm; /* Address of PRM validation routine */ unsigned int lsb$l_valid_pty; /* Address of PTY validation routine */ unsigned int lsb$l_valid_sap; /* Address of SAP validation routine */ unsigned int lsb$l_set_cnm; /* Address of CNM set routine */ unsigned int lsb$l_set_des; /* Address of DES set routine */ unsigned int lsb$l_set_mca; /* Address of MCA set routine */ unsigned int lsb$l_set_src; /* Address of SRC set routine */ unsigned int lsb$l_set_pha; /* Address of PHA set routine */ unsigned int lsb$l_set_mnr; /* Address of set min receive routine */ unsigned int lsb$l_set_mxr; /* Address of set max receive routine */ unsigned int lsb$l_set_80ns; /* Address of driver's set 80 ns timer routine */ unsigned int lsb$l_set_rtto; /* Address of driver's set Restricted Token Timeout Routine */ unsigned int lsb$l_sho_80ns; /* Address of driver's show 80 ns timer routine */ unsigned int lsb$l_sho_rtto; /* Address of driver's show Restricted Token Timeout Routine */ unsigned int lsb$l_sysid_msg; /* Address of driver's SYSID message */ unsigned int lsb$l_dev_timer; /* Address of device specific timer routine */ unsigned int lsb$l_process_ctl; /* Address of PROCESS_CTLHLD routine */ unsigned int lsb$l_dev_transmit; /* Address of device specific transmit routine */ unsigned int lsb$l_sho_lnk; /* Address of dev specific Show Link routine */ void (*lsb$a_fork_proc)(); /* Address of dev FORK-PROC routine */ void (*lsb$a_chngpro)(); /* Address of dev$ CHNGPRO routine */ void (*lsb$a_counter)(); /* Address of dev$ COUNTER routine */ void (*lsb$a_diag)(); /* Address of dev$ DIAG routine */ void (*lsb$a_init)(); /* Address of dev$ INIT routine */ void (*lsb$a_port)(); /* Address of dev$ PORT routine */ void (*lsb$a_power_fail)(); /* Address of dev$ POWER_FAIL routine */ void (*lsb$a_receive)(); /* Address of dev$ RECEIVE routine */ void (*lsb$a_sense_mac)(); /* Address of dev$ SENSE_MAC routine */ void (*lsb$a_set_mac)(); /* Address of dev$ SET_MAC routine */ void (*lsb$a_stop)(); /* Address of dev$ STOP routine */ void (*lsb$a_stoppro)(); /* Address of dev$ STOPPRO routine */ void (*lsb$a_strtpro)(); /* Address of dev$ STRTPRO routine */ void (*lsb$a_strtpropha)(); /* Address of dev$ STRTPROPHA routine */ void (*lsb$a_timer)(); /* Address of dev$ TIMER routine */ int (*lsb$a_transmit)(); /* Address of dev$ TRANSMIT routine */ void (*lsb$a_unit_init)(); /* Address of dev$ UNIT_INIT routine */ void (*lsb$a_mask)(); /* Address of dev$ MASK routine */ __union { void *lsb$a_elan_lsbs; /* linked list of ELAN LSBs */ void *lsb$a_port_lsbs; /* linked list of Ports LSBs */ void *lsb$a_clip_lsbs; /* linked list of CLIP LSBs */ } lsb$r_lsb_ptr_overlay; /* The following fields are used by LAN to find the Driver's internal */ /* counter area and internal counter area size. This is to allow the */ /* LAN module ACCESS FDT routine to return the Driver internal counters. */ unsigned int lsb$l_internal_ctrs; /* S-Address of internal counter area */ unsigned int lsb$l_internal_ctrsize; /* S-Size of internal counter area */ unsigned int lsb$l_internal_ctrstr; /* Address of counter ASCIZ strings */ /* Filtering Fields */ /* MON is set/cleared upon monitor user startup/stop or device initialization. */ /* PRM is set/cleared upon promiscuous user startup/stop or device initialization. */ /* MONPRM is the OR of MON and PRM which is done after each user startup, */ /* change, stop or device initialization. */ /* These fields maintain the same state as other device parameters, ie. 'set' */ /* or 'on' is NMA$C_STATE_ON and 'cleared' or 'off' is NMA$C_STATE_OFF. */ unsigned int lsb$l_mon; /* Monitor user flag (0 if exists) */ unsigned int lsb$l_monprm; /* Monitor or prom user flag (0 if so) */ void *lsb$a_mon_user1; /* Address of monitoring routine 1 */ void *lsb$a_mon_user2; /* Address of monitoring routine 2 */ int lsb$l_extra_l_4; /* Preserve quadword alignment */ /* This is used during 802 filtered to record whether we have already */ /* taken care of the promiscuous user (since we can deliver multiple */ /* copies due to GSAPs). Also, to indicate whether we have actually */ /* delivered a copy of the packet yet (to detect true 'no user'). */ unsigned int lsb$l_prm_done; /* Promiscuous user done */ unsigned int lsb$l_delivered; /* Packet was delivered to a user */ unsigned int lsb$l_next_802; /* Next 'real' 802 user */ unsigned int lsb$l_rsp_802; /* Response (XID/TEST) needed for this frame */ /* These are set to -1 during initialization and when a user is stopped, */ /* changed or started. Thereafter, the LAST field records the last protocol */ /* value and the UCB records the user who owned that value (zero if not owned */ /* by anyone). */ unsigned int lsb$l_pty_ucb; /* UCB for 'last' protocol type seen */ unsigned int lsb$l_pty_last; /* Last protocol type seen */ unsigned int lsb$l_sap_ucb; /* UCB for 'last' SAP seen */ unsigned int lsb$l_sap_last; /* Last SAP seen */ unsigned int lsb$l_pid_ucb; /* UCB for 'last' PID seen */ unsigned __int64 lsb$q_pid_last; /* Last PID seen */ /* Mailbox area. This area consists of a count of the number of mailboxes */ /* in use, the physical base address of the CSRs for the device, the CRAM */ /* command opcode for a read and a write, followed by a list of mailbox */ /* addresses (each one pointing to a 64-byte mailbox CRAM). For drivers */ /* that need both mailbox and CSR support in the same image, the MBX_ENABLE */ /* flag is used to indicate that mailbox operation is enabled. */ __int64 lsb$q_mbx_base; /* S-Physical address of CSR base */ unsigned int lsb$l_mbx_read; /* S-CRAM command opcode for a lw read */ unsigned int lsb$l_mbx_write; /* S-CRAM command opcode for a lw write */ unsigned int lsb$l_mbx_num; /* S-Number of mailboxes in use */ unsigned int lsb$l_mbx_enable; /* S-LBC if mbx operation is enabled */ unsigned int lsb$g_mbx_array [12]; /* Port driver's spinlock and timer queue element. */ void *lsb$a_portlock; /* S-Address of LAN's port driver lock */ void *lsb$a_portlock_orig; /* S-Address of original port lock */ char lsb$t_tqe [64]; /* S-TQE for the one second timer */ /* Logical LAN driver fields. */ /* The LSB$C_LLAN_FSET_MAX must be the same size as the maximum */ /* Failover set structure defined in LLAN_LANCP.H */ unsigned int lsb$l_llan_state; /* S-State of Logical LAN */ unsigned int lsb$l_llan_state_req; /* S-Requested state of Logical LAN */ char lsb$t_llan_failset [136]; unsigned int lsb$l_llan_set_failset; /* S-Logical LAN's set failset info. */ unsigned int lsb$l_llan_sho_failset; /* S-Logical LAN's show failset info. */ void *lsb$a_llan_lsb; /* S-Logical LAN's LSB address */ int lsb$l_priority; /* Priority (used for LAN Failover) */ unsigned short int lsb$w_nif_timeout; /* NIF timeout (used for LAN failover) */ unsigned short int lsb$w_nif_interval; /* NIF interval (used for LAN failover) */ char lsb$g_nif_node_name [64]; /* Node name list for NIF settings */ char lsb$g_nif_node_addr [64]; /* Node address list for NIF settings */ void *lsb$a_testmsg_rcv_addr; /* ll$rcv_test_msg routine address */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ struct _vlan *lsb$pq_vlan; /* Pointer to VLAN block */ #else unsigned __int64 lsb$pq_vlan; #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ struct _vlan *lsb$pq_vlan_orig; /* Pointer to VLAN block */ #else unsigned __int64 lsb$pq_vlan_orig; #endif #pragma __nomember_alignment char lsb$t_vlandata [32]; /* VLAN set/show info */ #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif unsigned int (*lsb$a_service_rtn)(); /* Address of dev$service_rtn, generic entry point */ unsigned int lsb$l_first_rcv_tm; /* Timestamp - first frame received */ /* These are spare fields for debugging */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { #pragma __nomember_alignment __int64 lsb$q_lan_qreserved [8]; int lsb$l_lan_reserved [16]; } lsb$r_spare_u; /* two drivers that have two modules that need a common section defined here. */ /* The two sections will be a union so that they are overlayed on top of each */ /* other. */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __union { /*************************************************************************** */ /* Define the CSMACD common section of the LSB. */ /*************************************************************************** */ #pragma __nomember_alignment __struct { unsigned int lsb$l_csmacd_elan_state_req; /* ELAN state request */ __union { unsigned int lsb$l_csmacd_elan_state; /* ELAN state */ __struct { unsigned lsb$v_csmacd_elan_active : 1; /* ELAN is joined/active */ unsigned lsb$v_csmacd_elan_start : 1; /* startup in progress */ unsigned lsb$v_csmacd_elan_shut : 1; /* shutdown in progress */ unsigned lsb$v_csmacd_elan_unavailable : 1; /* NIPG signalled elan down */ unsigned lsb$v_fill_53_ : 4; } lsb$r_fill_41_; } lsb$r_fill_40_; unsigned int lsb$l_csmacd_event_mask_req; /* Event mask request */ unsigned int lsb$l_csmacd_event_mask; /* Event mask */ unsigned int lsb$l_csmacd_ext_sense_req; /* Extended sense request */ unsigned int lsb$l_csmacd_ext_sense; /* Extended sense */ unsigned int lsb$l_csmacd_pvc_req; /* PVC request */ unsigned int lsb$l_csmacd_pvc; /* PVC identifer */ unsigned int lsb$l_csmacd_pvc_num; /* Number of PVC */ unsigned int lsb$l_csmacd_max_pktsize; /* MAX transmit size */ unsigned int lsb$l_csmacd_medium; /* LAN media type */ char lsb$t_csmacd_elan_name [64]; /* Name string */ char lsb$t_csmacd_elan_desc [64]; /* Desc string */ char lsb$t_csmacd_parent_dev [8]; /* Device name string */ __struct { /* LES_ADDR */ unsigned char lsb$b_csmacd_les_prefix [13]; /* LES_ADDR prefix */ unsigned char lsb$b_csmacd_les_esi [6]; /* LES_ADDR esi */ unsigned char lsb$b_csmacd_les_sel [1]; /* LES_ADDR selector */ } lsb$t_csmacd_les_addr; void *lsb$a_csmacd_lec_attr; /* Address of LEC attribute buffer */ unsigned int lsb$l_csmacd_lec_len; /* Length of LEC attribute buffer */ /*************************************************************************** */ /* Define the CSMACD common section of the LSB for Classical IP (CLIP) */ /*************************************************************************** */ unsigned int lsb$l_csmacd_clip_state_req; /* CLIP state request */ __union { unsigned int lsb$l_csmacd_clip_state; /* Classical IP state */ __struct { unsigned lsb$v_csmacd_lis_active : 1; /* LIS is joined/active */ unsigned lsb$v_csmacd_lis_start : 1; /* startup in progress */ unsigned lsb$v_csmacd_lis_shut : 1; /* shutdown in progress */ unsigned lsb$v_csmacd_lis_unavailable : 1; /* NIPG signalled LIS down */ unsigned lsb$v_fill_54_ : 4; } lsb$r_fill_43_; } lsb$r_fill_42_; void *lsb$a_csmacd_clip_attr; /* Address of CLIP attribute buffer */ unsigned int lsb$l_csmacd_clip_len; /* Length of CLIP attribute buffer */ unsigned int lsb$l_csmacd_clip_user_type; /* CLIP Client or Server */ __struct { /* LIS_ADDR */ unsigned char lsb$b_csmacd_clip_prefix [13]; /* LIS_ADDR prefix */ unsigned char lsb$b_csmacd_clip_esi [6]; /* LIS_ADDR esi */ unsigned char lsb$b_csmacd_clip_sel [1]; /* LIS_ADDR selector */ } lsb$t_csmacd_clip_server_addr; __struct { /* Client (our) ATM Address */ unsigned char lsb$b_csmacd_clip_atm_prefix [13]; /* Client addr prefix */ unsigned char lsb$b_csmacd_clip_atm_esi [6]; /* Client addr esi */ unsigned char lsb$b_csmacd_clip_atm_sel [1]; /* Client addr selector */ } lsb$t_csmacd_clip_atm_addr; unsigned char lsb$t_csmacd_clip_proto_addr [6]; /* Client IP Address */ char lsb$b_csmacd_clip_pad1 [2]; /* Pad to longword */ unsigned char lsb$t_csmacd_clip_subnet_mask [6]; /* Client IP Subnet Mask */ char lsb$b_csmacd_clip_pad2 [2]; /* Pad to longword */ char lsb$t_csmacd_clip_name [64]; /* Name string */ void *lsb$g_clip_pvc; /* Driver's copy of PVC info */ unsigned int lsb$l_csmacd_get_pvc; /* Sense pvc state */ unsigned int lsb$l_csmacd_set_pvc; /* Address of set clip pvc */ unsigned int lsb$l_csmacd_sho_pvc; /* Address of show clip pvc */ unsigned int lsb$l_reserved; /* For longword alignment */ /*************************************************************************** */ /* Define the CSMACD common section of the LSB for Fore Thought */ /*************************************************************************** */ void *lsb$a_csmacd_lecs_cfg_handle; /* LECS config handle */ void *lsb$a_csmacd_lec_cfg_handle; /* LEC config handle */ void *lsb$a_csmacd_cbrock_handle; /* Context for ConfigCallback */ void *lsb$a_csmacd_elan_handle; /* ELAN handle */ void *lsb$a_csmacd_lec_iface_handle; /* LEC interface handle */ unsigned int lsb$l_csmacd_reserved_1; unsigned int lsb$l_csmacd_reserved_2; unsigned int lsb$l_csmacd_reserved_3; unsigned int lsb$l_csmacd_reserved_4; unsigned int lsb$l_csmacd_reserved_5; unsigned int lsb$l_csmacd_reserved_6; void *lsb$a_csmacd_clip_handle; /* CLIP handle */ void *lsb$a_csmacd_clip_cfg_handle; /* CLIP config handle */ void *lsb$a_csmacd_clip_iface_handle; /* CLIP interface handle */ unsigned int lsb$l_csmacd_reserved_7; unsigned int lsb$l_csmacd_reserved_8; unsigned int lsb$l_csmacd_reserved_9; unsigned int lsb$l_csmacd_reserved_10; unsigned int lsb$l_csmacd_reserved_11; unsigned int lsb$l_csmacd_reserved_12; } lsb$t_csmacd; /*************************************************************************** */ /* Define the FDDI common section of the LSB. */ /*************************************************************************** */ __struct { unsigned int lsb$l_fddi_dlver; /* S-Data Link Arch version */ unsigned int lsb$l_fddi_t_max; /* S-Max token rotation time */ unsigned int lsb$l_fddi_t_neg; /* S-Negotiated TRT */ unsigned int lsb$l_fddi_t_req; /* S-Requested TRT */ unsigned int lsb$l_fddi_tvx; /* S-Valid transmission time */ unsigned int lsb$l_fddi_rtto; /* S-Restricted Token Timeout */ unsigned int lsb$l_fddi_rpe; /* S-Ring Purger Enable */ unsigned int lsb$l_fddi_lem; /* S-LEM threshold */ unsigned int lsb$l_fddi_rer; /* S-Ring Error Reason */ unsigned int lsb$l_fddi_rjr; /* S-Reject Reason */ unsigned int lsb$l_fddi_lee; /* S-Link Error Estimate */ unsigned int lsb$l_fddi_una_dat; /* Upstream Neighbor DAT flag */ unsigned short int lsb$g_fddi_una [4]; /* S-Upstream neighbor address */ unsigned short int lsb$g_fddi_old_una [4]; /* Old Upstream neighbor address */ unsigned short int lsb$g_fddi_sif_conf_targ [4]; /* SIF Configuration Target */ unsigned short int lsb$g_fddi_sif_op_targ [4]; /* SIF Operational Target */ unsigned short int lsb$g_fddi_nif_targ [4]; /* NIF Target */ unsigned short int lsb$g_fddi_echo_targ [4]; /* ECHO Target */ unsigned short int lsb$g_fddi_dna [4]; /* S-Downstream neighbor address */ unsigned short int lsb$g_fddi_old_dna [4]; /* Old Downstream neighbor addr. */ unsigned int lsb$l_fddi_echo_dat; /* ECHO data, low byte valid only */ unsigned int lsb$l_fddi_echo_len; /* ECHO (data) packet length */ unsigned int lsb$l_fddi_phy_state; /* S-PHY state */ unsigned int lsb$l_fddi_link_state; /* S-Link state */ unsigned int lsb$l_fddi_rp_state; /* S-Ring Purger state */ unsigned int lsb$l_fddi_port_type; /* S-Port type (SAS=0) */ unsigned int lsb$l_fddi_nbr_phy; /* Neighbor PHY PORT type */ unsigned int lsb$l_fddi_dat; /* S-DAT results */ __union { unsigned int lsb$l_fddi_flags; __struct { unsigned lsb$v_fddi_boo : 1; /* Boot enable */ unsigned lsb$v_fddi_cty : 1; /* Claim token yield */ unsigned lsb$v_fddi_unto : 1; /* Upstream Neighbor time out */ unsigned lsb$v_fill_55_ : 5; } lsb$r_fill_45_; } lsb$r_fill_44_; unsigned int lsb$l_fddi_smt; /* Address of SMT user's UCB */ unsigned int lsb$l_fddi_smt_prm; /* Address of promiscuous SMT user's UCB */ unsigned int lsb$l_fddi_smt_type; /* Station type */ } lsb$t_fddi; /*************************************************************************** */ /* Define the Token Ring common section of the LSB. */ /*************************************************************************** */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif __struct { #pragma __nomember_alignment unsigned int lsb$l_tr_speed; /* S-Ring Speed */ unsigned int lsb$l_tr_etr; /* S-Early Token release enabled */ unsigned int lsb$l_tr_moncon; /* S-Monitor Contender enabled */ char lsb$b_fill_56_ [4]; #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif unsigned __int64 lsb$q_tr_naun; /* S-Nearest upstream neighbor */ #pragma __nomember_alignment unsigned int lsb$l_tr_rer; /* Ring Error Reason */ unsigned int lsb$l_tr_ier; /* Insert Error Reason */ unsigned int lsb$l_tr_pdn; /* S-Physical Drop number */ unsigned int lsb$l_tr_rgn; /* S-Ring number */ unsigned int lsb$l_tr_maxac; /* Max AC for this station */ unsigned int lsb$l_tr_fcfield; /* Enabled FC mask for station */ unsigned int lsb$l_tr_srcatmo; /* S-Source Routing cache age tmr */ unsigned int lsb$l_tr_srdtmo; /* S-Source Routing discovery tmr */ unsigned int lsb$l_tr_sr; /* S-Source Routing enabled */ void *lsb$a_tr_sr_tab; /* Pointer to SR xlation table */ unsigned int lsb$l_tr_sr_size; /* Entries in SR table */ unsigned int lsb$l_tr_sr_tabsiz; /* S-Real entries in SR table */ unsigned int lsb$l_tr_sr_tabbyte; /* S-Byte size of SR table */ unsigned int lsb$l_tr_sr_inuse; /* S-SR Entries currently in use */ unsigned int lsb$l_tr_sr_garbage; /* S-Time till next garbage coll */ unsigned int lsb$l_tr_sr_deleted; /* Number of entries deleted */ unsigned __int64 lsb$q_tr_sr_xplorq; /* Que of pending Explore VCRPs */ unsigned int lsb$l_tr_sr_xplorb; /* S-Number of Explore VCRPs allo */ unsigned int lsb$l_tr_sr_xplorc; /* S-Count of Explore ops done */ void *lsb$a_tr_fca; /* S-Pointer to FCA xlation table */ unsigned int lsb$l_tr_fca_used; /* S-Count of FCA entries in use */ unsigned int lsb$l_tr_fcmask; /* S-Current Func Addr mask */ void *lsb$a_tr_hdr; /* Pointer to header */ unsigned int lsb$l_tr_hdrsize; /* Size of header */ unsigned int lsb$l_tr_lnkstate; /* Link State */ } lsb$t_tr; /*************************************************************************** */ /* Define the ATM common section of the LSB. (None at this time.) */ /*************************************************************************** */ __struct { void *lsb$a_atm_drv_cm_vc_setup; /* */ void *lsb$a_atm_drv_cm_vc_teardown; /* */ void *lsb$a_atm_drv_cm_vc_flush; /* Flush transmit path */ void *lsb$a_atm_drv_cm_tm_command; /* Traffic Manager callback rtn. */ void *lsb$a_atm_drv_clip_xmt_done; /* CLIP Transmit complete rtn. */ void *lsb$a_atm_drv_clip_rcv; /* CLIP Receive rtn. */ void *lsb$a_atm_drv_handles; /* Pointer to Driver handles */ void *lsb$a_atm_usr_handles; /* Pointer to User handles */ void *lsb$a_atm_amm_handle; /* NIPG connection mgr AMM handle */ void *lsb$a_atm_addr_reg_handle; /* ADDR_REG handle adr */ void *lsb$a_atm_tm_an2_handle; /* NIPG Traffic Mgr handle adr */ void *lsb$a_atm_clip_handle; /* NIPG Classical IP handle */ void *lsb$a_atm_lec_handle; /* NIPG LAN emulation handle */ void *lsb$a_atm_rcv_handle; /* NIPG rcv pool/buffer handle */ void *lsb$a_atm_xmt_handle; /* NIPG xmt pool/buffer handle */ unsigned int lsb$l_atm_tqe_alloc; /* Number of TQE allocations done */ unsigned int lsb$l_atm_tqe_used; /* Number of active TQEs */ unsigned int lsb$l_atm_mem_alloc; /* Number of memory allocations done */ unsigned int lsb$l_atm_mem_used; /* Number of bytes in "active" allocations */ unsigned int lsb$l_atm_hwanum; /* Number of HWA available */ unsigned int lsb$l_atm_hwanum_used; /* Mask of HWA used */ /* FORE common code */ void *lsb$a_atm_cd_handle; /* Card driver handle */ void *lsb$a_atm_cd_callbacks; /* Card driver's entry points */ void *lsb$a_atm_module_profilep; /* */ unsigned int lsb$l_atm_max_vc; /* Max # of VCs */ unsigned int lsb$l_atm_reserved_1; /* For longword alignment */ unsigned int lsb$l_atm_reserved_2; /* For longword alignment */ unsigned int lsb$l_atm_reserved_3; /* For longword alignment */ unsigned int lsb$l_atm_reserved_4; /* For longword alignment */ unsigned int lsb$l_atm_reserved_5; /* For longword alignment */ } lsb$t_atm; /* end ATM; */ } lsb$r_medium_specific; } LSBDEF; #if !defined(__VAXC) #define lsb$l_flags lsb$r_fill_20_.lsb$l_flags #define lsb$v_created lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_created #define lsb$v_enabled lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_enabled #define lsb$v_benabled lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_benabled #define lsb$v_nmdis lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_nmdis #define lsb$v_elan lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_elan #define lsb$v_clip lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_clip #define lsb$v_timer lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_timer #define lsb$v_llan lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_llan #define lsb$v_faildev lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_faildev #define lsb$v_fast_timer lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_fast_timer #define lsb$v_fail_nvalid lsb$r_fill_20_.lsb$r_fill_21_.lsb$v_fail_nvalid #define lsb$l_nm_flags lsb$r_fill_22_.lsb$l_nm_flags #define lsb$v_nm_mac_addr lsb$r_fill_22_.lsb$r_fill_23_.lsb$v_nm_mac_addr #define lsb$q_quad_ctrsect lsb$r_lsb_quad_ctr_overlay.lsb$q_quad_ctrsect #define lsb$q_zerctr lsb$r_lsb_quad_ctr_overlay.lsb$q_zerctr #define lsb$w_sflmap lsb$r_fill_24_.lsb$w_sflmap #define lsb$v_sfl_exc lsb$r_fill_24_.lsb$r_fill_25_.lsb$v_sfl_exc #define lsb$v_sfl_ccf lsb$r_fill_24_.lsb$r_fill_25_.lsb$v_sfl_ccf #define lsb$v_sfl_shc lsb$r_fill_24_.lsb$r_fill_25_.lsb$v_sfl_shc #define lsb$v_sfl_opc lsb$r_fill_24_.lsb$r_fill_25_.lsb$v_sfl_opc #define lsb$v_sfl_ftl lsb$r_fill_24_.lsb$r_fill_25_.lsb$v_sfl_ftl #define lsb$v_sfl_rfd lsb$r_fill_24_.lsb$r_fill_25_.lsb$v_sfl_rfd #define lsb$v_sfl_tur lsb$r_fill_24_.lsb$r_fill_25_.lsb$v_sfl_tur #define lsb$v_sfl_tfl lsb$r_fill_24_.lsb$r_fill_25_.lsb$v_sfl_tfl #define lsb$w_rflmap lsb$r_fill_26_.lsb$w_rflmap #define lsb$v_rfl_bce lsb$r_fill_26_.lsb$r_fill_27_.lsb$v_rfl_bce #define lsb$v_rfl_fme lsb$r_fill_26_.lsb$r_fill_27_.lsb$v_rfl_fme #define lsb$v_rfl_ftl lsb$r_fill_26_.lsb$r_fill_27_.lsb$v_rfl_ftl #define lsb$v_rfl_rse lsb$r_fill_26_.lsb$r_fill_27_.lsb$v_rfl_rse #define lsb$v_rfl_rle lsb$r_fill_26_.lsb$r_fill_27_.lsb$v_rfl_rle #define lsb$l_trsflmap lsb$r_fill_28_.lsb$l_trsflmap #define lsb$v_trsfl_tur lsb$r_fill_28_.lsb$r_fill_29_.lsb$v_trsfl_tur #define lsb$v_trsfl_le lsb$r_fill_28_.lsb$r_fill_29_.lsb$v_trsfl_le #define lsb$v_trsfl_abs lsb$r_fill_28_.lsb$r_fill_29_.lsb$v_trsfl_abs #define lsb$v_trsfl_lf lsb$r_fill_28_.lsb$r_fill_29_.lsb$v_trsfl_lf #define lsb$v_trsfl_te lsb$r_fill_28_.lsb$r_fill_29_.lsb$v_trsfl_te #define lsb$v_trsfl_uf lsb$r_fill_28_.lsb$r_fill_29_.lsb$v_trsfl_uf #define lsb$v_trsfl_rc lsb$r_fill_28_.lsb$r_fill_29_.lsb$v_trsfl_rc #define lsb$l_trrflmap lsb$r_fill_30_.lsb$l_trrflmap #define lsb$v_trrfl_rc lsb$r_fill_30_.lsb$r_fill_31_.lsb$v_trrfl_rc #define lsb$v_trrfl_fce lsb$r_fill_30_.lsb$r_fill_31_.lsb$v_trrfl_fce #define lsb$l_triflmap lsb$r_fill_32_.lsb$l_triflmap #define lsb$v_trifl_lwf lsb$r_fill_32_.lsb$r_fill_33_.lsb$v_trifl_lwf #define lsb$v_trifl_sle lsb$r_fill_32_.lsb$r_fill_33_.lsb$v_trifl_sle #define lsb$v_trifl_tmo lsb$r_fill_32_.lsb$r_fill_33_.lsb$v_trifl_tmo #define lsb$v_trifl_rpt lsb$r_fill_32_.lsb$r_fill_33_.lsb$v_trifl_rpt #define lsb$v_trifl_bcn lsb$r_fill_32_.lsb$r_fill_33_.lsb$v_trifl_bcn #define lsb$v_trifl_dad lsb$r_fill_32_.lsb$r_fill_33_.lsb$v_trifl_dad #define lsb$v_trifl_psf lsb$r_fill_32_.lsb$r_fill_33_.lsb$v_trifl_psf #define lsb$v_trifl_rr lsb$r_fill_32_.lsb$r_fill_33_.lsb$v_trifl_rr #define lsb$l_trtflmap lsb$r_fill_34_.lsb$l_trtflmap #define lsb$v_trtfl_lwf lsb$r_fill_34_.lsb$r_fill_35_.lsb$v_trtfl_lwf #define lsb$v_trtfl_ssd lsb$r_fill_34_.lsb$r_fill_35_.lsb$v_trtfl_ssd #define lsb$v_trtfl_arf lsb$r_fill_34_.lsb$r_fill_35_.lsb$v_trtfl_arf #define lsb$v_trtfl_rr lsb$r_fill_34_.lsb$r_fill_35_.lsb$v_trtfl_rr #define lsb$l_char lsb$r_fill_36_.lsb$l_char #define lsb$v_devctr lsb$r_fill_36_.lsb$r_fill_37_.lsb$v_devctr #define lsb$v_devxidtest lsb$r_fill_36_.lsb$r_fill_37_.lsb$v_devxidtest #define lsb$v_mulseg lsb$r_fill_36_.lsb$r_fill_37_.lsb$v_mulseg #define lsb$v_rcvmgt lsb$r_fill_36_.lsb$r_fill_37_.lsb$v_rcvmgt #define lsb$v_vlan lsb$r_fill_36_.lsb$r_fill_37_.lsb$v_vlan #define lsb$v_virtual lsb$r_fill_36_.lsb$r_fill_37_.lsb$v_virtual #define lsb$v_linkvalid lsb$r_fill_36_.lsb$r_fill_37_.lsb$v_linkvalid #define lsb$v_autovalid lsb$r_fill_36_.lsb$r_fill_37_.lsb$v_autovalid #define lsb$v_jumbovalid lsb$r_fill_36_.lsb$r_fill_37_.lsb$v_jumbovalid #define lsb$l_sts lsb$r_fill_38_.lsb$l_sts #define lsb$v_run lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_run #define lsb$v_inited lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_inited #define lsb$v_mca_ovf lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_mca_ovf #define lsb$v_fat_err lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_fat_err #define lsb$v_blkctl lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_blkctl #define lsb$v_pchact lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_pchact #define lsb$v_need_dat_lock lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_need_dat_lock #define lsb$v_got_dat_lock lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_got_dat_lock #define lsb$v_ring_avail lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_ring_avail #define lsb$v_full_duplex lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_full_duplex #define lsb$v_hot_replace_drvr lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_hot_replace_drvr #define lsb$v_hot_replace_adap lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_hot_replace_adap #define lsb$v_fp_cpuaff lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_fp_cpuaff #define lsb$v_auto_ena lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_auto_ena #define lsb$v_jumbo_ena lsb$r_fill_38_.lsb$r_fill_39_.lsb$v_jumbo_ena #define lsb$a_elan_lsbs lsb$r_lsb_ptr_overlay.lsb$a_elan_lsbs #define lsb$a_port_lsbs lsb$r_lsb_ptr_overlay.lsb$a_port_lsbs #define lsb$a_clip_lsbs lsb$r_lsb_ptr_overlay.lsb$a_clip_lsbs #define lsb$q_lan_qreserved lsb$r_spare_u.lsb$q_lan_qreserved #define lsb$l_lan_reserved lsb$r_spare_u.lsb$l_lan_reserved #define lsb$t_csmacd lsb$r_medium_specific.lsb$t_csmacd #define lsb$l_csmacd_elan_state_req lsb$t_csmacd.lsb$l_csmacd_elan_state_req #define lsb$l_csmacd_elan_state lsb$t_csmacd.lsb$r_fill_40_.lsb$l_csmacd_elan_state #define lsb$v_csmacd_elan_active lsb$t_csmacd.lsb$r_fill_40_.lsb$r_fill_41_.lsb$v_csmacd_elan_active #define lsb$v_csmacd_elan_start lsb$t_csmacd.lsb$r_fill_40_.lsb$r_fill_41_.lsb$v_csmacd_elan_start #define lsb$v_csmacd_elan_shut lsb$t_csmacd.lsb$r_fill_40_.lsb$r_fill_41_.lsb$v_csmacd_elan_shut #define lsb$v_csmacd_elan_unavailable lsb$t_csmacd.lsb$r_fill_40_.lsb$r_fill_41_.lsb$v_csmacd_elan_unavailable #define lsb$l_csmacd_event_mask_req lsb$t_csmacd.lsb$l_csmacd_event_mask_req #define lsb$l_csmacd_event_mask lsb$t_csmacd.lsb$l_csmacd_event_mask #define lsb$l_csmacd_ext_sense_req lsb$t_csmacd.lsb$l_csmacd_ext_sense_req #define lsb$l_csmacd_ext_sense lsb$t_csmacd.lsb$l_csmacd_ext_sense #define lsb$l_csmacd_pvc_req lsb$t_csmacd.lsb$l_csmacd_pvc_req #define lsb$l_csmacd_pvc lsb$t_csmacd.lsb$l_csmacd_pvc #define lsb$l_csmacd_pvc_num lsb$t_csmacd.lsb$l_csmacd_pvc_num #define lsb$l_csmacd_max_pktsize lsb$t_csmacd.lsb$l_csmacd_max_pktsize #define lsb$l_csmacd_medium lsb$t_csmacd.lsb$l_csmacd_medium #define lsb$t_csmacd_elan_name lsb$t_csmacd.lsb$t_csmacd_elan_name #define lsb$t_csmacd_elan_desc lsb$t_csmacd.lsb$t_csmacd_elan_desc #define lsb$t_csmacd_parent_dev lsb$t_csmacd.lsb$t_csmacd_parent_dev #define lsb$t_csmacd_les_addr lsb$t_csmacd.lsb$t_csmacd_les_addr #define lsb$b_csmacd_les_prefix lsb$t_csmacd_les_addr.lsb$b_csmacd_les_prefix #define lsb$b_csmacd_les_esi lsb$t_csmacd_les_addr.lsb$b_csmacd_les_esi #define lsb$b_csmacd_les_sel lsb$t_csmacd_les_addr.lsb$b_csmacd_les_sel #define lsb$a_csmacd_lec_attr lsb$t_csmacd.lsb$a_csmacd_lec_attr #define lsb$l_csmacd_lec_len lsb$t_csmacd.lsb$l_csmacd_lec_len #define lsb$l_csmacd_clip_state_req lsb$t_csmacd.lsb$l_csmacd_clip_state_req #define lsb$l_csmacd_clip_state lsb$t_csmacd.lsb$r_fill_42_.lsb$l_csmacd_clip_state #define lsb$v_csmacd_lis_active lsb$t_csmacd.lsb$r_fill_42_.lsb$r_fill_43_.lsb$v_csmacd_lis_active #define lsb$v_csmacd_lis_start lsb$t_csmacd.lsb$r_fill_42_.lsb$r_fill_43_.lsb$v_csmacd_lis_start #define lsb$v_csmacd_lis_shut lsb$t_csmacd.lsb$r_fill_42_.lsb$r_fill_43_.lsb$v_csmacd_lis_shut #define lsb$v_csmacd_lis_unavailable lsb$t_csmacd.lsb$r_fill_42_.lsb$r_fill_43_.lsb$v_csmacd_lis_unavailable #define lsb$a_csmacd_clip_attr lsb$t_csmacd.lsb$a_csmacd_clip_attr #define lsb$l_csmacd_clip_len lsb$t_csmacd.lsb$l_csmacd_clip_len #define lsb$l_csmacd_clip_user_type lsb$t_csmacd.lsb$l_csmacd_clip_user_type #define lsb$t_csmacd_clip_server_addr lsb$t_csmacd.lsb$t_csmacd_clip_server_addr #define lsb$b_csmacd_clip_prefix lsb$t_csmacd_clip_server_addr.lsb$b_csmacd_clip_prefix #define lsb$b_csmacd_clip_esi lsb$t_csmacd_clip_server_addr.lsb$b_csmacd_clip_esi #define lsb$b_csmacd_clip_sel lsb$t_csmacd_clip_server_addr.lsb$b_csmacd_clip_sel #define lsb$t_csmacd_clip_atm_addr lsb$t_csmacd.lsb$t_csmacd_clip_atm_addr #define lsb$b_csmacd_clip_atm_prefix lsb$t_csmacd_clip_atm_addr.lsb$b_csmacd_clip_atm_prefix #define lsb$b_csmacd_clip_atm_esi lsb$t_csmacd_clip_atm_addr.lsb$b_csmacd_clip_atm_esi #define lsb$b_csmacd_clip_atm_sel lsb$t_csmacd_clip_atm_addr.lsb$b_csmacd_clip_atm_sel #define lsb$t_csmacd_clip_proto_addr lsb$t_csmacd.lsb$t_csmacd_clip_proto_addr #define lsb$b_csmacd_clip_pad1 lsb$t_csmacd.lsb$b_csmacd_clip_pad1 #define lsb$t_csmacd_clip_subnet_mask lsb$t_csmacd.lsb$t_csmacd_clip_subnet_mask #define lsb$b_csmacd_clip_pad2 lsb$t_csmacd.lsb$b_csmacd_clip_pad2 #define lsb$t_csmacd_clip_name lsb$t_csmacd.lsb$t_csmacd_clip_name #define lsb$g_clip_pvc lsb$t_csmacd.lsb$g_clip_pvc #define lsb$l_csmacd_get_pvc lsb$t_csmacd.lsb$l_csmacd_get_pvc #define lsb$l_csmacd_set_pvc lsb$t_csmacd.lsb$l_csmacd_set_pvc #define lsb$l_csmacd_sho_pvc lsb$t_csmacd.lsb$l_csmacd_sho_pvc #define lsb$l_reserved lsb$t_csmacd.lsb$l_reserved #define lsb$a_csmacd_lecs_cfg_handle lsb$t_csmacd.lsb$a_csmacd_lecs_cfg_handle #define lsb$a_csmacd_lec_cfg_handle lsb$t_csmacd.lsb$a_csmacd_lec_cfg_handle #define lsb$a_csmacd_cbrock_handle lsb$t_csmacd.lsb$a_csmacd_cbrock_handle #define lsb$a_csmacd_elan_handle lsb$t_csmacd.lsb$a_csmacd_elan_handle #define lsb$a_csmacd_lec_iface_handle lsb$t_csmacd.lsb$a_csmacd_lec_iface_handle #define lsb$l_csmacd_reserved_1 lsb$t_csmacd.lsb$l_csmacd_reserved_1 #define lsb$l_csmacd_reserved_2 lsb$t_csmacd.lsb$l_csmacd_reserved_2 #define lsb$l_csmacd_reserved_3 lsb$t_csmacd.lsb$l_csmacd_reserved_3 #define lsb$l_csmacd_reserved_4 lsb$t_csmacd.lsb$l_csmacd_reserved_4 #define lsb$l_csmacd_reserved_5 lsb$t_csmacd.lsb$l_csmacd_reserved_5 #define lsb$l_csmacd_reserved_6 lsb$t_csmacd.lsb$l_csmacd_reserved_6 #define lsb$a_csmacd_clip_handle lsb$t_csmacd.lsb$a_csmacd_clip_handle #define lsb$a_csmacd_clip_cfg_handle lsb$t_csmacd.lsb$a_csmacd_clip_cfg_handle #define lsb$a_csmacd_clip_iface_handle lsb$t_csmacd.lsb$a_csmacd_clip_iface_handle #define lsb$l_csmacd_reserved_7 lsb$t_csmacd.lsb$l_csmacd_reserved_7 #define lsb$l_csmacd_reserved_8 lsb$t_csmacd.lsb$l_csmacd_reserved_8 #define lsb$l_csmacd_reserved_9 lsb$t_csmacd.lsb$l_csmacd_reserved_9 #define lsb$l_csmacd_reserved_10 lsb$t_csmacd.lsb$l_csmacd_reserved_10 #define lsb$l_csmacd_reserved_11 lsb$t_csmacd.lsb$l_csmacd_reserved_11 #define lsb$l_csmacd_reserved_12 lsb$t_csmacd.lsb$l_csmacd_reserved_12 #define lsb$t_fddi lsb$r_medium_specific.lsb$t_fddi #define lsb$l_fddi_dlver lsb$t_fddi.lsb$l_fddi_dlver #define lsb$l_fddi_t_max lsb$t_fddi.lsb$l_fddi_t_max #define lsb$l_fddi_t_neg lsb$t_fddi.lsb$l_fddi_t_neg #define lsb$l_fddi_t_req lsb$t_fddi.lsb$l_fddi_t_req #define lsb$l_fddi_tvx lsb$t_fddi.lsb$l_fddi_tvx #define lsb$l_fddi_rtto lsb$t_fddi.lsb$l_fddi_rtto #define lsb$l_fddi_rpe lsb$t_fddi.lsb$l_fddi_rpe #define lsb$l_fddi_lem lsb$t_fddi.lsb$l_fddi_lem #define lsb$l_fddi_rer lsb$t_fddi.lsb$l_fddi_rer #define lsb$l_fddi_rjr lsb$t_fddi.lsb$l_fddi_rjr #define lsb$l_fddi_lee lsb$t_fddi.lsb$l_fddi_lee #define lsb$l_fddi_una_dat lsb$t_fddi.lsb$l_fddi_una_dat #define lsb$g_fddi_una lsb$t_fddi.lsb$g_fddi_una #define lsb$g_fddi_old_una lsb$t_fddi.lsb$g_fddi_old_una #define lsb$g_fddi_sif_conf_targ lsb$t_fddi.lsb$g_fddi_sif_conf_targ #define lsb$g_fddi_sif_op_targ lsb$t_fddi.lsb$g_fddi_sif_op_targ #define lsb$g_fddi_nif_targ lsb$t_fddi.lsb$g_fddi_nif_targ #define lsb$g_fddi_echo_targ lsb$t_fddi.lsb$g_fddi_echo_targ #define lsb$g_fddi_dna lsb$t_fddi.lsb$g_fddi_dna #define lsb$g_fddi_old_dna lsb$t_fddi.lsb$g_fddi_old_dna #define lsb$l_fddi_echo_dat lsb$t_fddi.lsb$l_fddi_echo_dat #define lsb$l_fddi_echo_len lsb$t_fddi.lsb$l_fddi_echo_len #define lsb$l_fddi_phy_state lsb$t_fddi.lsb$l_fddi_phy_state #define lsb$l_fddi_link_state lsb$t_fddi.lsb$l_fddi_link_state #define lsb$l_fddi_rp_state lsb$t_fddi.lsb$l_fddi_rp_state #define lsb$l_fddi_port_type lsb$t_fddi.lsb$l_fddi_port_type #define lsb$l_fddi_nbr_phy lsb$t_fddi.lsb$l_fddi_nbr_phy #define lsb$l_fddi_dat lsb$t_fddi.lsb$l_fddi_dat #define lsb$l_fddi_flags lsb$t_fddi.lsb$r_fill_44_.lsb$l_fddi_flags #define lsb$v_fddi_boo lsb$t_fddi.lsb$r_fill_44_.lsb$r_fill_45_.lsb$v_fddi_boo #define lsb$v_fddi_cty lsb$t_fddi.lsb$r_fill_44_.lsb$r_fill_45_.lsb$v_fddi_cty #define lsb$v_fddi_unto lsb$t_fddi.lsb$r_fill_44_.lsb$r_fill_45_.lsb$v_fddi_unto #define lsb$l_fddi_smt lsb$t_fddi.lsb$l_fddi_smt #define lsb$l_fddi_smt_prm lsb$t_fddi.lsb$l_fddi_smt_prm #define lsb$l_fddi_smt_type lsb$t_fddi.lsb$l_fddi_smt_type #define lsb$t_tr lsb$r_medium_specific.lsb$t_tr #define lsb$l_tr_speed lsb$t_tr.lsb$l_tr_speed #define lsb$l_tr_etr lsb$t_tr.lsb$l_tr_etr #define lsb$l_tr_moncon lsb$t_tr.lsb$l_tr_moncon #define lsb$q_tr_naun lsb$t_tr.lsb$q_tr_naun #define lsb$l_tr_rer lsb$t_tr.lsb$l_tr_rer #define lsb$l_tr_ier lsb$t_tr.lsb$l_tr_ier #define lsb$l_tr_pdn lsb$t_tr.lsb$l_tr_pdn #define lsb$l_tr_rgn lsb$t_tr.lsb$l_tr_rgn #define lsb$l_tr_maxac lsb$t_tr.lsb$l_tr_maxac #define lsb$l_tr_fcfield lsb$t_tr.lsb$l_tr_fcfield #define lsb$l_tr_srcatmo lsb$t_tr.lsb$l_tr_srcatmo #define lsb$l_tr_srdtmo lsb$t_tr.lsb$l_tr_srdtmo #define lsb$l_tr_sr lsb$t_tr.lsb$l_tr_sr #define lsb$a_tr_sr_tab lsb$t_tr.lsb$a_tr_sr_tab #define lsb$l_tr_sr_size lsb$t_tr.lsb$l_tr_sr_size #define lsb$l_tr_sr_tabsiz lsb$t_tr.lsb$l_tr_sr_tabsiz #define lsb$l_tr_sr_tabbyte lsb$t_tr.lsb$l_tr_sr_tabbyte #define lsb$l_tr_sr_inuse lsb$t_tr.lsb$l_tr_sr_inuse #define lsb$l_tr_sr_garbage lsb$t_tr.lsb$l_tr_sr_garbage #define lsb$l_tr_sr_deleted lsb$t_tr.lsb$l_tr_sr_deleted #define lsb$q_tr_sr_xplorq lsb$t_tr.lsb$q_tr_sr_xplorq #define lsb$l_tr_sr_xplorb lsb$t_tr.lsb$l_tr_sr_xplorb #define lsb$l_tr_sr_xplorc lsb$t_tr.lsb$l_tr_sr_xplorc #define lsb$a_tr_fca lsb$t_tr.lsb$a_tr_fca #define lsb$l_tr_fca_used lsb$t_tr.lsb$l_tr_fca_used #define lsb$l_tr_fcmask lsb$t_tr.lsb$l_tr_fcmask #define lsb$a_tr_hdr lsb$t_tr.lsb$a_tr_hdr #define lsb$l_tr_hdrsize lsb$t_tr.lsb$l_tr_hdrsize #define lsb$l_tr_lnkstate lsb$t_tr.lsb$l_tr_lnkstate #define lsb$t_atm lsb$r_medium_specific.lsb$t_atm #define lsb$a_atm_drv_cm_vc_setup lsb$t_atm.lsb$a_atm_drv_cm_vc_setup #define lsb$a_atm_drv_cm_vc_teardown lsb$t_atm.lsb$a_atm_drv_cm_vc_teardown #define lsb$a_atm_drv_cm_vc_flush lsb$t_atm.lsb$a_atm_drv_cm_vc_flush #define lsb$a_atm_drv_cm_tm_command lsb$t_atm.lsb$a_atm_drv_cm_tm_command #define lsb$a_atm_drv_clip_xmt_done lsb$t_atm.lsb$a_atm_drv_clip_xmt_done #define lsb$a_atm_drv_clip_rcv lsb$t_atm.lsb$a_atm_drv_clip_rcv #define lsb$a_atm_drv_handles lsb$t_atm.lsb$a_atm_drv_handles #define lsb$a_atm_usr_handles lsb$t_atm.lsb$a_atm_usr_handles #define lsb$a_atm_amm_handle lsb$t_atm.lsb$a_atm_amm_handle #define lsb$a_atm_addr_reg_handle lsb$t_atm.lsb$a_atm_addr_reg_handle #define lsb$a_atm_tm_an2_handle lsb$t_atm.lsb$a_atm_tm_an2_handle #define lsb$a_atm_clip_handle lsb$t_atm.lsb$a_atm_clip_handle #define lsb$a_atm_lec_handle lsb$t_atm.lsb$a_atm_lec_handle #define lsb$a_atm_rcv_handle lsb$t_atm.lsb$a_atm_rcv_handle #define lsb$a_atm_xmt_handle lsb$t_atm.lsb$a_atm_xmt_handle #define lsb$l_atm_tqe_alloc lsb$t_atm.lsb$l_atm_tqe_alloc #define lsb$l_atm_tqe_used lsb$t_atm.lsb$l_atm_tqe_used #define lsb$l_atm_mem_alloc lsb$t_atm.lsb$l_atm_mem_alloc #define lsb$l_atm_mem_used lsb$t_atm.lsb$l_atm_mem_used #define lsb$l_atm_hwanum lsb$t_atm.lsb$l_atm_hwanum #define lsb$l_atm_hwanum_used lsb$t_atm.lsb$l_atm_hwanum_used #define lsb$a_atm_cd_handle lsb$t_atm.lsb$a_atm_cd_handle #define lsb$a_atm_cd_callbacks lsb$t_atm.lsb$a_atm_cd_callbacks #define lsb$a_atm_module_profilep lsb$t_atm.lsb$a_atm_module_profilep #define lsb$l_atm_max_vc lsb$t_atm.lsb$l_atm_max_vc #define lsb$l_atm_reserved_1 lsb$t_atm.lsb$l_atm_reserved_1 #define lsb$l_atm_reserved_2 lsb$t_atm.lsb$l_atm_reserved_2 #define lsb$l_atm_reserved_3 lsb$t_atm.lsb$l_atm_reserved_3 #define lsb$l_atm_reserved_4 lsb$t_atm.lsb$l_atm_reserved_4 #define lsb$l_atm_reserved_5 lsb$t_atm.lsb$l_atm_reserved_5 #endif /* #if !defined(__VAXC) */ #define LSB$C_LSBDEF_LEN 7984 /* For compilation time size checking */ /* Source routing table entry */ #define SR$C_LOCAL 0 /* S-Node on local ring */ #define SR$C_UNKNOWN 2 /* S-Node is unknown (use STE) */ #define SR$C_KNOWN 4 /* S-Node has a known Route */ #define SR$C_STALE 1 /* S-Cached route info is stale */ #define SR$C_DELETED 3 /* S-Entry is deleted */ #define SR$C_EXPLORING 5 /* S-Currently Exploring Route */ #define SR$C_SR_SIZE 64 /* Size of entry */ #define SR$C_SR_SHIFT 6 /* Bits to shift for SR_SIZE */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif typedef struct _sr { #pragma __nomember_alignment unsigned __int64 sr$g_addr; /* S-Mac Address (canonical) */ unsigned int sr$l_state; /* S-State of entry */ unsigned int sr$l_ri_s; /* Size of RI field */ unsigned char sr$g_ri [32]; /* RI field */ unsigned int sr$l_lstxmttim; /* S-Stale xmit timer */ unsigned int sr$l_lstrcvtim; /* S-Stale recv timer */ unsigned int sr$l_staletim; /* S-Stale timer (time to delete) */ unsigned int sr$l_discvtim; /* S-Discovery timer */ /* State Values */ } SR; /* Functional address translation table entry */ #define FCA$C_FCA_ENTRIES 200 /* Entries in table */ #define FCA$C_FCA_SIZE 16 /* Size of entry */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif typedef struct _fca { #pragma __nomember_alignment unsigned __int64 fca$g_addr; /* Multicast address (canonical) */ unsigned int fca$l_fc_mask; /* Functional Address Mask */ unsigned int fca$l_fc_fill; /* Filler to make QW aligned */ } FCA; /* Trace entry */ #define TRC$Q_PK_DATA 0 #define TRC$G_PK_DATA 12 #define TRC$C_INIT_ENTRIES 256 /* Number of init time trace entries */ #define TRC$C_DEF_ENTRIES 2048 /* Number of default trace entries */ #define TRC$C_NUM_INT 8 /* Number of interrupt entries */ #define TRC$C_LENGTH 32 /* Entry length */ /* Trace entries go from 1-32 for common types and 33-64 for driver specific */ #define TRC$C_EXTENSION 128 /* Entry extension */ /* Common trace entries, 1-32. */ #define TRC$C_TIMER 1 /* One-second timer */ #define TRC$C_INTR 2 /* Interrupt */ #define TRC$C_FRK_START 3 /* Fork process started */ #define TRC$C_FRK_DONE 4 /* Fork process done */ #define TRC$C_FRK_ERROR 5 /* Fork error */ #define TRC$C_FRK_SOFT 6 /* Fork soft error */ #define TRC$C_STATE 7 /* State change */ #define TRC$C_INIT 8 /* First user startup */ #define TRC$C_CHNGPRO 9 /* User start/change/stop */ #define TRC$C_STOP 10 /* Last user stop */ #define TRC$C_SHUTDOWN 11 /* Device shutdown */ #define TRC$C_RCV_ISS 12 /* Receive issued */ #define TRC$C_RCV_DONE 13 /* Receive done */ #define TRC$C_RCV_ERR 14 /* Receive error */ #define TRC$C_RCV_PKT 15 /* Receive packet */ #define TRC$C_XMT_ISS 16 /* Transmit issued */ #define TRC$C_XMT_QUE 17 /* Transmit queued */ #define TRC$C_XMT_DONE 18 /* Transmit done */ #define TRC$C_XMT_ERR 19 /* Transmit error */ #define TRC$C_XMT_PKT 20 /* Transmit packet */ #define TRC$C_SEGMENT 21 /* Segment context */ #define TRC$C_SR_ENTRY 22 /* Source route entry change */ #define TRC$C_VCI_ACTION 23 /* VCI action */ #define TRC$C_LAN24 24 /* LAN common routines <23> */ #define TRC$C_LAN25 25 /* LAN common routines <24> */ #define TRC$C_LAN26 26 /* LAN common routines <25> */ #define TRC$C_LAN27 27 /* LAN common routines <26> */ #define TRC$C_LAN28 28 /* LAN common routines <27> */ #define TRC$C_LAN29 29 /* LAN common routines <28> */ #define TRC$C_LAN30 30 /* LAN common routines <29> */ #define TRC$C_LAN31 31 /* LAN common routines <30> */ #define TRC$C_LAN32 32 /* LAN common routines <31> */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif typedef struct _trc { #pragma __nomember_alignment unsigned __int64 trc$q_time; /* Trace entry RSCC timestamp */ unsigned int trc$l_sequence; /* Sequence number */ unsigned char trc$b_type; /* Entry type */ unsigned char trc$b_xmtcnt; /* Number of outstanding transmits */ unsigned char trc$b_rcvcnt; /* Number of outstanding receives */ unsigned char trc$b_misc; /* Driver state <3:0>, CPU <7:4> */ unsigned int trc$l_param1; /* Parameter 1 */ unsigned int trc$l_param2; /* Parameter 2 */ unsigned int trc$l_param3; /* Parameter 3 */ unsigned int trc$l_param4; /* Parameter 4 */ /* types and 65-128 for future expansion. The type is type mod 128. If the */ /* type is greater than 128, it is an extension to the entry of type mod 128. */ } TRC; #pragma __member_alignment __restore #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __restore /* Restore the previously-defined required ptr size */ #endif #ifdef __cplusplus } #endif #pragma __standard #endif /* __LSBDEF_LOADED */