z/OS V1R7.0-V1R12.0 MVS Device Validation Support
Previous topic | Next topic | Contents | Index | Contact z/OS | Library | PDF


UIM Definition Macros

z/OS V1R7.0-V1R12.0 MVS Device Validation Support
SA22-7586-01

The following definition macros are used by UIMs.

Definition Macro Name Definition Macro Function
CBDZCIP Maps the control unit information parameters (CIP) that provide input to the CIT build routine.
CBDZDCP Maps the device characteristics parameters (DCP) that provide input to the DCT build routine (used for DASD only).
CBDZDEVL Maps the device lookup (DEVL) parameter list.
CBDZDFP Maps the device features parameters that provide input to the DFT build routine.
CBDZDIAG The CBDZDIAG definition macro builds an HCD diagnostic stack entry.
CBDZGETM Maps the getmain (GETM) parameter list built by the CBDIGETM macro.
CBDZGIP Maps the generic information parameters (GIP) that provide input to the GIT build routine.
CBDZITRH Maps the internal text record header (ITRH), the I/O device internal text record (IODV), and the private parameter value array (PPVA).
CBDZMSG Maps the message routine parameter list, which is built by the CBDIMSG macro.
CBDZSIP Maps the switch information parameters (SIP) that provide input to the SIT build routine.
CBDZUCA Maps the UIM communications area (UCA).
CBDZUIP Maps the unit information parameters (UIP).

CBDZCIP Definition Macro

The pointer CIPDVLP in CBDZCIP points to the list of attachable devices build by CBDISIML. CIPDVLC in CBDZCIP denotes the number of list elements in the attachable device list. CIPDVLC in initialized with parameter DEV.

The CBDZCIP macro maps the control unit information parameters (CIP). The CIP is the input parameter list to the CIT build routine.

The syntax of the CBDZCIP macro is as follows:

          CBDZCIP   [DEV=devcnt]
                 or
          CBDZCIP   TYPE=DSECT
DEV=devcnt
Specifies the number of entries that you want the system to generate in the attachable device list. This list identifies, by device type and model, the devices that can be attached to the control unit named in the CIP. This parameter is optional; the default is 1.

Each entry in the attachable device list consists of two fields: DEVICE TYPE and DEVICE MODEL. If a device does not have a model, its DEVICE MODEL field must be binary zero or blank.

TYPE=DSECT
Generates mapping for the attachable device list entry. Use the structure defined by the CBDZCIP definition macro to fill in each entry of the attachable device list.
Notes:
  1. You cannot specify a label on the CBDZCIP macro.
  2. Using the CBDISIML macro is the recommended method for defining an attachable device list. See CBDISIML Executable Macro.

CBDZDCP Definition Macro

The CBDZDCP macro maps the device characteristics parameters of DASDs. The DCP is the input parameter list to the DCT build routine.

The syntax of the CBDZDCP macro is as follows:

          CBDZDCP

There are no input parameters on the CBDZDCP macro.

Note:
You cannot specify a label on the CBDZDCP macro.

CBDZDEVL Definition Macro

The CBDZDEVL macro maps the device lookup (DEVL) parameter list.

The syntax of the CBDZDEVL macro is as follows:

          CBDZDEVL

There are no input parameters on the CBDZDEVL macro.

Note:
You cannot specify a label on the CBDZDEVL macro.

CBDZDFP Definition Macro

The CBDZDFP macro maps the device features parameters. The device features parameters list is the input parameter list to the DFT build routine.

The syntax of the CBDZDFP macro is as follows:

          CBDZDFP [RELOC=reloc]
reloc
Specifies the number of entries that the system is to generate in the relocation list. The relocation list identifies fields in the device-dependent sections of the UCB (device-dependent segment, device-dependent extension, or device class extension) that point to other sections of the same UCB or another UCB. This parameter is optional; the default is 0.
Note:
You cannot specify a label on the CBDZDFP macro.

A UIM may not specify more than 256 bytes of device-dependent information. The information that falls within this 256-byte limit consists of:

  • UCB device-dependent segment (length, 24 bytes maximum, specified in the device features parameter field DFPDDSL)
  • UCB device-dependent extension (length specified in the device features parameter field DFPDDEL)
  • UCB device class extension (length specified in the device features parameter field DFPDCEL)
  • Relocation list (the length of the list is computed by multiplying the number of entries in the list, which is contained in the device features parameters field DFPRELCT, by the length of a list entry, which is 12 bytes).

CBDZDIAG Definition Macro

Use the CBDZDIAG macro to build a diagnostic stack entry in which you specify certain diagnostic information. If an abnormal end (abend) occurs in the UIM, HCD's recovery routine places the diagnostic information in the system diagnostic work area (SDWA).

Use the CBDIPPDS executable macro to put entries onto, and remove entries from the diagnostic stack.

The syntax of the CBDZDIAG macro is as follows:

 label   CBDZDIAG MODNAME=modname,
                  [MODCAT=UIM,]
                  [CSECT=csect,]
                  COMP=comp,
                  DESC=desc,
                  [VRADATA=vradata,]
                  [RELATED=('related')]
label
Name of the diagnostic stack entry. The labels of the fields generated in the diagnostic stack entry will start with the same four characters as label does. (In the event that label exceeds four characters, only the first four characters are used to build the labels on the generated fields.) label is required.
MODNAME
Load module name of the UIM. If an abend occurs, this value will be placed in SDWA field SDWAMODN. MODNAME is required.
MODCAT
Although MODCAT is an optional parameter, use it because it identifies its module as a UIM module. The module category (MODCAT) is used for trace.
CSECT
CSECT name of the UIM. If an abend occurs, this value will be placed in SDWA field SDWACSCT. This parameter is optional; the default is the assembler symbol &SYSECT; value.
COMP
Component identifier of the UIM. If an abend occurs, this value will be placed in SDWA field SDWACID. The component identifier must be five bytes long. This parameter is required.
DESC
UIM description. If an abend occurs, this value will be placed in SDWA field SDWASC. The UIM description can be a maximum of 23 bytes long. This parameter is required.
VRADATA
Name of the array that contains the addresses of data to be placed in the variable recording area (VRA) if an abend occurs. The array contains the VRA keys and data lengths, in addition to the data addresses. This parameter is optional. If it is not specified, no specific control blocks or data areas for the UIM will be placed in the VRA.

Each entry in the VRA array contains eight bytes. The format of an entry is as follows:

Offset Length Function
0 2 Must be set to zero in all but the last entry in the array. The last entry in the VRA array must be set to X'FFFFFFFFFFFFFFFF'. This entry denotes the end of the VRA array.
2 1 Key of VRA data, as specified in IHAVRA.
3 1 Length of VRA data.
4 4 Address of VRA data. If this field is set to zero, the ESTAE routine will skip this entry when moving data into the VRA. UIMs are permitted to dynamically update this field while the diagnostic entry is on the diagnostic stack.
related
Optional character string.

CBDZGETM Definition Macro

The CBDZGETM macro maps the parameter list built by the CBDIGETM macro.

The syntax of the CBDZGETM macro is as follows:

          CBDZGETM

There are no input parameters on the CBDZGETM macro.

Note:
You cannot specify a label on the CBDZGETM macro.

CBDZGIP Definition Macro

The CBDZGIP macro maps the generic information parameters (GIP). The GIP is the input parameter list to the GIT build routine.

The syntax of the CBDZGIP macro is as follows:

          CBDZGIP [DENS=dens],
                  [GENDNMS=gendnms]
dens
Specifies the number of entries that the system generates in the density list. This list contains the densities that are supported by the generic device type. This parameter is optional; the default is 0.
gendnms
Specifies the number of entries that the system generates in the compatible generic device name list. This list contains the generic names of devices for which this generic device type can be used to satisfy allocation requests. This parameter is optional; the default is 0.
Note:
You cannot specify a label on the CBDZGIP macro.

CBDZITRH Definition Macro

The CBDZITRH macro maps the internal text record header (ITRH), the I/O device internal text record (IODV), and the private parameter value array (PPVA).

The syntax of the CBDZITRH macro is as follows:

          CBDZITRH

There are no input parameters on the CBDZITRH macro.

Note:
You cannot specify a label on the CBDZITRH macro.

CBDZMSG Definition Macro

The CBDZMSG macro maps the message routine (MSGR) parameter list, which is built by the CBDIMSG macro.

The syntax of the CBDZMSG macro is as follows:

          CBDZMSG

There are no input parameters on the CBDZMSG macro.

Note:
You cannot specify a label on the CBDZMSG macro instruction.

CBDZSIP Definition Macro

The CBDZSIP macro maps the switch information parameters (SIP) of ESCON directors. The SIP is the input parameter list to the SIT build routine.

The syntax of the CBDZSIP macro is as follows:

          CBDZSIP [CUL=entrycnt],
                  [SWL=attswcnt],
                  [TYPE=DSECT]
CUL=entrycnt
Specifies the number of entries in the switch control unit list. This list contains one entry for each control unit that can be defined as switch control unit. This parameter is optional; the default is 1.
SWL=attswcnt
Specifies the number of attachable switches. It must be set to the number of switches to be contained in the attachable switch list. This parameter is optional; the default is 1.
TYPE=DSECT
Generates the mapping structure for the attachable switch list.
Note:
You cannot specify a label on the CBDZSIP macro.

CBDZUCA Definition Macro

The CBDZUCA macro maps the UIM communications area (UCA).

The syntax of the CBDZUCA macro is as follows:

          CBDZUCA

There are no input parameters on the CBDZUCA macro.

Note:
You cannot specify a label on the CBDZUCA macro instruction.

CBDZUIP Definition Macro

The CBDZUIP macro maps the unit information parameters (UIP). The UIP is the input parameter list to the UIT build routine.

The pointer UIPMSIMP points to the list of similar devices built by CBDISIML.

The syntax of the CBDZUIP macro is as follows:

          CBDZUIP [TYPE={GEN|DSECT}]
                  [,DFLT=dflt]
                  [,SIM=sim]
                  [,MLTS=mlts]
                  [,SEL=sel]
TYPE
Specifies request type.
GEN
Generate the UIP structure. (GEN is the default if you omit the TYPE parameter.)
DSECT
Include the following DSECTs:
  • Similar device list entry
  • Parameter default list entry
  • Parameter selection list entry.
Note:
If you code TYPE=DSECT, you cannot use any other parameter.
DFLT
Specifies the number of entries that the system generates in the parameter default list. This list contains information about parameters that have defaults. The DFLT parameter is optional; its default is zero.
SIM
Specifies the number of entries that the system generates in the similar device list. This list identifies, by device types and models, those devices that are similar to the device named in the UIP. The SIM parameter is optional; its default is zero.
Note:
IBM recommends using the CBDISIML macro to generate a device list. (See CBDISIML Executable Macro.)
MLTS
Specifies the number of entries to be generated in the module lists table (MLT) list. This parameter is optional; the default is 1. (The maximum number of MLTs allowed for a device is 5.)
SEL
Specifies the number of entries that the system generates in the parameter selection list. This list contains the parameters that will be in CBDZUIP parameter list. The SEL parameter is optional; its default is zero.
Note:
You cannot specify a label on the CBDZUIP macro.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014