Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
ACC Programmer's Reference Guide > Chapter 3 ZCOM Tables and Data Structures

Interface Table

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Index

The interface table shown in Table 3-13 “Interface Table” is a structure that has one instance for each Mux interface card defined in the TTGEN configuration file. It is primarily used by the DAM for controlling the backplane interaction with the Mux interface card. (zift_type)

Table 3-13 Interface Table

Field Name

Field Description

Field Type

Size (Bytes)

istime

Time of ZMON control of card

int

4

bc1_addr

Level 1 Bus converter address

uns. char

1

bc_addr

Bus converter address for this card

uns.char

1

card_addr

Card address of this interface

uns.short

2

inhpa

Interface HPA value from TTGEN

long

8

iftype

Interface card type

uns.short

2

ifstat

Interface card status

uns.short

2

ischdl

Scheduler event flags

uns.short

2

itcntr

Interface terminal count

uns.short

2

ifrtry

Reset retry count

uns.short

2

irserr

Restart error count

uns.short

2

ifstcn

Status update request count

uns.short

2

intfno

Interface card number

uns.short

2

imaxports

Maximum # of ports per card

uns.short

2

imaxsubc_port

Max. # of subchannels per port

uns.short

2

imaxsubc_card

Max. # of subchannels per card

uns.short

2

imaxterms

Max. # of terminals per card

uns.short

2

ifname

Firmware download file name

char [256]

256

iffldt

Download file link time

uns.int

4

iffnmn

Download file module name

char [12]

12

ifrudt

ROM label: ROM update time

uns.int

4

ifrmnm

ROM label: module name

char [12]

12

ifrrev

ROM label: revision code

char [8]

8

ifwinfo

Firmware run-time information word

uns.short

2

ifboff

Buffer pointer adjusted offset

uns.short

2

spare1

Reserved, not used

int

4

intfcq

Interface control queue

struct

56

ifdmaq

DMA receive buffer queue

struct

56

txcx_head

Express queue terminal lists

Pointer

8

txca_head

High-priority queue terminal lists

Pointer

8

txcb_head

Low-priority queue terminal lists

Pointer

8

itxlstx

Express terminal list headers

Pointer

8

itxlsta

High priority terminal list headers

Pointer

8

itxlstb

Low priority terminal list headers

Pointer

8

iplimit

Port unack TX limit (in bytes)

Pointer

8

ipbytes

Port unack TX size (in bytes)

Pointer

8

ipstat

Port status/Subchannel status

Pointer

8

ipcntr

Pointer to terminal count per port

Pointer

8

iportn

Pointer to port configuration bytes

Pointer

8

ifplook

PTT lookup table pointer

Pointer

8

ifcmdbp

Current backplane command buffer pointer

Pointer

8

ilock

Pointer to IFT lock

Pointer

8

ihpap

Pointer to HPA entry

Pointer

8

card

Card type specific information

Union of:

bsp
mmp

3616
18592

 

In the following definitions of the different fields, there are references to $PORT, $FIRQ and $STDT, transactions. For more information on these transactions, refer to the backplane protocol descriptions.

ISTIME - Time of last ZMON restart/shutdown this card.

This field contains the time (seconds since the Epoch) when ZMON last processed a restart or shutdown request for this card. It is used internally by ZMON to detect and ignore multiple restart/shutdown requests.

BC1_ADDR - First level bus converter address for this MUX interface card

For HP9000 Series K systems the address is of the form bc1/bc/s. This field refers to the first level bus converter address indicated as bc1. For other systems this field is initialized to zero.

BC_ADDR - Bus converter address for this MUX interface card

This field contains the I/O bus converter address representing the I/O bus that the MUX interface card is installed in. On systems that contain only one I/O bus (S8x7, I30, H50, etc), this field is initialized to zero.

CARD_ADDR - Card address for this MUX interface card

This field contains the I/O card address representing the I/O slot number that the MUX interface card is installed in. It is initialized by TTGEN from the slot value specified in the MUX statement of the TTGEN configuration file.

INHPA - Interface HPA value (from TTGEN)

The HPA value is built as follows:

Table 3-14 Interface HPA Value INHPA

63-32

31-28

27-18

17-14

13-12

11

10-6

5-2

1-0

All 1's (111...)

1111

Bus Address

Slot

Module

Page

Register Set

Reg No.

00

 

For the Mux interface in an HP-PB standard backplane, the card address is 4 x slot number. In the TTGEN configuration file, the card address is given as BUS:SLOT (e.g., 0:48), or BUS:BUS:SLOT. Here the 10-bit Bus Address field is translated from the 1's complement of BUS (i.e., 1023-BUS). The Slot field is specified by SLOT/4. The Module, Page, Register Set, and Reg No. fields are set to 0. For the example of BUS:SLOT=0:48, the HPA is 0xFFFB0000. For EISA standard backplanes the address is the slot number.

IFTYPE - Interface card type

Specified in TTGEN through the interface definition (the keyword MUX) with the following results:

IFTYPE   = ZCOM_ITYPE_Z7200A(6)  - Z7200A HP-PB ACC 8-channel Mux
IFTYPE = ZCOM_ITYPE_Z7350A(7) - Z7350A HP-PB ACC 2-channel Mux
IFTYPE = ZCOM_ITYPE_Z7400A(8) - Z7400A EISA ACC 8-channel Mux
IFTYPE = ZCOM_ITYPE_Z7300A(9) - Z7300A HP-PB ACC 4-port E1/T1
IFTYPE = ZCOM_ITYPE_Z7340A(11) - Z7340A PCI ACC 8-channel Mux

This field allows for the future support of extra interface types.

IFSTAT - interface card status

This word indicates the current status of the Mux card. It is updated by the driver. Bit 15 indicates whether the card is usable (when set) or not (when cleared).

Table 3-15  Interface Card Status IFSTAT

Symbol

Value (hex)

Meaning

ZCOM_IFSTAT_BOOT

0x0000

Driver and interface not initialized

ZCOM_IFSTAT_RST

0x8001

Being reset

ZCOM_IFSTAT_TMO

0x8002

Timed out

ZCOM_IFSTAT_PWF

0x8003

Power failed

ZCOM_IFSTAT_DWN

0x0004

Card down (due to serious error)

ZCOM_IFSTAT_ACT

0x8005

Up and active

ZCOM_IFSTAT_FWF

0x8006

Firmware failure

ZCOM_IFSTAT_OPR

0x8007

Operator reset

ZCOM_IFSTAT_DMI

0x8008

DMA interrupt error

ZCOM_IFSTAT_CDD

0x8009

Card dead, no activity

ZCOM_IFSTAT_NOC

0x000A

Card absent

ZCOM_IFSTAT_FER

0x800B

Hardware fatal error

ZCOM_IFSTAT_DSB

0x000C

Card disabled

ZCOM_IFSTAT_INC

0x000D

Card startup incomplete

ZCOM_IFSTAT_SUSP

0x000E

Card being suspended (OLAR)

 

When the card status is down (i.e., ZCOM_IFSTAT_DWN), it can only be resumed through a control request to the driver which will reset the driver and the interface card (via "zmon restart").

ISCHDL - Scheduler event flags

The scheduler uses this word to store the event flags that control the state of the backplane.

Figure 3-6 Scheduler Event Flags ISCHDL

Scheduler Event Flags ISCHDL

ITCNTR - Interface terminal counter

The terminal counter is the actual number of terminals defined on this Mux interface card.

IFRTRY - Reset retry count

This is used to count the number of times the Mux interface has been reset due to a backplane timeout, or firmware failure. It is incremented by ZMON each time the Mux card is reset by a request from the DAM. If it reaches an unsatisfactory level, the Mux card will be disabled (set down) by ZMON.

The driver will decrement the retry count if it is not zero after every 30 successful status $STDT replies (i.e., every 5 minutes). If an unstable Mux interface fails and restarts too often, the ZCOM subsystem will mark it as "down" and stop using it.

IRSERR - Restart error count

This field contains the count of the number of errors which occurred during the last restart or enable. These errors are due to $PORT or $TERM commands and will be separately reported to ZMON. This field is kept for information purposes only.

IFSTCN - Status update request count

This counts the number of $STDT replies until IFRTRY will be decremented.

INTFNO - Interface card number

This is the interface number that was specified in the Mux statement of the TTGEN configuration file.

IMAXPORTS - Maximum number of ports on card.

This field contains the maximum number of ports supported by this specific ACC interface card.

IMAXSUBC_PORT - Maximum number of subchannels per port.

This is the maximum number of subchannels supported on each port of this ACC interface card. The minimum value of this field is 1 (e.g. 2/8-channel cards).

IMAXSUBC_CARD - Maximum number of subchannels on card.

This field contains the number of subchannels supported by this card. For a non-E1/T1 card, this value should be the same as the imaxports field.

IMAXTERMS - Maximum number of terminals allowed on card.

This field contains the maximum number of terminal ZLUs that may be configured on this card.

IFNAME - Firmware download file name

This contains the full path name of the firmware file to be downloaded into this Mux card whenever the ZCOM subsystem is started, the Mux card is reset, or is recovering from a powerfail or firmware failure. It is initialized from the information supplied in the Mux statement of the TTGEN configuration file. This field is a maximum of 256 bytes including the null terminator byte.

IFFLDT, IFFMNM - Download file link time and module name

These two fields contain the time (since Epoch) when the download firmware file is linked (by zlink program) and its module name. These are set up by zlink and stored in the download file. When ZMON loads the file to the Mux interface card, it extracts them from the file and puts them into these two fields. The MX command in zmntr displays these fields.

IFRUDT, IFRMNM, IFRREV - ROM update time, module name and revision code

The ZCOM subsystem ROM contains its module name, revision code and update time in byte locations 40~5D hex. ZMON reads these bytes from the Mux interface card when it loads the firmware file, and stores them in these fields. The MX command in zmntr displays these fields. The time is translated from the ROM ASCII time stamp and stored in Epoch format.

IFWINFO - Firmware run-time information word

This is a 16-bit field refreshed by the DAM once every 10 seconds with the runtime information word from the Mux firmware. It contains the average percentage activity of the Mux interface for the previous 10 seconds and the type code of the Mux front panel connected.

IFBOFF - Buffer pointer adjusted offset

Contained with the interface table are buffers that are used for DMA transfers between the driver and the Mux card. These buffers are a multiple of 64 bytes and must be aligned on a 64-byte address boundary. This field contains the byte offset needed to cause the buffers to start on a 64-byte boundary. TTGEN initializes this field with the byte offset value.

INTFCQ - Interface control queue (zqhd_type)

This queue contains pending port requests from application programs. The operation of this queue is described in the section on the DAM. This format of the queue header structure (zqhd_type) is described later in this chapter.

IFDMAQ - DMA receive buffer queue (zqhd_type)

Holds the current receive buffer during an $RXDT DMA transfer. This format of the queue header structure (zqhd_type) is described later in this chapter.

TXCX_HEAD - Pointer to head of the express queue linked lists

TXCA_HEAD - Pointer to head of the high-priority queue linked lists

TXCB_HEAD - Pointer to head of the low-priority queue linked lists

ITXLSTX - Pointer to express terminal list array (in union)

ITXLSTA - Pointer to high-priority terminal list array (in union)

ITXLSTB - Pointer to low-priority terminal list array (in union)

IPLIMIT - Pointer to port/subchannel unack Tx limit array (in union)

IPBYTES - Pointer to port/subchannel unack Tx size array (in union)

IPSTAT - Pointer to port/subchannel status array (in union)

IPCNTR - Pointer to # of terminals per port/subchannel array (in union)

IPORTN - Pointer to port configuration array (in union)

IFPLOOK - Pointer to PTT interrupt vector array.

IFCMDBP - Pointer to current backplane command buffer (in union)

These fields are used internally by the ZCOM subsystem.

CARD - Interface card specific data structures (union)

This field is a union which contains two structures. These structures hold information that are specific to the type of interface card associated with this IFT entry. The structure card.mmp is used if the IFT is associated with an 8-port PCI or E1/T1 interface card. Otherwise, the card.bsp structure is used for 2/8-channel NIO and EISA interface cards.

CARD.MMP has the following fields shown in Table 3-16 “CARD.MMP Structure”.

Table 3-16 CARD.MMP Structure

Field Name

Field Description

Field Type

Size (Bytes)

itxlstx

Express terminal list headers

struct[128]

128*40

itxlsta

High priority terminal list headers

struct[128]

128*40

itxlstb

Low priority terminal list headers

struct[128]

128*40

iplimit

Port unack TX limit (in bytes)

uns.int [128]

128*4

ipbytes

Port unack TX size (in bytes)

int [128]

128*4

ipendg_bufs

Total pending Tx size (in bufrs)

int [128]

128*4

ipstat

Port status/Subchannel status

uns.short [128]

128*2

ipcntr

Terminal count per port

uns.short [128]

128*2

iportn

Port configuration bytes

struct[4]

4*4

isubch_buf

Subchannel configuration

struct[4]

4*256

ifcmdbuf

Current backplane command buffer

uns.char [16]

16

iscratch

Scratch area for buffer alignment

uns.char [64]

64

icfg_lkupt

Card configuration parameters

struct

64

 

CARD.BSP has the following fields shown in Table 3-17 “CARD.BSP Structure”.

Table 3-17 CARD.BSP Structure

Field Name

Field Description

Field Type

Size (Bytes)

itxlstx

Express terminal list headers

struct[8]

8*40

itxlsta

High priority terminal list headers

struct[8]

8*40

itxlstb

Low priority terminal list headers

struct[8]

8*40

iplimit

Port unack TX limit (in bytes)

uns.int [8]

8*4

ipbytes

Port unack TX size (in bytes)

int [8]

8*4

ipstat

Port status/Subchannel status

uns.short [8]

8*2

ipcntr

Terminal count per port

uns.short [8]

8*2

iportn

Port configuration bytes

struct[8]

8*4

ifirqbp

$FIRQ reply buffer pointer

pointer

8

irespbp

Backplane response buffer pointer

pointer

8

istdtbp

$STDT reply buffer pointer

pointer

8

ifpntr

Pointer to current PTT

pointer

8

ifcmdbuf

Current backplane command buffer

uns.char [256]

256

ifirqbuf

FIRQ response buffer

uns.char [64]

64

irespbuf

Backplane response buffer

uns.char [64]

64

istdtbuf

STDT status buffer

uns.char [2048]

2048

iscratch

Scratch area for buffer alignment

uns.char [64]

64

 

The fields for both the card.mmp and card.bsp structures are described below. In many cases, the field names in the two structures are the same and in such cases, their function is identical. Only the number of elements in the array is different. The itxlstx through iportn fields are arrays indexed by the communication channel. For the 2/8-port ACC cards (e.g. card.bsp), each element in the array represents a physical port. For the 4-port E1/T1 ACC cards, these arrays are indexed by a combination of port and subchannel. Specifically elements 0-31 represent port 0 and subchannels 0 to 31; elements 32-63 represent port 1 and subchannels 0 to 31, etc.

ITXLSTX - Express transmit list headers (zptl_type)

This field is an array of list headers for the express transmit requests associated with each port or subchannel of the Mux card. Each list header represents the head of a linked list of PTTs that have pending express transmit requests waiting to be sent to the Mux card. The list linkage is maintained through the PTTXLX pointer in each physical terminal table. The express transmit requests themselves are linked to the queue maintained by the PTTXQX field in each PTT. The structure of the list header is shown below. There is one copy of this list header for each port or subchannel on the Mux interface.

Table 3-18 ITXLSTX Express Transmit List Headers

Field Name

Field Description

Field Type

Size (Bytes)

nextl

Pointer to next active TX list

pointer

8

prevl

Pointer to previous active Tx list

pointer

8

tmcount

Number of terminals in the list

uns.short

2

subchn

Subchannel number of this list

uns.char

1

spare1

Reserved, unused

char

1

spare2

Reserved, unused

int

4

tmhead

Pointer to 1st terminal table in list

pointer

8

tmtail

Pointer to last terminal table in list

pointer

8

 

ITXLSTA - High priority transmit list headers (zptl_type)

This field is an array of list headers for the high priority transmit requests associated with each port or subchannel of the Mux card. Each list header represents the head of a linked list of PTTs that have pending high priority transmit requests waiting to be sent to the Mux card. The list headers in this array function identically to ITXLSTX only for the high priority transmit requests. A terminal may be linked to ITXLSTX, ITXLSTA and ITXLSTB all at the same time, if it has express, high, and low priority transmit requests in progress.

ITXLSTB - Low priority transmit list headers (zptl_type)

The list headers in this array function identically to ITXLSTA only for the low priority transmit requests. A terminal may be linked to ITXLSTX, ITXLSTA and ITXLSTB all at the same time, if it has express, high, and low priority transmit requests in progress.

IPLIMIT - Port unacknowledged transmit limit (in bytes)

This array contains the limit (in bytes) of all unacknowledged transmit messages to terminals belonging to the same port or subchannel of this interface. This array contains one element, one for each port or subchannel of the Mux card. If the DAM issues a transmit request to the Mux card and the Mux card does not have enough free buffers to hold the request data, the Mux will reject the request with an "out of buffers" error. The DAM will retry the request after an unacknowledged transmit request completes. This field is used to minimize the number of retries (and thereby increase overall performance) by imposing a limit on the size of unacknowledged transmit requests. This array is initialized by TTGEN from the default value hpiplim in the ZCOM header. This value is configured through the Port-Limit or E1T1-Port-Limit parameter in the TTGEN configuration file.

IPBYTES - Port unack TX size (in bytes)

This array is maintained by the DAM and keeps track of the number of 256-byte buffers currently in use by all unacknowledged transmit messages to a port of this interface card. The ipbytes array contains one element for each port/subchannel on the Mux card. The DAM compares the iplimit value for a port with the ipbytes value times 256 to determine whether it should issue a transmit request immediately or wait until a previously issued transmit request completes. The DAM uses this method to predict when the Mux card will reject a request with an “out of buffers” error and can thereby avoid sending a request now which has a high probability of needing to be retransmitted later.

IPENDG_BUFS - Total pending transmit size (in # of buffers)

This field is used internally by the ZCOM drivers.

IPSTAT - Port/Subchannel status

Depending on the card type this interface table is for, this ipstat field either contains the status of each subchannel in a 4-port E1/T1 ACC card, or the status of each port in a non-4-port E1/T1 ACC card (e.g., 2-port card or 8-port ACC card).

The individual ipstat bits are handled as follows:

ZCOM_IPSTAT_UND:
The undefined bit. Being undefined is synonymous with being not configured.
For a non-4-port card, this bit in ipstat indicates whether a port is defined or not.
For a 4-port card, this bit in ipstat indicates whether a subchannel is defined or not. However, for defined/undefined status, we must also keep track of whether ports are defined or not. So we will use another field, iportn, to indicate whether the ports these subchannels are related to are defined or not. If iportn[] is equal to -1, then the port is undefined. Note in the case of a 4-port card that if a port is marked as undefined, then all subchannels related to that port are marked as undefined. If a port is marked as defined, a subchannel may still be marked undefined until it is explicitly marked as defined. So for a 4-port card we need a way to keep separate track of whether ports and subchannels are defined or not.
ZCOM_IPSTAT_DWN:
The down bit. Indicates the status of ports.
For a non-4-port card, this bit in ipstat indicates whether a port is down or not.
For a 4-port card, the down status for the subchannels related to a port as a group are being used to indicate the down status of the port. For example, if a port is considered up, then all subchannels related to that port are marked as up in ipstat. If a port is considered down, then all subchannels related to that port are marked as down in ipstat. Individual subchannels related to that port cannot be marked up or down independent of the other subchannels for that port.
ZCOM_IPSTAT_DSB:
The disabled bit.
For a non-4-port card, this bit in ipstat indicates whether a port is disabled or not.
For a 4-port card, this bit in ipstat indicates whether a subchannel is disabled or not. Individual subchannels can be marked as disabled or enabled, independent of each other. For a 4-port card, a request may be sent down to the ZCOM software to enable or disable a "port". This just means marking all of the subchannels for that port as enabled or disabled. However, for 4-port cards, the ZCOM software does not keep track of the enabled/disabled status for ports. It only keeps track of the enabled/disabled status for subchannels via ipstat.
ZCOM_IPSTAT_TXB:
The out-of-transmit buffers bit.
For a non-4-port card, indicates the status of ports.
For a 4-port card, indicates the status of subchannels.
ZCOM_IPSTAT_TXBX:
The out-of-transmit-buffers (XPS queue) bit.
For a non-4-port card, indicates the status of ports.
For a 4-port card, indicates the status of subchannels.
The DAM maintains the port status to determine the usability of a port/subchannel. A port/subchannel is operating normally if the status value is zero. If it is out of transmit buffers, no new transmit data transfer will be initiated. If the port/subchannel is disabled, down or undefined, the DAM will ignore all processing for this port.

IPCNTR - Terminal count per port/subchannel

This field contains the number of terminals defined on each port/subchannel of this Mux interface card. It is initialized by TTGEN based on the number of Term entries in the TTGEN configuration file and is kept for informational purposes only.

IPORTN - Port configuration buffer (zpconf_type)

This array contains the configuration bytes for each port on the Mux card. The Port statements in the Port-Definition section of the TTGEN configuration file are used to define the initial values of this array. Each element of the array is associated with a single port on the Mux card. Each element can be dynamically configured by calling the zport routine. The layout is similar to the data portion of the $PORT backplane transaction command for the 2/8-channel ACC cards and is as shown in Table 3-19 “Port Configuration Buffer IPORTN”.

Table 3-19 Port Configuration Buffer IPORTN

31-30

29-28

27-26

25-24

23-22

21-20

19-16

15-14

13-0

ecode

sync

mode

parity

xclock

sclock

baud

pmode

spare

 

The layout for the 4-channel E1/T1 ACC card is as follows:

Table 3-20 4-Channel E1/T1 ACC Card Format

31-30

29-26

26-22

21-20

19-16

15-11

10-0

ecode

fmode

spare

sclock

spare

pmode

spare

 

ecode

-

Encoding modes

sync

-

Sync mode select

mode

-

Operating mode

parity

-

Parity select

xclock

-

Clock multiplier

sclock

-

Clock source

baud

-

Baud rate value

pmode

-

Port mode select

fmode

-

Frame mode select

spare

-

Reserve, not used

ISUBCH_BUF - Port subchannel configuration buffer (subchbuf_def)

This array contains the subchannel configuration bytes for each port on the ACC E1/T1 4-port Mux card. The Subch statements in the Subchannel-Definition section of the TTGEN configuration file are used to define the initial values of this array. Each element of the array is associated with a single port on the Mux card. Each element can be dynamically configured by calling the zconfig routine. The structure layout is as shown in Table 3-21 “Port Subchannel Configuration Structure”.

Table 3-21 Port Subchannel Configuration Structure

Field Name

Field Description

Field Type

Size (Bytes)

tmsl

Timeslot assignment array

uns.int[32]

32*4

spec

Subchannel specification array

uns.int[32]

32*4

 

Where:

Each element of the timeslot array has the structure shown in
Table 3-22 “Timeslot Array Element Structure”.

Table 3-22 Timeslot Array Element Structure

31-30

29

28-24

23-16

15-14

13

12-8

7-0

spare

TTI

TxSubch

TxFill

spare

RTI

RxSubch

RxFill

 

TTI

-

Transmit Timeslot Inhibit

TxSubch

-

Transmit subchannel number

TxFill

-

Transmit fill mask

RTI

-

Receive Timeslot Inhibit

xclock

-

Clock multiplier

RxSubch

-

Receive subchannel number

RxFill

-

Receive fill mask

spare

-

Reserved, not used (must be 0)

Each element of the subchannel specification array has the following structure:

Table 3-23  Subchannel Specification Array Element Structure

31-30

29-24

23-8

7

6-3

2-1

0

spare

ITBS

spare

INV

spare

mode

spare

 

ITBS

-

Individual Transmit Buffer Size

INV

-

Inversion flag

mode

-

Transmission mode

spare

-

Reserved, not used (must be 0)

IFIRQBP, IRESPBP, ISTDTBP - DMA reply buffer pointers (char *)

These fields point to the corresponding buffers kept at the end of the interface table that are used by the DAM for DMA operations. The actual values of these pointers are initialized at ZCOM subsystem initialization time by the LDM. These pointers are chosen by the LDM so that each buffer is 64-byte aligned. (The buffers must be aligned so that the DMA may read/write directly to them). These fields are not used for ACC E1/T1 cards.

IFPNTR - Pointer to active physical terminal table

This field contains the address of the currently active physical terminal table entry within this interface table. This field is not used for ACC E1/T1 cards It is maintained by the DAM.

IFCMDBUF - Current backplane command buffer

This field is the buffer area for DMA transfer of a backplane command to the Mux interface card. The actual area being used is offset by the number of bytes specified in IFBOFF. This area is accessed by the pointer field IFCMDBP.

IFIRQBUF, IRESPBUF, ISTDTBUF - DMA response buffers

These are response buffers that are written to by DMA read requests to the Mux interface card. The FIRQ buffer contains the results of an $FIRQ backplane transaction. The Response buffer contains the response that provides the DAM with the completion status from the Mux card firmware. The Status buffer contains the data returned from a $STDT transaction. This data is updated into the physical terminal tables by the DAM. The actual area being used is offset by the number of bytes specified in IFBOFF. This area is accessed by the pointer set up in the corresponding pointer fields IFIRQBP, IRESPBP, ISTDTBP. These fields are not used for ACC E1/T1 cards.

ISCRATCH - Scratch area for buffer alignment

This area is needed to insure that DMA buffers can be aligned on a 64-byte boundary. This is a requirement of the hardware.

IFPLOOK - Physical terminal table lookup

This table is used by the DAM during FIRQ processing to determine the physical terminal table address based on the port and terminal number passed back from the Mux interface. It is indexed by the value [(port number * 8) + terminal number] for the 2/8-channel NIO and EISA ACC cards. For the ACC E1/T1 and 8-Port PCI cards, it is simply indexed by the terminal number. The DAM uses this table as an interrupt vector to the PTT associated with an unsolicited interrupt (FIRQ). This table is variable in size and is dynamically allocated from HP-UX kernel memory. Usually only a few of the values in the array are used. Unused entries are null filled. The LDM creates and initializes this table during startup of the ZCOM subsystem. This table is not accessible by user space applications.

This field is an array of pointers, which will be accessed by an array index.

ICFG_LKUPT - Optional E1/T1 tunable parameters (zcfg_lookup_t)

This structure contains the optional E1/T1 tunable parameters that allow you to fine tune the allocation of resources (memory) within the E1/T1 card. Specifically, these parameters allow you to fine tune how card memory is divided up between internal tables and I/O buffers. These parameters may be specified in the TTGEN Interface-Definition section. This structure has the fields shown in Table 3-24 “Optional E1/T1 Tunable Parameters”.

Table 3-24 Optional E1/T1 Tunable Parameters

Field Name

Field Description

Field Type

Size (Bytes)

datadelay

$DATA transfer delay (milliseconds)

uns.short

2

ttablenbr

Maximum # of terminal table entries

uns.int

2

ttablesize

Size of terminal table entries (in bytes)

uns.int

4

zbufsize

Size of the card's buffers (in bytes)

uns.int

4

zbufnbr

Number of I/O buffers

uns.int

4

mheadnbr

Number of buffer header entries

uns.int

4

mquota

Quota of msg headers allowed for each subchannel

uns.int

4

bquota

Quota of buffers allowed for each subchannel

uns.int

4

tracesize

Firmware trace buffer size

uns.int

4

traceopt

Firmware trace option bits

uns.int

4

spare1~3

Reserved, not used

uns.int[3]

4*3

tsize

Size of timer tables in bytes

uns.int[4]

4*4

 

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 2000 Hewlett-Packard Development Company, L.P.