User guide

104 DC 900-1338I
Protocol Software Toolkit Programmer Guide
6.2.1 Link Control Tables
The protocol and utility tasks and the interrupt service routines communicate and
coordinate their operations for each link by means of a global link control table. One
link control table is allocated for each link. The link control table contains state infor-
mation, queue IDs, configuration parameters, SCC or IUSC register values and/or
addresses, transmit and receive control parameters, configuration-specific subroutine
addresses, statistics information, and so on. The link control table is defined in
/freeway/icpcode/proto_kit/src/spsstructs.h as follows:
/* LINK CONTROL TABLE (LCT) */
struct lct
{
bit16 lct_id; /* Link number */
bit8 lct_lact; /* Link active flag */
bit8 lct_flags; /* Flag bits byte */
bit16 lct_baud; /* baud rate constant */
bit8 lct_clkext; /* internal(1)/external(0) clock */
bit8 filler0;
bit16 lct_s_id; /* link control table session number */
bit16 filler1;
struct QCB_TYPE *lct_s2bq; /* SERVER-TO-BOARD BUFFER QUEUE */
struct QCB_TYPE *lct_b2sq; /* BOARD-TO-SERVER BUFFER QUEUE */
struct QCB_TYPE *lct_l2bq; /* LINK-TO-BOARD BUFFER QUEUE */
struct QCB_TYPE *lct_b2lq; /* BOARD-TO-LINK BUFFER QUEUE */
bit16 lct_s2bqid; /* SERVER-TO-BOARD BUFFER QUEUE ID */
bit16 lct_b2sqid; /* BOARD-TO-SERVER BUFFER QUEUE ID */
bit16 lct_l2bqid; /* LINK-TO-BOARD BUFFER QUEUE ID */
bit16 lct_b2lqid; /* BOARD-TO-LINK BUFFER QUEUE ID */
bit16 lct_hio_read_id; /* hio read queue's id */
bit16 lct_hio_write_id; /* hio write queue's id */
#if defined(ICP2424) || defined(ICP2432)
IUSC *lct_iusc ; /* pointer to serial controller */
#else
Z8530 *lct_scc ; /* pointer to serial controller */
11/14/97: Eric
says he will
change the
spsstructs.h file
to say -
BOARD-
instead of
_ICP- in the
comments. I
changed it now
to match the
text.