戴尔系统管理基础驱动程序

概述

戴尔系统管理基础驱动程序为系统管理软件(例如戴尔 OpenManage)提供了一个 sysfs 接口,以便在某些戴尔系统上执行系统管理中断和主机控制操作(系统电源循环或操作系统关闭后关机)。

戴尔 OpenManage 在以下戴尔 PowerEdge 系统上需要此驱动程序:300、1300、1400、400SC、500SC、1500SC、1550、600SC、1600SC、650、1655MC、700 和 750。其他戴尔软件(如开源 libsmbios 项目)也预计会使用此驱动程序,并且可能包括在其他戴尔系统上使用此驱动程序。

戴尔 libsmbios 项目旨在尽可能提供对 BIOS 信息的访问。有关 libsmbios 项目的更多信息,请参阅 http://linux.dell.com/libsmbios/main/

系统管理中断

在某些戴尔系统上,系统管理软件必须通过系统管理中断 (SMI) 访问某些管理信息。SMI 数据缓冲区必须驻留在 32 位地址空间中,并且 SMI 需要缓冲区的物理地址。驱动程序维护 SMI 所需的内存,并提供应用程序生成 SMI 的方法。驱动程序创建以下 sysfs 条目,供系统管理软件执行这些系统管理中断。

/sys/devices/platform/dcdbas/smi_data
/sys/devices/platform/dcdbas/smi_data_buf_phys_addr
/sys/devices/platform/dcdbas/smi_data_buf_size
/sys/devices/platform/dcdbas/smi_request

系统管理软件必须执行以下步骤才能使用此驱动程序执行 SMI

  1. 锁定 smi_data。

  2. 将系统管理命令写入 smi_data。

  3. 写入“1”到 smi_request 以生成调用接口 SMI,或写入“2”以生成原始 SMI。

  4. 从 smi_data 读取系统管理命令响应。

  5. 解锁 smi_data。

主机控制操作

戴尔 OpenManage 支持主机控制功能,允许管理员在操作系统完成关闭后执行系统的电源循环或关机。在某些戴尔系统上,此主机控制功能要求驱动程序在操作系统完成关闭后执行 SMI。

驱动程序创建以下 sysfs 条目,供系统管理软件调度驱动程序在系统完成关闭后执行电源循环或关机主机控制操作。

/sys/devices/platform/dcdbas/host_control_action /sys/devices/platform/dcdbas/host_control_smi_type /sys/devices/platform/dcdbas/host_control_on_shutdown

戴尔 OpenManage 执行以下步骤来使用此驱动程序执行电源循环或关机主机控制操作。

  1. 将要执行的主机控制操作写入 host_control_action。

  2. 将驱动程序需要执行的 SMI 类型写入 host_control_smi_type。

  3. 写入“1”到 host_control_on_shutdown 以启用主机控制操作。

  4. 启动操作系统关闭。(驱动程序将在收到操作系统已完成关闭的通知时执行主机控制 SMI。)

主机控制 SMI 类型

下表显示了写入 host_control_smi_type 以执行电源循环或关机主机控制操作的值。

PowerEdge 系统

主机控制 SMI 类型

300

HC_SMITYPE_TYPE1

1300

HC_SMITYPE_TYPE1

1400

HC_SMITYPE_TYPE2

500SC

HC_SMITYPE_TYPE2

1500SC

HC_SMITYPE_TYPE2

1550

HC_SMITYPE_TYPE2

600SC

HC_SMITYPE_TYPE2

1600SC

HC_SMITYPE_TYPE2

650

HC_SMITYPE_TYPE2

1655MC

HC_SMITYPE_TYPE2

700

HC_SMITYPE_TYPE3

750

HC_SMITYPE_TYPE3