mirror of
				https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
				synced 2025-10-27 17:58:22 +00:00 
			
		
		
		
	 90563ec412
			
		
	
	
		90563ec412
		
	
	
	
	
		
			
			This patch adds the Dell Systems Management Base Driver with sysfs support. This driver has been tested with Dell OpenManage. Signed-off-by: Doug Warzecha <Douglas_Warzecha@dell.com> Cc: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
		
			
				
	
	
		
			92 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			92 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| Overview
 | |
| 
 | |
| The Dell Systems Management Base Driver provides a sysfs interface for
 | |
| systems management software such as Dell OpenManage to perform system
 | |
| management interrupts and host control actions (system power cycle or
 | |
| power off after OS shutdown) on certain Dell systems.
 | |
| 
 | |
| Dell OpenManage requires this driver on the following Dell PowerEdge systems:
 | |
| 300, 1300, 1400, 400SC, 500SC, 1500SC, 1550, 600SC, 1600SC, 650, 1655MC,
 | |
| 700, and 750.  Other Dell software such as the open source libsmbios project
 | |
| is expected to make use of this driver, and it may include the use of this
 | |
| driver on other Dell systems.
 | |
| 
 | |
| The Dell libsmbios project aims towards providing access to as much BIOS
 | |
| information as possible.  See http://linux.dell.com/libsmbios/main/ for
 | |
| more information about the libsmbios project.
 | |
| 
 | |
| 
 | |
| System Management Interrupt
 | |
| 
 | |
| On some Dell systems, systems management software must access certain
 | |
| management information via a system management interrupt (SMI).  The SMI data
 | |
| buffer must reside in 32-bit address space, and the physical address of the
 | |
| buffer is required for the SMI.  The driver maintains the memory required for
 | |
| the SMI and provides a way for the application to generate the SMI.
 | |
| The driver creates the following sysfs entries for systems management
 | |
| software to perform these system management interrupts:
 | |
| 
 | |
| /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
 | |
| 
 | |
| Systems management software must perform the following steps to execute
 | |
| a SMI using this driver:
 | |
| 
 | |
| 1) Lock smi_data.
 | |
| 2) Write system management command to smi_data.
 | |
| 3) Write "1" to smi_request to generate a calling interface SMI or
 | |
|    "2" to generate a raw SMI.
 | |
| 4) Read system management command response from smi_data.
 | |
| 5) Unlock smi_data.
 | |
| 
 | |
| 
 | |
| Host Control Action
 | |
| 
 | |
| Dell OpenManage supports a host control feature that allows the administrator
 | |
| to perform a power cycle or power off of the system after the OS has finished
 | |
| shutting down.  On some Dell systems, this host control feature requires that
 | |
| a driver perform a SMI after the OS has finished shutting down.
 | |
| 
 | |
| The driver creates the following sysfs entries for systems management software
 | |
| to schedule the driver to perform a power cycle or power off host control
 | |
| action after the system has finished shutting down:
 | |
| 
 | |
| /sys/devices/platform/dcdbas/host_control_action
 | |
| /sys/devices/platform/dcdbas/host_control_smi_type
 | |
| /sys/devices/platform/dcdbas/host_control_on_shutdown
 | |
| 
 | |
| Dell OpenManage performs the following steps to execute a power cycle or
 | |
| power off host control action using this driver:
 | |
| 
 | |
| 1) Write host control action to be performed to host_control_action.
 | |
| 2) Write type of SMI that driver needs to perform to host_control_smi_type.
 | |
| 3) Write "1" to host_control_on_shutdown to enable host control action.
 | |
| 4) Initiate OS shutdown.
 | |
|    (Driver will perform host control SMI when it is notified that the OS
 | |
|    has finished shutting down.)
 | |
| 
 | |
| 
 | |
| Host Control SMI Type
 | |
| 
 | |
| The following table shows the value to write to host_control_smi_type to
 | |
| perform a power cycle or power off host control action:
 | |
| 
 | |
| PowerEdge System    Host Control SMI Type
 | |
| ----------------    ---------------------
 | |
|       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
 | |
| 
 | |
| 
 |