^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) ===================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) Dell Systems Management Base Driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) ===================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) Overview
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) ========
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) The Dell Systems Management Base Driver provides a sysfs interface for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) systems management software such as Dell OpenManage to perform system
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) management interrupts and host control actions (system power cycle or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) power off after OS shutdown) on certain Dell systems.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) Dell OpenManage requires this driver on the following Dell PowerEdge systems:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) 300, 1300, 1400, 400SC, 500SC, 1500SC, 1550, 600SC, 1600SC, 650, 1655MC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) 700, and 750. Other Dell software such as the open source libsmbios project
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) is expected to make use of this driver, and it may include the use of this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) driver on other Dell systems.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) The Dell libsmbios project aims towards providing access to as much BIOS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) information as possible. See http://linux.dell.com/libsmbios/main/ for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) more information about the libsmbios project.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) System Management Interrupt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) ===========================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) On some Dell systems, systems management software must access certain
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) management information via a system management interrupt (SMI). The SMI data
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) buffer must reside in 32-bit address space, and the physical address of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) buffer is required for the SMI. The driver maintains the memory required for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) the SMI and provides a way for the application to generate the SMI.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) The driver creates the following sysfs entries for systems management
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) software to perform these system management interrupts::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) /sys/devices/platform/dcdbas/smi_data
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) /sys/devices/platform/dcdbas/smi_data_buf_phys_addr
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) /sys/devices/platform/dcdbas/smi_data_buf_size
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) /sys/devices/platform/dcdbas/smi_request
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) Systems management software must perform the following steps to execute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) a SMI using this driver:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 1) Lock smi_data.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 2) Write system management command to smi_data.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 3) Write "1" to smi_request to generate a calling interface SMI or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) "2" to generate a raw SMI.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 4) Read system management command response from smi_data.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 5) Unlock smi_data.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) Host Control Action
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) ===================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) Dell OpenManage supports a host control feature that allows the administrator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) to perform a power cycle or power off of the system after the OS has finished
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) shutting down. On some Dell systems, this host control feature requires that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) a driver perform a SMI after the OS has finished shutting down.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) The driver creates the following sysfs entries for systems management software
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) to schedule the driver to perform a power cycle or power off host control
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) action after the system has finished shutting down:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) /sys/devices/platform/dcdbas/host_control_action
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) /sys/devices/platform/dcdbas/host_control_smi_type
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) /sys/devices/platform/dcdbas/host_control_on_shutdown
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) Dell OpenManage performs the following steps to execute a power cycle or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) power off host control action using this driver:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) 1) Write host control action to be performed to host_control_action.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) 2) Write type of SMI that driver needs to perform to host_control_smi_type.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) 3) Write "1" to host_control_on_shutdown to enable host control action.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) 4) Initiate OS shutdown.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) (Driver will perform host control SMI when it is notified that the OS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) has finished shutting down.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) Host Control SMI Type
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) =====================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) The following table shows the value to write to host_control_smi_type to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) perform a power cycle or power off host control action:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) =================== =====================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) PowerEdge System Host Control SMI Type
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) =================== =====================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) 300 HC_SMITYPE_TYPE1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) 1300 HC_SMITYPE_TYPE1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) 1400 HC_SMITYPE_TYPE2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) 500SC HC_SMITYPE_TYPE2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) 1500SC HC_SMITYPE_TYPE2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) 1550 HC_SMITYPE_TYPE2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) 600SC HC_SMITYPE_TYPE2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) 1600SC HC_SMITYPE_TYPE2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) 650 HC_SMITYPE_TYPE2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) 1655MC HC_SMITYPE_TYPE2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) 700 HC_SMITYPE_TYPE3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) 750 HC_SMITYPE_TYPE3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) =================== =====================