编写适用于 Oracle® Solaris 11.2 的设备驱动程序

退出打印视图

更新时间: 2014 年 9 月
 
 

HBA 配置属性

连接 HBA 设备实例时,scsi_hba_attach_setup(9F) 会为该 HBA 实例创建许多 SCSI 配置属性。仅当没有现有同名属性附加到 HBA 实例时,才会创建特定属性。此限制可避免覆盖 HBA 配置文件中的任何缺省属性值。

HBA 驱动程序必须使用 ddi_prop_get_int(9F) 检索每个属性。然后,HBA 驱动程序会修改或接受这些属性的缺省值来配置其特定操作。

scsi-reset-delay 属性

scsi-reset-delay 属性是一个整数,用于指定由 SCSI 总线或 SCSI 设备造成的重置延迟的恢复时间(毫秒)。

scsi-options 属性

scsi-options 属性是一个整数,用于通过单独定义的位来指定多个选项:

  • SCSI_OPTIONS_DR (0x008)-如果未设置,HBA 将不会授予目标设备断开连接权限。

  • SCSI_OPTIONS_LINK (0x010)-如果未设置,HBA 将不会启用链接的命令。

  • SCSI_OPTIONS_SYNC (0x020)-如果未设置,则 HBA 驱动程序决不能协商同步数据传送。驱动程序将拒绝目标启动的协商同步数据传送的任何尝试。

  • SCSI_OPTIONS_PARITY (0x040)-如果未设置,HBA 将会运行 SCSI 总线,而不进行奇偶校验。

  • SCSI_OPTIONS_TAG (0x080)-如果未设置,HBA 将不会在命令标记排队模式下运行。

  • SCSI_OPTIONS_FAST (0x100)-如果未设置,HBA 将不会在 FAST SCSI 模式下运行总线。

  • SCSI_OPTIONS_WIDE (0x200)-如果未设置,HBA 将不会在 WIDE SCSI 模式下运行总线。

按目标的 scsi-options

HBA 驱动程序可能支持以下格式的按目标的 scsi-options 功能:

target<n>-scsi-options=<hex value>

在本例中,< n> 为目标 ID。如果定义了按目标的 scsi-options 属性,则 HBA 驱动程序将使用该值,而不使用按 HBA 驱动程序实例的 scsi-options 属性。例如,如果仅需针对某个特定目标设备禁用同步数据传送,则该方法可提供更准确的控制。按目标的 scsi-options 属性可以在 driver.conf(4) 文件中定义。

以下示例说明了按目标的 scsi-options 属性定义,用于禁用目标设备 3 的同步数据传送:

target3-scsi-options=0x2d8