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