cl(7M)

cl - CrayLink Driver

As shipped in IRIX 6.5.5. Added in IRIX 6.5.5.

NAME
     cl - CrayLink Driver


SYNOPSIS
     /hw/xplink/raw/*/*


DESCRIPTION
     The cl module provides a raw device interface to XPC (cross partition
     communication).  These devices take advantage of the XPC rendezvous
     capabilities to allow DMA transfers directly from the source to the
     destination without any intermediate copying if possible.  The DMA
     operation is done using the BTE which supports transfers of multiple
     cache lines on cache line boundaries.  Therefore, in order to avoid the
     overhead of the cl driver copying data to an intermediate buffer, the
     source and destination must be 128 byte aligned.  If the transfer is not
     a multiple of 128 bytes, only the last part of the cache line will be
     copied through an intermediate buffer.


     The cross partition raw devices are located in the directory
     /hw/xplink/raw/<remote_partition>/<device_number>, where
     <remote_partition> is the partition ID to which a device should be
     opened, and the <device_number> specifies which of the 16 possible devies
     to open.  These devices appear in the hwgraph(4) the first time a remote
     partition is discovered (or activated) as two digit hexidecimal numbers.
     They are never removed.


     Once a cl device is opened using the open(2) system call (and closed
     using close(2)), the file descriptors may be used to exchanged data with
     the remote partition using the read(2), write(2), and select(2) system
     calls.  The devices provide a byte stream type interface.


     open(2), close(2), read(2), write(2), or select(2) will fail for the cl
     devices and return to the calling process if one or more of the following
     are true


     EIO         XPC could not be established for the partition requested.


     ENODEV      The partition to which communication is requested no longer
                 exists.


     ENODEV      The cl raw device requested does not exist on the remote
                 partition.
     EINTR       A synchronous read or write was interrupted before
                 completion.


     ENOTCONN    The XPC channel for this raw device has been unexpectedly
                 disconneced.


     EWOULDBLOCK The call would have blocked if the O_NONBLOCK flag had not
                 been specified to the open(2) function.


     EBUSY       The raw device is currently busy connecting or disconnecting
                 with the remote partition.


     EAGAIN      The XPC layer is still setting up.


     ENOTSUP     The partition we are trying to communicate with does not have
                 support for XPC.


FILES
     /hw/xplink/raw/*/*
     /var/sysgen/master.d/cl


SEE ALSO
     open(2), close(2), select(2), read(2), write(2), mkpart(1m), hwgraph(4)