适配器-预定义属性 (PdAt) 对象类的特定注意事项

描述

适配卡所需的各种总线资源表示为 预定义属性 (PdAt) 对象类中的属性。 如果当前分配的值与缺省值不同,那么将使用 定制属性 (CuAt) 对象类中的其他设备属性来表示这些值。 要分配总线资源,总线配置程序从 PdAt 和 CuAt 对象类获取适配器的总线资源属性。 它还会根据需要更新 CuAt 对象类,以解决任何总线资源冲突。

以下额外的准则适用于总线资源属性。

"属性类型" 描述符必须指示总线资源的类型。 值如下:

描述
a 指示 DMA 仲裁级别。
B 指示与 DMA 传输无关联的总线内存地址。
M 指示要用于 DMA 传输的总线存储器地址。
i 指示可以与另一个设备共享的总线中断级别。
n 指示无法与另一个设备共享的总线中断级别。
O 指示总线 I/O 地址。
指示 interrupt-priority 类
W 指示总线内存或总线 I/O 空间量 (以字节计)。
G 指示组。
指示必须与另一个适配器共享的属性。

对于总线内存和总线 I/O 地址,还必须指定要分配的地址空间的数量。 此值可以由属性的 "宽度" 描述符指定,也可以由单独的类型 W 属性指定。

如果在属性的 "宽度" 描述符中指定该值,那么它将固定为该值,并且无法定制。 如果使用了单独的类型 W 属性,那么必须将总线内存或总线 I/O 属性的宽度描述符设置为空字符串。 类型 W 属性的 "宽度" 描述符必须指示它所应用于的总线内存或总线 I/O 属性的名称。

属性类型 G 和 S 是总线配置程序识别的特殊用途类型。 如果适配器具有无法相互独立分配值的资源,那么组属性将向总线配置程序标识这些资源。 例如,适配卡可能具有中断级别,该级别取决于指定的总线内存地址。 假设中断级别 3 必须与总线内存地址 0x1000000一起使用,而中断级别 4 必须与总线内存地址 0x2000000一起使用。 可以使用 "组" 属性来描述此关系,如 预定义属性 (PdAt) 对象类 中所述。

有时,当系统中存在特定类型的所有卡时,这些卡必须使用相同的总线资源。 对于中断级别而言尤其如此。 虽然大多数适配器的资源可以独立于其他适配器 (甚至是相同类型的适配器) 进行分配,但查找必须共享属性值的适配器并不少见。 具有必须与另一个适配器共享的总线资源的适配卡需要一个类型 S 属性来描述关系。

类型 S 属性的 PdAt 描述符

应按如下所示设置类型 S 属性的 PdAt 描述符:

PdAt 描述符设置 描述
唯一类型 指示该适配器的唯一类型。
属性名 指定分配给此属性的名称。
缺省值 设置为空字符串。
可能值 包含必须与其他一个或多个适配器共享的属性的名称。
宽度 设置为空字符串。
属性类型 设置为S.
通用属性标志 设置为空字符串。 此属性既不能由用户显示也不能由用户设置。
属性表示标志 设置为sl,指示字符串的枚举列表,即使该列表仅包含一个项也是如此。
NLS 索引 设置为0因为该属性不可显示。

"类型 S" 属性标识必须共享的总线资源属性。 其他适配器可通过具有相同属性名称的类型 S 的属性进行识别。 类型 S 属性的属性名称充当用于标识所有适配器的键。

例如,假设具有唯一类型的适配器adapter/mca/X必须与唯一类型的适配器共享其中断级别adapter/mca/Y. 以下属性描述了此类关系:

以下对象的预定义属性对象:X的中断级别:

  • 属性名称 =int_level
  • 缺省值 =3
  • 可能的值 =2 - 9, 1
  • 宽度 =null string
  • 唯一类型 =adapter/mca/X
  • 属性类型 = I
  • 通用属性标志 = D (可显示,但不能由用户设置)
  • 属性表示标志 = nr
  • NLS 索引 =12(文本描述的消息号)

描述的预定义属性对象X共享的中断级别:

  • 唯一类型 =adapter/mca/X
  • 属性名称 =shared_intr
  • 缺省值 =null string
  • 可能的值 = "int_level"
  • 宽度 =null string
  • 属性类型 =S
  • 通用属性标志 =null string
  • 属性表示标志 =sl
  • NLS 索引 =0

以下对象的预定义属性对象:Y的中断级别:

  • 唯一类型 =adapter/mca/Y
  • 属性名称 = interrupt
  • 缺省值 =7
  • 可能的值 = 2, 3, 4, 5, 7, 9
  • 宽度 =null string
  • 属性类型 =I
  • 通用属性标志 = D(已显示,但无法由用户设置)
  • 属性表示标志 =nl
  • NLS 索引 =6(文本描述的消息号)。

预定义属性对象描述Y共享 中断级别:

  • 唯一类型 =adapter/mca/Y
  • 属性名称 =shared_intr
  • 缺省值: 空字符串
  • 可能的值 = "interrupt"
  • 宽度 =null string
  • 属性类型 =S
  • 通用属性标志 =null string
  • 属性表示标志 =sl
  • NLS 索引 =0

请注意,两个适配器需要不同的属性来描述它们的中断级别。 属性名称也不相同。 但是,描述必须共享的内容的属性具有相同的名称:shared_intr.

除了类型为 W 的适配器总线资源属性以外,其他适配器总线资源属性都可以显示,但用户未设置这些属性。 即,通用属性标志描述符可以是空字符串,也可以是字符D,但不能UDU。总线配置程序对总线资源的分配具有完全控制权。 更改方法无法将这些资源更改为用户提供的值。

总线配置程序使用类型 W 属性来分配总线内存地址和总线 I/O 地址属性,但绝不会更改类型 W 属性的值。 类型为 W 的属性可由用户通过将通用属性标志描述符设置为DU。这允许 "更改" 方法将类型 W 属性值更改为用户提供的值。

总线配置程序不使用或修改适配器可能具有属性类型为 R 的任何其他属性。