IOSCUMOD — IOS control unit entry build service

Description

IOSCUMOD is a prototype module, to be used by manufacturers for creating an IOSTnnn load module and for building the control unit model table.

Programming requirements

On the first invocation of the IOSCUMOD macro, it includes the parameters listed below in the manufacturer's module.

Restrictions

None.

Performance implications

None.

Syntax

The IOSCUMOD macro is written as follows:

Syntax Description
   
   name name: Symbol. Begin name in column 1.
   
One or more blanks must precede IOSCUMOD.
   
IOSCUMOD  
   
One or more blanks must follow IOSCUMOD.
   
MANF=chpid manf: Symbol up to 3 characters long.
   
,DEVT=devt devt: Symbol up to 6 characters long.
   
,MODN=devt modn: Symbol up to 3 characters long.
   
,MASK1=mask1 mask1: 2-byte hex symbol.
   
,MASK2=mask2 mask2: 2-byte hex symbol.
   
,MASK3=mask3 mask3: 2-byte hex symbol.
   
,MASK4=mask4 mask4: 2-byte hex symbol.
,DCM_SUPPORTED=YES Default: YES
,DCM_SUPPORTED=NO  
   

Parameters

The parameters are explained as follows:

name
An optional symbol, starting in column 1, that is the name on the IOSCUMOD macro invocation. The name must conform to the rules for an ordinary assembler language symbol.
MANF=manf
Manufacturer ID that was provided with the node descriptor.
,DEVT=devt
Device type ID that was provided with the node descriptor. If a 4-character device type is entered, the two leading fields will be set to blanks.
,MODN=modn
Model number ID that was provided with the node descriptor. If NULL, then the model field will be set to all blanks. Othwerwise, leading zeroes must be coded.
,MASK1=mask1
,MASK2=mask2
,MASK3=mask3
,MASK4=mask4
Hex equivalent of the masks defined. 4 hex digits must be provided.

The tag field of the node descriptor uniquely identifies the power/service boundaries of most control units. Although this is true in most cases, it is not architected that way, and different control units represent this information in different ways.

In order to be able to interpret a control units tag, each control unit will provide four 2-byte masks.

Each 2 byte mask will be ANDed against the tag field of the control unit's Node Descriptor to extract a unique indicator of the different service boundary in the control unit. The first (high order) mask will indicate the most significant single point of failure to avoid (For example, Cluster), the second mask will indicate the most significant single failure to avoid (e.g. I/O bay), and so on until the fourth mask.

There is no requirement for the masks to represent specific components of the control (e.g. Cluster vs. I/O Bay vs. Port card). The only requirement is that the masks are ordered from the most significant point of failure to least. If not all four masks are significant, they should be set to binary zeros and must be the last mask(s) of the four.

,DCM_SUPPORTED=YES
,DCM_SUPPORTED=NO
Indicates that the control unit does or does not support dynamic channel path management. Control units which support ESCON interfaces and are completely non-synchronous should be capable of being supported by DCM. Control units which transfer data synchronously from the media, or remain connected to the channel while waiting for data to transfer between the media and the cache (or channel), are not supported. The default is YES.

ABEND codes

None.

Return and reason codes

None.

System macros require High Level Assembler. Assembler language programming is described in the following information:

Using this information also requires you to be familiar with the operating system and the services that programs running under it can invoke.