Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

csi_open(3)

csi_close(3)

csi_cancel(3)

csi_ccan(3)

csi_reset(3)

intro(3)

xcsi(7)



  csi_dstat_nw(3)                     CLIX                     csi_dstat_nw(3)



  NAME

    csi_dstat_nw - Receives delayed status from a Command Status Interface
    (CSI) port

  LIBRARY

    Intergraph Device Library (libix.a)

  SYNOPSIS

    #include <sys/xio/xerr.h>

    #include <sys/xio/xio.h>

    int csi_dstat_nw(
      int channel ,
      int cmd ,
      char *sbuf ,
      int scnt ,
      int timeout ,
      struct xiosb *xiosb ,
      int efn );

  PARAMETERS

    channel   An integer representing a Command Status Interface channel

    cmd       A CSI command

    sbuf      A pointer to the delayed status buffer

    scnt      The size of the delayed status buffer

    timeout   The number of 1/60 second intervals to wait before aborting the
              request

    xiosb     A pointer to the xiosb structure

    efn       The event number associated with the request

  DESCRIPTION

    The csi_dstat_nw() function provides a mechanism to establish a receive
    buffer to catch delayed status over the Command Status Interface (CSI)
    port on the Image System Interface (ISI) board referenced by channel.  The
    channel must have been opened with csi_open().

    There is no synchronous version of this function since it is necessary to
    start the csi_cmd() after establishing delayed status.  Any other order of
    operation would introduce timing windows.



  2/94 - Intergraph Corporation                                              1






  csi_dstat_nw(3)                     CLIX                     csi_dstat_nw(3)



    The cmd parameter specifies the command identifier to associate the
    delayed status packet with a specific command packet to be sent at a later
    time.

    The sbuf parameter is a pointer to the delayed status buffer and must
    begin on a longword boundary.  The value of scnt is the size (in bytes) of
    sbuf.  This value must be greater than or equal to 20 which is the packet
    header size.

    The timeout parameter specifies the time limit in 1/60 second intervals to
    receive the delayed status packet.  Upon expiration, the request is
    aborted and an appropriate status is returned.  A timeout value of 0
    disables the timeout function.

    The efn parameter is the event flag number associated with the request.
    The xiosb parameter is a pointer to the xiosb structure updated upon
    completion of the request (see intro(3)).  The xfcnt member of the xiosb
    structure indicates the number of bytes transferred to the status buffer.

  RETURN VALUES

    If the asynchronous request is accepted by the XIO system, a value of 0
    will be returned by the request.  Otherwise, XIO_FAILURE will be returned.
    Upon completion of an accepted request, the status member of the xiosb
    structure will be set to either 0 if successful, or to one of the
    following failure codes if unsuccessful.

  ERRORS

    The csi_dstat_nw() function will fail if one of the following is true:

    [XIO_FAILURE]
           The system does not contain the driver needed to support this
           request or efn is invalid.

    [ISI_CHANNEL_NOT_OPEN]
           The specified channel is not open for this process.

    [BAD_DATA_BUFFER_ADDRESS]
           The sbuf buffer is not longword aligned or points to a nonwritable
           memory space.

    [BAD_DATA_BUFFER_SIZE]
           The value of scnt is smaller than the header size of 20 bytes.

    [PAGE_LOCK_FAILED]
           There is not enough physical memory available for this request at
           this time.

    [ISI_CANCELED]
           The request was canceled with either csi_close(), csi_ccan(),



  2                                              Intergraph Corporation - 2/94






  csi_dstat_nw(3)                     CLIX                     csi_dstat_nw(3)



           csi_reset(), or csi_cancel().

    [ISI_PARITY_ERROR]
           A parity error occurred during the transfer.

    [ISI_CYCLE_ERROR]
           A hardware handshake error occurred during the transfer.

    [ISI_TIMEOUT]
           The timeout expired before the status packet was received.

    [ISI_PROTOCOL_ERROR]
           A firmware handshake error occurred during the transfer.  This
           probably means that scnt was smaller than the actual size of the
           status packet.

    [ISI_HARDWARE_CHECK]
           A fatal status code was asserted on the DR11 status lines during
           the transfer.

  RELATED INFORMATION

    Functions:  csi_open(3), csi_close(3), csi_cancel(3), csi_ccan(3),
    csi_reset(3), intro(3)

    Files:  xcsi(7)




























  2/94 - Intergraph Corporation                                              3




Typewritten Software • bear@typewritten.org • Edmonds, WA 98026