Programming Interface Information: This information is NOT intended to be used as Programming Interfaces of z/VM.

#### NIDBK

Prolog

Control Block Contents
NIDBK DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### NIDBK Prolog

     Name       : HCPNIDBK
     Description: Network Interface Device Block.
     DSECT      : NIDBK
     Function   :
                  The NIDBK structure represents a Network Interface
                  Device.  One NIDBK exists for each virtual device
                  that is part of a simulated Network Interface Card
                  (NIC).  The NIDBK is an extension of the VDEV for
                  a fully-simulated OSA device (VDEVCLAS=CLASSPEC
                  and VDEVTYPE=TYPOSA).
     Located by :
                  VDEVNID  = Pointer to the NIDBK for this device
                  NICBK    = The NICBK contains pointers to each
                  NIDBK that is part of the adapter.
                  MPCBK    = The MPCBK contains pointers to the
                  NIDBKs representing READ-CTL and
                  WRITE-CTL devices in the MPC Group.
     CREATED BY :
                  CP DEFINE command processing (module HCPVDB)
     DELETED BY :
                  CP DETACH command processing (module HCPVDB)
     REFERENCES :
                  HCPDVTYP COPY - Specific device types
                  HCPEQUAT COPY - General CP equates
     SERIALIZED :
                  NICBK Lock (NICLKWRD) must be held EXCLUSIVE to create
                  or destroy the NIDBK.
                  Most fields within the NIDBK are serialized by the
                  VDEV Lock (VDEVLOCK) or by I/O protocol.  Exceptions
                  are:
                  NIDSTACK - Updated using CS logic.
     NOTES      : None.
     General Note :
                  None

#### NIDBK Control Block Content

#### NIDBK DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      NIDBK          Network Interface Device Block.
    0000    0 Character    8 NIDDESC        NID Description (e.g. IQDC)
    0008    8 Address      4 NIDVDEV        Pointer to VDEV
    000C   12 Address      4 NIDNICBK       Pointer to NICBK
    0010   16 Address      4 NIDFPNT        Pointer to NEXT NIDBK
    0014   20 Address      4 NIDBPNT        Pointer to PREV NIDBK
    0018   24 Bitstring    1 NIDTYPE        Network Device Type
    0019   25 Bitstring    1 NIDGWFCN       NIC device function
              00000000       NIDNOFCN       0 Unassigned
              00000001       NIDCTLRD       1 CTL-0 / CTL-READ
              00000002       NIDCTLWR       2 CTL-1 / CTL-WRITE
              00000003       NIDDATA        3 DATA device
    001A   26 Signed       2 NIDGWDEV (0)   NIC device index (0-xxxx)
    001A   26 Bitstring    1 NIDUA0         Unit Address (byte 0)
    001B   27 Bitstring    1 NIDUA          Unit Address
    001C   28 Bitstring    4 NIDSTSWD (0)   Status Word (summary for trace)
    001C   28 Bitstring    1 NIDLATCH       Device Latches
              1... ....      NIDBUSY        X'80' - Busy with a CCW
              .1.. ....      NIDNTRDY       X'40' - Device is NOTREADY
              ..1. ....      NIDCCW1        X'20' - This is First/Only CCW
              ...1 ....      NIDCCFLG       X'10' - Command Chaining in
                                            effect
              .... 1...      NIDNEWUC       X'08' - Last CCW caused UC
              .... .1..      NIDRSEVT       X'04' - Resetting-Event Latch
                                            Notes : NIDGWSTS is serialized by
                                            NIDSPNLK.
    001D   29 Bitstring    1 NIDGWSTS       Gateway Status
              1... ....      NIDMSPND       X'80' - Message pending from GW
              .1.. ....      NIDRDPND       X'40' - Read pending from VM
              ..1. ....      NIDRDACT       X'20' - Read active from VM
              ...1 ....      NIDWRACT       X'10' - Write active from VM
              .... 1...      NIDXDACT       X'08' - QDIO exchange is active
                                            Notes : NIDCNTRL is serialized by
                                            NIDSPNLK.
    001E   30 Bitstring    1 NIDCNTRL       Control options
              1... ....      NIDSUSPD       X'80' - Device is SUSPENDED
              .1.. ....      NIDSCHED       X'40' - RESUME is Scheduled
              ..1. ....      NIDUIPND       X'20' - Unsolicited Int Pending
              ...1 ....      NIDRESET       X'10' - Reset in Progress
              .... 1...      NIDDET         X'08' - DETACH in Progress
    001F   31 Bitstring    1 NIDUISTS       Pending Unsolicited Status
    0020   32 Bitstring    1 NIDCMD         Current CCW opcode
    0021   33 Bitstring    1 NIDDVPST       Posted Unit Status
    0022   34 Bitstring    1 NIDDVSTS       Latest Unit Status
    0023   35 Bitstring    1 NIDTRFLG       Extended Trace Flags
              1... ....      NIDTRCCW       X'80' - Trace CCW Data Buffer
    0024   36 Bitstring    2 NIDSNS (0)     Sense Data registers
    0024   36 Bitstring    1 NIDSNS0        Sense Byte 0 latches
              1... ....      NIDCMREJ       X'80' - Command Reject
              .1.. ....      NIDINTRQ       X'40' - Intervention Reqd
              ..1. ....      NIDBUSCK       X'20' - Bus-Out Check
              ...1 ....      NIDEQCHK       X'10' - Equipment Check
              .... 1...      NIDCDC         X'08' - Channel Data Check
              .... .1..      NIDCCC         X'04' - Channel Control Check
              .... ..1.      NIDIFCC        X'02' - Interface Control Check
              .... ...1      NIDCANCL       X'01' - Cancel Function
    0025   37 Bitstring    1 NIDSNS1        Sense Byte 1 latches
              1... ....      NIDRJRES       X'80' - Rejected by
                                            Resetting-Event
    0026   38 Bitstring    1 NIDPVCMD       Previous CCW opcode
    0027   39 Bitstring    1 NIDPVSTS       Previous CCW status
    0028   40 Signed       4 NIDRFCTR       Outstanding Reference Counter
    002C   44 Bitstring    2 *              Reserved
    002E   46 Signed       2 NIDIPCTR       Count of IP Addresses installed
    0030   48 Address      4 NIDXFRPT       Pointer to current buffer
    0034   52 Signed       4 NIDXFRLN       Bytes to/from VM buffer
    0038   56 Address      4 NIDIPNHD       Pointer to first IPNBK
    003C   60 Bitstring    4 *              Reserved
    0040   64 Address      4 NIDBCIPN       Pointer to Broadcast IPNBK
    0044   68 Address      4 NIDMCIPN       Pointer to Multicast IPNBK
         The NID Spin Lock (NIDSPNLK) serializes the following fields:
         NIDGWSTS - Gateway status flag NIDCNTRL - Device control flag NIDCPEBK
         - Pointer to the SUSPEND CPEBK NIDPNDFN - Function being suspended (see
         NIDGWFCN) NIDNDMHD - Pointer to the first message (NDMBK) NIDNDMTL -
         Pointer to the last message (NDMBK)
    0048   72 Signed       4 NIDSPNLK       NID Spin Lock
    004C   76 Address      4 NIDCPEBK       Pointer to SUSPEND CPEBK
    0050   80 Address      4 NIDSTACK       Pointer to Stacked NDMBK work
    0054   84 Bitstring    2 *              reserved
    0056   86 Signed       2 NIDNDMCT       Count of pending messages
    0058   88 Address      4 NIDNDMHD       Pointer to first NDMBK
    005C   92 Address      4 NIDNDMTL       Pointer to last NDMBK
    0060   96 Address      4 NIDMPCBK       Pointer to assigned MPC block
    0064  100 Bitstring    4 *              Reserved
         NIDTXCTS holds TX counters for the current Queue Writer.
    0068  104 Dbl-Word     8 NIDTXCTS (0)   Transmitted data counters
    0068  104 Signed       4 NIDTXUCN       TX Unicast NonRouter Bytes
    006C  108 Signed       4 NIDTXUCR       TX Unicast Router Bytes
    0070  112 Signed       4 NIDTXMC        TX Multicast Bytes
    0074  116 Signed       4 NIDTXBC        TX Broadcast Bytes
    0078  120 Signed       4 NIDTXUPK       TX Unicast NonRouter Packets
    007C  124 Signed       4 NIDTXRPK       TX Unicast Router Packets
    0080  128 Signed       4 NIDTXMPK       TX Multicast Packets
    0084  132 Signed       4 NIDTXBPK       TX Broadcast Packets
    0088  136 Signed       4 NIDTXERR       TX Bad Packets
    008C  140 Signed       4 NIDTXDSC       TX Discarded Packets
              00000028       NIDTXCLN       (*-NIDTXCTS) Length of NIDTXCTS
                                            area to clear
         NIDRXCTS holds RX counters for the current Queue Reader.
    0090  144 Dbl-Word     8 NIDRXCTS (0)   Inbound data counters
    0090  144 Signed       4 NIDRXUCN       RX Unicast NonRouter Bytes
    0094  148 Signed       4 NIDRXUCR       RX Unicast Router Bytes
    0098  152 Signed       4 NIDRXMC        RX Multicast Bytes
    009C  156 Signed       4 NIDRXBC        RX Broadcast Bytes
    00A0  160 Signed       4 NIDRXUPK       RX Unicast NonRouter Packets
    00A4  164 Signed       4 NIDRXRPK       RX Unicast Router Packets
    00A8  168 Signed       4 NIDRXMPK       RX Multicast Packets
    00AC  172 Signed       4 NIDRXBPK       RX Broadcast Packets
    00B0  176 Signed       4 NIDRXERR       RX Bad Packets
    00B4  180 Signed       4 NIDRXDSC       RX Discarded Packets
              00000028       NIDRXCLN       (*-NIDRXCTS) Length of NIDRXCTS
                                            area to clear
         End of NIDBK structure.
    00B8  184 Bitstring    1 NID$END (0)    End of NIDBK
              000000B8       NIDBKLN        *-NIDBK Length of NICBK in bytes
              00000017       NIDBKSZ        (*-NIDBK+7)/8 Size of NICBK in
                                            doublewords

#### NIDBK Storage Layout

    *** NIDBK - Network Interface Device Block.
    *
    *     +-------------------------------------------------------+
    *   0 |                       NIDDESC                         |
    *     +---------------------------+---------------------------+
    *   8 |         NIDVDEV           |         NIDNICBK          |
    *     +---------------------------+---------------------------+
    *  10 |         NIDFPNT           |         NIDBPNT           |
    *     +------+------+------+------+------+------+------+------+
    *  18 |:TYPE |:GWFCN|NIDUA0|NIDUA |:LATCH|:GWSTS|:CNTRL|:UISTS|
    *     +------+------+------+------+------+------+------+------+
    *  20 |NIDCMD|:DVPST|:DVSTS|:TRFLG|:SNS0 |:SNS1 |:PVCMD|:PVSTS|
    *     +------+------+------+------+------+------+------+------+
    *  28 |         NIDRFCTR          |/////////////|  NIDIPCTR   |
    *     +---------------------------+-------------+-------------+
    *  30 |         NIDXFRPT          |         NIDXFRLN          |
    *     +---------------------------+---------------------------+
    *  38 |         NIDIPNHD          |///////////////////////////|
    *     +---------------------------+---------------------------+
    *  40 |         NIDBCIPN          |         NIDMCIPN          |
    *     +---------------------------+---------------------------+
    *  48 |         NIDSPNLK          |         NIDCPEBK          |
    *     +---------------------------+-------------+-------------+
    *  50 |         NIDSTACK          |/////////////|  NIDNDMCT   |
    *     +---------------------------+-------------+-------------+
    *  58 |         NIDNDMHD          |         NIDNDMTL          |
    *     +---------------------------+---------------------------+
    *  60 |         NIDMPCBK          |///////////////////////////|
    *     +---------------------------+---------------------------+
    *  68 |         NIDTXUCN          |         NIDTXUCR          |
    *     +---------------------------+---------------------------+
    *  70 |         NIDTXMC           |         NIDTXBC           |
    *     +---------------------------+---------------------------+
    *  78 |         NIDTXUPK          |         NIDTXRPK          |
    *     +---------------------------+---------------------------+
    *  80 |         NIDTXMPK          |         NIDTXBPK          |
    *     +---------------------------+---------------------------+
    *  88 |         NIDTXERR          |         NIDTXDSC          |
    *     +---------------------------+---------------------------+
    *  90 |         NIDRXUCN          |         NIDRXUCR          |
    *     +---------------------------+---------------------------+
    *  98 |         NIDRXMC           |         NIDRXBC           |
    *     +---------------------------+---------------------------+
    *  A0 |         NIDRXUPK          |         NIDRXRPK          |
    *     +---------------------------+---------------------------+
    *  A8 |         NIDRXMPK          |         NIDRXBPK          |
    *     +---------------------------+---------------------------+
    *  B0 |         NIDRXERR          |         NIDRXDSC          |
    *     +---------------------------+---------------------------+
    *
    *** NIDBK - Network Interface Device Block.

#### NIDBK Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    NID$END        00B8
    NIDBCIPN       0040
    NIDBKLN        00B8 000000B8
    NIDBKSZ        00B8 00000017
    NIDBPNT        0014
    NIDBUSCK       0024 20
    NIDBUSY        001C 80
    NIDCANCL       0024 01
    NIDCCC         0024 04
    NIDCCFLG       001C 10
    NIDCCW1        001C 20
    NIDCDC         0024 08
    NIDCMD         0020
    NIDCMREJ       0024 80
    NIDCNTRL       001E
    NIDCPEBK       004C
    NIDCTLRD       0019 00000001
    NIDCTLWR       0019 00000002
    NIDDATA        0019 00000003
    NIDDESC        0000
    NIDDET         001E 08
    NIDDVPST       0021
    NIDDVSTS       0022
    NIDEQCHK       0024 10
    NIDFPNT        0010
    NIDGWDEV       001A
    NIDGWFCN       0019
    NIDGWSTS       001D
    NIDIFCC        0024 02
    NIDINTRQ       0024 40
    NIDIPCTR       002E
    NIDIPNHD       0038
    NIDLATCH       001C
    NIDMCIPN       0044
    NIDMPCBK       0060
    NIDMSPND       001D 80
    NIDNDMCT       0056
    NIDNDMHD       0058
    NIDNDMTL       005C
    NIDNEWUC       001C 08
    NIDNICBK       000C
    NIDNOFCN       0019 00000000
    NIDNTRDY       001C 40
    NIDPVCMD       0026
    NIDPVSTS       0027
    NIDRDACT       001D 20
    NIDRDPND       001D 40
    NIDRESET       001E 10
    NIDRFCTR       0028
    NIDRJRES       0025 80
    NIDRSEVT       001C 04
    NIDRXBC        009C
    NIDRXBPK       00AC
    NIDRXCLN       00B4 00000028
    NIDRXCTS       0090
    NIDRXDSC       00B4
    NIDRXERR       00B0
    NIDRXMC        0098
    NIDRXMPK       00A8
    NIDRXRPK       00A4
    NIDRXUCN       0090
    NIDRXUCR       0094
    NIDRXUPK       00A0
    NIDSCHED       001E 40
    NIDSNS         0024
    NIDSNS0        0024
    NIDSNS1        0025
    NIDSPNLK       0048
    NIDSTACK       0050
    NIDSTSWD       001C
    NIDSUSPD       001E 80
    NIDTRCCW       0023 80
    NIDTRFLG       0023
    NIDTXBC        0074
    NIDTXBPK       0084
    NIDTXCLN       008C 00000028
    NIDTXCTS       0068
    NIDTXDSC       008C
    NIDTXERR       0088
    NIDTXMC        0070
    NIDTXMPK       0080
    NIDTXRPK       007C
    NIDTXUCN       0068
    NIDTXUCR       006C
    NIDTXUPK       0078
    NIDTYPE        0018
    NIDUA          001B
    NIDUA0         001A
    NIDUIPND       001E 20
    NIDUISTS       001F
    NIDVDEV        0008
    NIDWRACT       001D 10
    NIDXDACT       001D 08
    NIDXFRLN       0034
    NIDXFRPT       0030

This information is based on z/VM V4R3.0. Last updated on 30 Apr 2002 at 17:01:39 EDT.
Copyright IBM Corporation, 1990, 2002