Copyright (c) 2017-2021, Arm Limited. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
System Control and Management Interface V1.0 http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/ DEN0056A_System_Control_and_Management_Interface.pdf 
 
      
        
          | typedef EFI_STATUS  | 
          ( | 
          EFIAPI *  | 
          SCMI_PERFORMANCE_LEVEL_GET | ) | 
           | 
        
      
 
Return version of the performance management protocol supported by SCP. firmware.
- Parameters
 - 
  
    | [in] | This | A Pointer to SCMI_PERFORMANCE_PROTOCOL Instance. | 
    | [out] | Version | Version of the supported SCMI performance management protocol. | 
  
   
- Return values
 - 
  
    | EFI_SUCCESS | The version is returned.  | 
    | EFI_DEVICE_ERROR | SCP returns an SCMI error.  | 
    | !(EFI_SUCCESS) | Other errors. | 
  
   
Return protocol attributes of the performance management protocol.
- Parameters
 - 
  
    | [in] | This | A Pointer to SCMI_PERFORMANCE_PROTOCOL Instance. | 
    | [out] | Attributes | Protocol attributes. | 
  
   
- Return values
 - 
  
    | EFI_SUCCESS | Protocol attributes are returned.  | 
    | EFI_DEVICE_ERROR | SCP returns an SCMI error.  | 
    | !(EFI_SUCCESS) | Other errors. | 
  
   
Return performance domain attributes.
- Parameters
 - 
  
    | [in] | This | A Pointer to SCMI_PERFORMANCE_PROTOCOL Instance.  | 
    | [in] | DomainId | Identifier for the performance domain. | 
    | [out] | Attributes | Performance domain attributes. | 
  
   
- Return values
 - 
  
    | EFI_SUCCESS | Domain attributes are returned.  | 
    | EFI_DEVICE_ERROR | SCP returns an SCMI error.  | 
    | !(EFI_SUCCESS) | Other errors. | 
  
   
Return list of performance domain levels of a given domain.
- Parameters
 - 
  
    | [in] | This | A Pointer to SCMI_PERFORMANCE_PROTOCOL Instance.  | 
    | [in] | DomainId | Identifier for the performance domain. | 
    | [out] | NumLevels | Total number of levels a domain can support. | 
    | [in,out] | LevelArraySize | Size of the performance level array. | 
    | [out] | LevelArray | Array of the performance levels. | 
  
   
- Return values
 - 
  
    | EFI_SUCCESS | Domain levels are returned.  | 
    | EFI_DEVICE_ERROR | SCP returns an SCMI error.  | 
    | EFI_BUFFER_TOO_SMALL | LevelArraySize is too small for the result. It has been updated to the size needed.  | 
    | !(EFI_SUCCESS) | Other errors. | 
  
   
Set performance limits of a domain.
- Parameters
 - 
  
    | [in] | This | A Pointer to SCMI_PERFORMANCE_PROTOCOL Instance.  | 
    | [in] | DomainId | Identifier for the performance domain.  | 
    | [in] | Limit | Performance limit to set. | 
  
   
- Return values
 - 
  
    | EFI_SUCCESS | Performance limits set successfully.  | 
    | EFI_DEVICE_ERROR | SCP returns an SCMI error.  | 
    | !(EFI_SUCCESS) | Other errors. | 
  
   
Get performance limits of a domain.
- Parameters
 - 
  
    | [in] | This | A Pointer to SCMI_PERFORMANCE_PROTOCOL Instance.  | 
    | [in] | DomainId | Identifier for the performance domain. | 
    | [out] | Limit | Performance Limits of the domain. | 
  
   
- Return values
 - 
  
    | EFI_SUCCESS | Performance limits are returned.  | 
    | EFI_DEVICE_ERROR | SCP returns an SCMI error.  | 
    | !(EFI_SUCCESS) | Other errors. | 
  
   
Set performance level of a domain.
- Parameters
 - 
  
    | [in] | This | A Pointer to SCMI_PERFORMANCE_PROTOCOL Instance.  | 
    | [in] | DomainId | Identifier for the performance domain.  | 
    | [in] | Level | Performance level of the domain. | 
  
   
- Return values
 - 
  
    | EFI_SUCCESS | Performance level set successfully.  | 
    | EFI_DEVICE_ERROR | SCP returns an SCMI error.  | 
    | !(EFI_SUCCESS) | Other errors. | 
  
   
Get performance level of a domain.
- Parameters
 - 
  
    | [in] | This | A Pointer to SCMI_PERFORMANCE_PROTOCOL Instance.  | 
    | [in] | DomainId | Identifier for the performance domain. | 
    | [out] | Level | Performance level of the domain. | 
  
   
- Return values
 - 
  
    | EFI_SUCCESS | Performance level got successfully.  | 
    | EFI_DEVICE_ERROR | SCP returns an SCMI error.  | 
    | !(EFI_SUCCESS) | Other errors.  |