Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ioctl(2)

read(2)

write(2)



  hsio(7)                             CLIX                             hsio(7)



  NAME

    hsio - High speed I/O driver

  DESCRIPTION

    The hsio driver provides an interface to the Raytheon High-Speed
    Input/Output (HSIO) board.  The special files associated with hsio are
    /dev/hsxp, where x specifies the HSIO board and p specifies the IOCT port
    on the HSIO board.

    Each HSIO board in the system is specified by its position on the Shared
    Resource (SR) Bus.  The HSIO board with the lowest SR Bus slot is
    referenced by a value of 0 for x.  The next HSIO board on the bus is
    address by a value of 1 and so forth.  Currently only one HSIO board is
    supported.

    There are four IOCT ports (a, b, c, and d) on each HSIO board which are
    specified by p.  IOCT port a (IOCTA) is read only.  IOCT port b (IOCTB) is
    write only.  IOCT port c (IOCTC) and IOCT port d (IOCTD) can be read or
    written.  Currently only IOCTC and IOCTD are supported.

    The ioctl(fildes, request, arg) function can be used with the following
    requests (defined in <sys/hs.h>):

    HSIO_BITE    If arg is nonzero, the board is reset and put into bite mode.
                 Then a simple bite test is performed.  A 0 is returned if the
                 test was successful.  The board is left in bite mode.  If arg
                 is 0, the board is taken out of bite mode.

    HSIO_RESET   Reset both the board and the driver.

    In addition to the standard ioctl() errors, errno may also have the
    following value:

    [EIO]   The board did not pass the bite test.

    The read(fildes,buf,nbyte) function can be used to read data from the HSIO
    board.  The buf parameter must start on a 4-byte boundary and nbyte must
    be a multiple of four.  The first 4-byte word in buf will be the control
    word received by the IOCT port.  The control word has the following
    format:

          ______________________________________________________________
         | MSB|    |    |    |    |    |    |    |    |     |    |  LSB|
         |  0 |  1 |  2 |  3 |  4 |  5 |  6 |  7 |  8 |  ...|  30|  31 |
         |______________|______________|______________|________________|
         |              |              |              |                |
         |      DEV     |      MOD     |      COM     |                |
         |______________|______________|______________|________________|




  2/94 - Intergraph Corporation                                              1






  hsio(7)                             CLIX                             hsio(7)



         |______________|______________|______________|________________|

    If MOD is 2, the driver will expect data to follow the control word and
    will place the data in buf following the control word.  If the amount of
    data received exceeds the size of buf, the remaining data will be
    discarded.  If no data is available, the read will return immediately with
    a value of 0.

    In addition to the standard read() errors, errno may also have one of the
    following values:

    [EIO]      A reset occurred during the read() or this is the first I/O
               operation since a reset occurred.

    [EACCES]   The IOCT is a write only port.

    The write(fildes, buf, nbyte) function can be used to transmit data to the
    HSIO board.  The buf parameter must start on a 4-byte boundary and nbyte
    must be a multiple of four.  The first 4-byte word in buf will be sent as
    a control word.  All remaining bytes will be sent as data.

    In addition to the standard write() errors, errno may also have one of the
    following values:

    [EBUSY]    The IOCT was busy sending a packet out, receiving a packet, or
               no First In First Out (FIFO) was available on the board.

    [EIO]      A reset occurred during the write() or this is the first I/O
               operation since a reset occurred.

    [EACCES]   The IOCT is a read only port.

  FILES

    /dev/hs*   Special files associated with hsio.

  RELATED INFORMATION

    Functions:  ioctl(2), read(2), write(2)















  2                                              Intergraph Corporation - 2/94




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