IODEVICE

IODEVICE is an optional statement that describes the following:
  • The I/O device number
  • The device characteristics
  • The control units to which the device is assigned.

Each uniquely addressable I/O device in your I/O configuration must be specified in an IODEVICE statement to use for I/O requests.

See List of I/O devices and control units for a list of some I/O device types and their characteristics.

For z/VM: VM does not necessarily support devices that IOCP supports. For a list of supported devices, see the General Information Manual for the VM operating system that you use.

For z/VSE: z/VSE does not necessarily support devices that IOCP supports. For a list of supported devices, see System Control Statements for the z/VSE operating system that you use.

See Machine limits and rules for a list of machine limits and rules for your CPC.

The IODEVICE statement must follow any CNTLUNIT statements that specify the control units the device uses.

See Coding IOCP statements for a summary of the rules for coding statements and the notation used in this document to illustrate statements.

The format of the IODEVICE statement is as follows:
[symbol] IODEVICE ADDRESS=(number[,count]) 
                  CUNUMBR=(number[,number]...) 
                  [MODEL=model] 
                  [{PART | PARTITION | NOTPART}=
                       ((CSS(cssid),{name|0}[,name]...),...)]
                  [PATH=((CSS(cssid),chpid),...)] 
                  [SCHSET={ssid|((CSS(cssid),ssid),...)}]
                  [STADET={Y|N}] 
                  [TIMEOUT={Y|N}] 
                  UNIT=device
                  [UNITADD=address] 
                  
ADDRESS=
number
Specifies the device number. Specify a 1-4 digit hexadecimal number in the range 0000-FFFF.

For z/OS: Although z/OS supports the definition and use of devices with 4-digit device numbers, not all products, subsystems, or applications that run under z/OS can use these devices. See the MVS/ESA SP 5.1 Conversion Notebook , GC28-1436, for more information.

For z/VSE: Prior to z/VSE 4.3, the supported address range is 0000-0FFF. For z/VSE 4.3 and later, the supported address range is 0000-FFFF. Devices with 4-digit device numbers can be ADDed during IPL. The z/VSE system continues to work with 3-digit device numbers. Therefore, during IPL the z/VSE system assigns each 4-digit device number a 3-digit one. The 3-digit device number that is to be used by z/VSE can also be explicitly specified by the user. Applications, commands, messages continue to use the assigned 3-digit device number.

If you do not specify the UNITADD keyword in the IODEVICE statement, the last two hexadecimal digits in the device number specify the unit address that is transmitted on the channel path to select the device. These two hexadecimal digits must match one of the unit addresses specified in the UNITADD parameter of the CNTLUNIT statement that defines the control units to which the device is attached.

If you specify the UNITADD parameter in the IODEVICE statement, the last two digits in the device number can be any value that follows the rules in List of I/O devices and control units and makes the device number unique.

count
Specifies the number of sequential device numbers to be assigned to the devices. You specify a 1-, 2-, or 3-digit decimal value in the range of 1-256. (For example, ADDRESS=(10A,3) specifies that the device numbers of 10A, 10B, and 10C are assigned.)

The unit address for a device defaults to the last two digits in the device number parameter of the ADDRESS keyword unless the UNITADD keyword is specified. The unit address plus the number of addresses specified in the count parameter of the ADDRESS keyword, minus 1, must not be larger than a hexadecimal value of FF.

The device number specified in the ADDRESS keyword plus the number of devices specified in the count parameter of the ADDRESS keyword, minus 1, must not be larger than a hexadecimal value of FFFF.
The specified device numbers are defined in the appropriate subchannel set (SCHSET keyword) in each CSS to which the attached control units are assigned.
FCP, IQD, OSD, OSM, OSN, and OSX channel paths support a maximum number of valid subchannels. Valid subchannels are devices that are defined to a logical partition and permitted for use by the logical partition. Valid subchannels are calculated as follows:
  • For unshared channel paths, each device defined in IOCP represents a single valid subchannel. Also, for reconfigurable FCP channel paths on CPCs without fixed HSA, each device defined in IOCP represents a single valid subchannel. See Table 1 to determine if your CPC has fixed HSA.
  • For reconfigurable FCP channel paths on CPCs with fixed HSA, each device defined in IOCP represents multiple valid subchannels based on the total number of logical partitions (LPs) in its CHPID candidate list.
  • For shared channel paths, each device defined in IOCP represents multiple valid subchannels based on the total number of LPs in its device candidate list.
When priority specification is enabled (CHPARM=00), a maximum of 480 OSA valid subchannels (160 TCP/IP stacks) can be defined on an OSD or OSX channel path. When priority specification is disabled (when CHPARM=02 is specified on CHPID statement), a maximum of 1920 OSA valid subchannels (640 TCP/IP stacks) can be defined on an OSD channel path on an OSA-Express2 or later feature and on an OSM or OSX channel path on an OSA-Express3 or later feature. An OSA subchannel is a device with a unit address in the range 00-FD. The OSAD device with unit address FE is excluded from the maximum.

A maximum of 480 OSN valid subchannels and 180 3745 valid subchannels can be defined on an OSN channel path. OSN subchannels are defined with UNIT=OSN on the IODEVICE statement, and 3745 subchannels are defined with UNIT=3745. Valid subchannels are devices with unit addresses in the range 00-FD. The OSAD device with unit address FE is excluded from the maximums.

A maximum of 480 valid subchannels can be defined on an FCP channel path.

A maximum of 12288 valid subchannels can be defined on all IQD channel paths in the configuration. The maximum applies to the valid subchannels for all IQD channel paths.

Multiple I/O devices with the same device number can be defined as long as device numbers are not duplicated within the same logical partition and the same subchannel set. IOCP determines whether devices in the same subchannel set with duplicate device numbers belong to the same logical partition by testing the initial access lists of the chpids assigned to the devices along with the device candidate lists (PARTITION or NOTPART keyword in the IODEVICE statement). A duplicate device number error occurs if an initial access list of a chpid assigned to each device includes the same logical partition and the device candidate lists of each device also include the same logical partition and the devices are in the same subchannel set.

Note: See List of I/O devices and control units for some exceptions and recommendations that apply to specific device types.

OSD, OSM, or OSX device definition considerations: For information about how to configure OSD, OSM, or OSX devices, see OSA configuration considerations.

For VM: The ADDRESS keyword of the IODEVICE statement in the IOCP input file has values derived from the RDEVICE statement in the SYSTEM CONFIG file, if used. For example, this RDEVICE statement is in the SYSTEM CONFIG file:
RDEVICE 190-193 ... 
The corresponding IODEVICE statement is:
IODEVICE ADDRESS=(190,4),... 
For z/VSE: The ADDRESS keyword of the IODEVICE statement in the IOCP input file has values derived from the ADD statement in the ASI Procedure file. For example, this ADD statement is in the ASI Procedure file:
ADD 0C0:0DF,... 
The corresponding IODEVICE statement is:
IODEVICE ADDRESS=(0C0,32),...
If you specify IODEVICE ADDRESS=(4900,32), ..., the corresponding ADD statement would be:
ADD 4900:491F as cuu1:cuu2

where ccu1, cuu2 is the range of 3-digit device numbers that are used by the z/VSE® system.

CUNUMBR=number
Specifies the control unit numbers assigned to the control units (specified in the CUNUMBR parameter of the CNTLUNIT statement) to which the device is attached. You can specify one to four hexadecimal digits in the range 0000-FFFE for each control unit.

The device is defined in each CSS to which the specified control units are assigned.

A device can be assigned to a maximum of eight control units and eight paths in a CSS with the following exceptions:
  • A device assigned to an ESCON CTC or FICON CTC control unit can be assigned to only one control unit and one path in a CSS.
  • A device assigned to CFS, CFP, CBS, CBP, ICP, CIB, CL5, and CS5 channel paths can be assigned to only one control unit.
  • A device assigned to an FCP, IQD, OSC, OSD, OSE, OSM, OSN, or OSX channel path can be assigned to only one control unit and one path in a CSS.

When the device is attached to more than one control unit (for example, through a string switch), each control unit must be specified.

If a device is attached to more than one control unit, all control units that attach to the device must:
  • Use the same unit address to access the device
  • Have the same SHARED characteristic: Y or N
  • Have the same PROTOCL characteristic: D, S, or S4
  • Not be attached to the same channel path in a CSS
  • Attach to all shared channel paths or all unshared channel paths.
All channel path types (TYPE keyword) assigned to a device must meet the following restrictions:
  • All CBY or CVC
  • All CNC, FCV, or FC
  • CTC
  • All CFS or CBS
  • All CFP, CBP, ICP, CIB, CL5, or CS5
  • OSC
  • OSD
  • OSE
  • OSM
  • OSN
  • OSX
  • FCP
  • IQD

You can intermix FC channel paths with CNC and FCV channel paths. Mixing FC channel paths with CNC and FCV channel paths can ease migration from ESCON channels to FICON channels using dynamic I/O configuration. The mixture allows you to dynamically add FC channel paths to a control unit while keeping its devices operational. A second dynamic I/O configuration change can then remove the CNC and FCV channels while keeping the devices operational.

For some types of control units and devices, there might be small operational performance differences when intermixing (for example, RMF usage calculations and channel path reconnection), and dynamic CHPID management cannot manage a control unit that contains intermixing. For these control units and devices, mixing of FC channel paths with CNC and FCV channel paths be temporary. Non-dynamic I/O users are advised to avoid mixing these channel paths. Other types of control units and devices fully support this intermixing. To determine the level to which your control units and devices support intermixing, see their device planning manuals. For control units that support intermixing, consult their performance white papers for guidance on how to best configure channels from a performance perspective.

To improve the balance of workload across channels in an intermixed environment, alternate ESCON (CNC and FCV) and FICON (FC) channel paths in the control unit header for this device using the following patterns:
  • For 6 ESCON and 2 FICON, use a sequence of E, E, E, F, E, E, E, F
  • For 4 ESCON and 4 FICON, use a sequence of E, F, E, F, E, F, E, F
  • For 2 ESCON and 6 FICON, use a sequence of E, F, F, F, E, F, F, F.
For VM: To code the control unit number for a device, you must find the correct CNTLUNIT statement. You must know the following information about the hardware I/O configuration:
  • The channel path to which the device and its control unit are attached
  • How the control unit recognizes the device, that is, by which unit address
Find the CNTLUNIT statement that fulfills both of the following requirements:
  • A channel path that matches the channel path to which the device and control unit are attached
  • A unit address that matches the unit address by which the control unit recognizes the device.

Use the value coded for the CUNUMBR parameter in the CNTLUNIT statement for the control unit number in the IODEVICE statement.

For example, eight 3380 Direct Access Storage units and their control unit are attached to chpid 07. The control unit recognizes the direct access storage units as attached at unit addresses 40-47.

However, the RDEVICE statement for this group of direct-access storage units could be:
RDEVICE 350-357 TYPE 3380 

The device numbers for these disk storage units are in the range 350-357.

The CHPID statement coded for this channel path is:
CHPID PATH=(07),... 
The chpid is 07. The physical unit addresses of these devices are 40-47. The CNTLUNIT statement that has channel path 07 and unit addresses in the range 40-47 is:
CNTLUNIT CUNUMBR=032,PATH=(07),...,UNITADD=((40,8)) 
The CUNUMBR parameter in the IODEVICE statement is 032:
IODEVICE ADDRESS=(350,8),CUNUMBR=032,...,UNIT=3380,UNITADD=40

(The UNITADD parameter in the IODEVICE statement has the same number of unit addresses (eight) as the number specified in the ADDRESS parameter.)

This example uses the UNITADD parameter, which allows you to define device numbers (350-357) that do not contain their physical unit addresses (40-47).

MODEL=model
Specifies the model number, if any, for the device. You can specify a maximum of four alphanumeric or special characters (#, @, or $) that represent the model number of the device. IOCP checks only the syntax for alphanumeric or special characters. IOCP does not validate the model value.

For VM: The MODEL=model parameter of the IODEVICE statement in the IOCP input file has the same value as the MODEL=model parameter of the RDEVICE statement in the SYSTEM CONFIG file.

For example, the following RDEVICE statement is in the SYSTEM CONFIG file:
RDEVICE ... MODEL 11
The corresponding IODEVICE statement is:
IODEVICE ...,MODEL=11,... 
PART | PARTITION=
NOTPART=
Specifies the device candidate list that identifies the logical partitions (LPs) in a CSS that can access the device. An LP cannot access a device if the LP is not specified in the device candidate list for the device, even if the LP can access a channel path assigned to the device.
The PART or PARTITION keyword specifies the LPs that are in the device candidate list. The NOTPART keyword specifies the LPs that are not in the device candidate list. For example, if a CSS has three LPs (LP1, LP2, and LP3) and you specify NOTPART=(LP2), LP1 and LP3 can access the device, but LP2 cannot.
cssid
Specifies the logical channel subsystem (CSS) ID associated with this parameter. The CSS ID is a 1-digit number in the range 0-n. See Table 2 to determine the maximum CSS ID your CPC supports.

Each CSS ID must be associated with a control unit attached to this device. You can specify as many CSSs as the attached control units have. If all the attached control units are associated with the same, single CSS ID, the CSS parameter is optional.

name
Specifies the name of a logical partition (LP) in a CSS that can access the channel path. The LP name is a 1-8 alphanumeric (0-9, A-Z) character name that must have a nonnumeric first character.
0
Specifies that no LPs in the CSS can access the device. A zero indicates a null device candidate list. The device is excluded from the specified CSS and cannot be accessed by any LP in the CSS. A zero cannot be specified in the NOTPART keyword.

OSC, OSD, OSE, OSM, OSN, and OSX device definition considerations: For information about how to configure OSC, OSD, OSE, OSM, OSN, and OSX devices, see OSA configuration considerations.

IQD device definition considerations: For information about how to configure IQD devices, see Internal queued direct communication (HiperSockets) support.

FCP device definition considerations: For information about how to configure FCP devices, see Fibre Channel Protocol support.

Device candidate list specification rules: The following rules apply when specifying the device candidate list:

  • You cannot specify a device candidate list using both the NOTPART keyword and either the PART or the PARTITION keyword for the same CSS ID in the same IODEVICE statement.
  • You can specify a device candidate list only for shared CNC, CTC, FCV, FC, FCP, IQD, OSC, OSD, OSE, OSM, OSN, or OSX channel paths. You cannot specify a device candidate list for unshared channel paths or CFS, CFP, CBS, CBP, ICP, CIB, CL5, and CS5 channel paths.
  • Device candidate list specification is optional.
  • You cannot specify the LMC partition MCS_1 on the PART or PARTITION keyword. The MCS_1 partition cannot contain any I/O resources. However, you can specify the MCS_1 partition on the NOTPART keyword but do not need to do so because IOCP automatically excludes it from a device candidate list.
  • If you do not specify a device candidate list for a CSS to which the device is assigned:
    • Devices assigned to a shared CTC, FCP, IQD, OSD, OSM, OSN, or OSX channel path have a default device candidate list equal to the candidate list for the channel path. This statement excludes reserved LPs (*). The LPs in the CTC, FCP, IQD, OSD, OSM, OSN, or OSX channel path candidate list are the only LPs in the default device candidate list.
    • Devices assigned to all other shared channel paths types have a default device candidate list equal to all LPs in each CSS with access to the device. This statement includes reserved LPs (*).
    • The LMC partition MCS_1 is excluded from all device candidate lists.
  • If you specify a device candidate list for a CSS, it excludes any reserved LPs (*) in the CSS and the LMC partition MCS_1.
  • You can specify all LP names in a CSS in the NOTPART keyword so that no LPs in the CSS can access the device. Doing so creates a null device candidate list and is equivalent to specifying a zero in the PART or PARTITION keyword.
  • You cannot specify null device candidate lists for every CSS to which the device has access. Doing so is equivalent to not defining the device.
  • You cannot specify null device candidate lists for every CSS to which one of the device's control units have access. Doing so excludes the control unit from accessing the device. Instead, simply omit the control unit from the CUNUMBR keyword for the device.
  • You cannot specify null device candidate lists so that every device assigned to a control unit excludes the same CSS. Channel paths in the excluded CSS of the control unit would not be able to access the control unit or any of its devices. Instead, simply omit the CSS from the PATH keyword for the control unit.
  • If you specify a zero for a null device candidate list in a CSS, you cannot specify a logical partition name for the same CSS.
  • You cannot specify an LP in the device candidate list that is not defined in the RESOURCE statement.
  • You can specify as many LPs as your CPC supports. See Machine limits and rules.
  • You can specify any LP in the configuration in the device candidate list as long as at least one of the LPs specified matches an LP in the channel path candidate lists for the channel paths assigned to the device. When building an IOCDS, IOCP sends a caution message identifying every LP in the device candidate list that cannot access the device. After power-on reset, the only way for an LP that has no access to the device to gain access is through a dynamic I/O configuration change that does one of the following actions:
    • Modifies the channel path candidate lists of the channel paths assigned to the device
    • Modifies the device candidate list
    • Adds a channel path to a control unit assigned to the device where the LP can access the channel path.

    For example, if a device is assigned to a single channel path and the channel path has access to LPs LP1 and LP2, you cannot specify a device candidate list of LP3. However, you could specify LP1 and LP3. In this case, IOCP sends a caution message that LP3 cannot access the device.

Using the device candidate list to limit logical path establishment: You can use the device candidate list to limit the establishment of logical paths to a control unit by not allowing an LP to access a device on the control unit. See Managing the establishment of logical paths for more information.

PATH=
cssid
Specifies the logical channel subsystem (CSS) ID associated with this parameter. The CSS ID is a 1-digit number in the range 0-n. See Table 2 to determine the maximum CSS ID your CPC supports.

Each CSS ID must be associated with a control unit attached to this device and must not have been excluded by specifying a null device candidate list with the PART, PARTITION, or NOTPART keyword. You can specify as many CSSs as the attached control units have. If all the attached control units have the same, single CSS ID, the CSS parameter is optional.

chpid
Specifies preferred channel paths for the CSSs that can access the device. Specify two hexadecimal digits for a chpid assigned to the device for each wanted CSS.

IOCP ignores the PATH keyword, if specified, for devices assigned to CFS, CFP, CBS, CBP, CIB, CL5, CS5, CTC, FCP, ICP, IQD, OSC, OSD, OSE, OSM, OSN, or OSX channel paths (TYPE keyword).

If specified, a CSS always first tries to use the preferred channel path to initiate I/O requests for the device. If the preferred path is busy or unavailable, the CSS uses the other attached channel paths. See Path selection using a preferred path for more information.

SCHSET=
Specifies the subchannel set that contains the device. A subchannel set other than set 0 is known as a alternate subchannel set. z/OS supports defining parallel access volumes (PAVs) and mirroring secondary devices in an alternate subchannel set. Linux on System z also supports devices in an alternate subchannel set. IOCP does not restrict the types of devices that can be defined in an alternate subchannel set except as described in the information that follows.
cssid
Specifies the logical channel subsystem (CSS) ID associated with this parameter. The CSS ID is a 1-digit number in the range 0-n. See Table 2 to determine the maximum CSS ID your CPC supports.

Each CSS ID must be associated with a control unit attached to this device. It must not have been excluded by specifying a null device candidate list with the PART, PARTITION, or NOTPART keyword. You can specify as many CSSs as the attached control units have. If the device is in the same subchannel set in each CSS that can access it, the CSS parameter is optional (for example, SCHSET=1).

ssid
Specifies the subchannel sets that contain the device. The SS ID is a 1-digit number in the range 0-n. See Table 2 to determine the maximum SS ID your CPC supports. Some CPCs support multiple subchannel sets in a CSS.
Subchannel sets within a CSS are separate from each other and support a maximum number of devices. See Table 2 to determine the maximum number of devices each subchannel set on your CPC supports. A logical partition can have duplicate device numbers, provided they are in different subchannel sets.

If you do not specify the SCHSET keyword, the default SS ID is 0. If you specify the CSS parameter but do not specify every CSS that can access the device, the device is defined in subchannel set 0 for the unspecified CSSs. Therefore, the SCHSET keyword is required only to define a device in a subchannel set other than 0 in one or more CSSs.

Devices assigned to CBY, CVC, CFS, CFP, CBS, CBP, ICP, CIB, CL5, or CS5 channel paths can be defined only in subchannel set 0.

Devices with different unit addresses attached to the same control unit can be defined in different subchannel sets in the same CSS. A single unit address on a control unit might not be associated with different devices in different subchannel sets in the same CSS.

STADET=
Allows disabling of the Status Verification Facility. STADET=Y enables the facility; STADET=N disables the facility. The default for parallel devices is STADET=N. The default for ESCON and FICON devices is STADET=Y.

IOCP ignores the STADET keyword, if specified, for devices assigned to CBS, CBP, CFS, CFP, CIB, CL5, CS5, FCP, ICP, IQD, OSC, OSD, OSE, OSM, OSN, or OSX channel paths.

The Status Verification Facility provides the system with a means of indicating that it has been presented with device status that had a valid checking block code (CBC) but that contained a combination of bits that was inappropriate when the status byte was presented to the I/O subsystem. The indication is called device-status check.

If a system that provides the Status Verification Facility replaces a system that does not provide the facility, the replacing system might generate device-status-check conditions for events that the replaced system ran without error. In this situation, it might be necessary to disable the facility for the affected subchannel.

If a device can generate busy and status-modifier status in response to initial selection during command chaining, the Status Verification Facility treats the status as an error when STADET=Y. It does not treat the status as an error when STADET=N.

TIMEOUT=
Specifies whether the I/O interface timeout function is active for the following I/O interface sequences between the channel and the I/O device:
  • 4-second timeout for initial selection
  • 30-second timeout for data transfer.

The TIMEOUT keyword is meaningful only for CVC channel paths. IOCP ignores the TIMEOUT keyword, if specified, for all other channel path types. IOCP assigns TIMEOUT=Y to devices assigned to CBY channel paths.

Y
Specifies making the I/O interface timeout function active for all sequences on the I/O interface except as noted in Characteristics of the I/O interface timeout function. With the timeout function active, if the I/O device fails to complete the initial selection within 4 seconds, the channel ends the I/O request to the I/O device and generates an interface-control-check interruption.

TIMEOUT=Y is the default if you do not code the TIMEOUT parameter, provided the keyword is not ignored for the type of channel path assigned to the device.

N
Specifies making the I/O interface timeout function inactive (timeout is inhibited) for some of the sequences on the I/O interface as described in Characteristics of the I/O interface timeout function. With the timeout function inactive, the channel waits until the I/O device completes the tag sequence or initiates the next dependent sequence.
UNIT=device
Specifies the device type. You specify a maximum of 8 alphanumeric or special characters (#, @, or $) to define the device type (such as, 3390 or 3590). IOCP checks the syntax only for alphanumeric or special characters. IOCP does not validate the device value except for devices assigned to IQD, OSD, OSE, OSM, OSN, or OSX channel paths. For OSD, OSE, OSM, and OSX channel paths, ensure that devices with unit addresses in the range 00-FD have a value of OSA and that the device with unit address FE has a value of OSAD. For OSN channel paths, IOCP requires devices with unit addresses in the range 00-FD to have a value of OSN or 3745, and IOCP expects the device with unit address FE to have a value of OSAD. For IQD channel paths, ensure all devices have a value of IQD.

If you code UNIT=33xxx or 9345x and the device attaches to CVC channel paths (TYPE keyword), the I/O subsystem activates unlimited prefetching of channel command words (CCWs). For more information, see Enterprise Systems Architecture/390: Principles of Operation.

To run applications that require parallel basic mode CTC support in an ESCON environment, specify UNIT=BCTC. Any other specification in an ESCON environment results in extended mode CTC support. For more information about ESCON CTC support for parallel CTC basic mode, see ESCON and FICON Channel-to-Channel Reference, SB10-7034.

See OSA configuration considerations for more information concerning the configuration of specific devices.

For VM: The UNIT=device parameter of the IODEVICE statement in the IOCP input file has the same value associated with the TYPE parameter of the RDEVICE statement in the SYSTEM CONFIG file. For example, assume that the following RDEVICE statement is in the SYSTEM CONFIG file:
RDEVICE 100 TYPE 3279
The corresponding IODEVICE statement is:
IODEVICE ...,UNIT=3279,...
UNITADD=address
Specifies the unit address that is transmitted on the channel path to select the I/O device. You specify two hexadecimal digits in the range of 00-FF. (The control unit address must be physically set to recognize the address that is on the channel path.) These two hexadecimal digits must match one of the unit addresses specified in the UNITADD parameter of the CNTLUNIT statements that define the control units to which the device is attached.

UNITADD allows you to assign a unit address to a device number in the ADDRESS parameter that does not contain the actual physical unit address of the device. The UNITADD parameter that you specify becomes the unit address that the control unit recognizes for the device.

If you specified a value for count in the ADDRESS parameter, that same number of sequential device numbers applies to the UNITADD parameter. However, the UNITADD parameter plus the number of device numbers minus 1, must not exceed a value of FF.

Coupling facility device definition considerations: IOCP ignores the UNITADD keyword, if specified, for devices assigned to CFS, CFP, CBS, CBP, ICP, CIB, CL5, and CS5 channel paths.

OSC, OSD, OSE, OSM, OSN, and OSX device definition considerations: For information about how to configure OSC, OSD, OSE, OSM, OSN, and OSX devices, see OSA configuration considerations.

FCP device definition considerations: For information about configuring FCP devices, see Fibre Channel Protocol support.

Notes:
  1. If you use the UNITADD parameter, you must follow the same rules and restrictions that apply to the last two digits of the ADDRESS parameter. For example, notes in List of I/O devices and control units that apply to the unit address specified in the ADDRESS keyword also apply to the unit address specified in the UNITADD keyword.
  2. On parallel control units, unit addresses must be unique for each chpid. Two control units attached to the same parallel channel path must have unique unit address ranges.
  3. For ESCON or FICON devices, unit addresses must be unique for each control unit (not for each chpid). Two devices attached to the same ESCON or FICON control unit cannot have the same unit address. However, two devices attached to the same CNC, CTC, FCV, or FC channel path (TYPE keyword) can have the same unit address if they attach to different control units.
  4. Unit addresses must be unique for devices defined to an OSC, OSE, OSN, or FCP control unit. Two devices defined to the same OSC, OSE, OSN, or FCP control unit cannot have the same unit address.
  5. Unit addresses must be unique for each control unit (not for each chpid) for IQD, OSD, OSM, or OSX devices. Two devices defined to the same IQD, OSD, OSM, or OSX control unit cannot have the same unit address. However, two devices defined to the same IQD, OSD, OSM, or OSX channel path (TYPE keyword) can have the same unit address if they are defined to different control units.

For VM: To code the UNITADD parameter, you must know how the control unit recognizes the device, that is, by what unit address. You must code the actual physical unit address for the UNITADD parameter in the IODEVICE statement.

For example, the RDEVICE statement for a group of eight 3380 Magnetic Disk Storage units could be:
RDEVICE 350-357 TYPE 3380

The device numbers for these disk storage units are in the range: 350-357. The control unit, however, recognizes the disk storage units as being attached at unit addresses 40-47.

The UNITADD parameter in the IODEVICE statement is 40:
IODEVICE ADDRESS=(350,8),....UNIT=3380,UNITADD=40 

The UNITADD parameter in the IODEVICE statement takes the same number (8) as specified in the ADDRESS parameter. This example uses the UNITADD parameter to define device numbers (350-357) that do not contain their physical unit addresses (40-47).