amdgpu/pm: add kernel documentation for smu_get_power_limit

added doc tag "amdgpu_pp_power" with description
 added tags for enums  pp_power_limit_level, pp_power_type
 added tag for function smu_get_power_limit

Test:
* Temporary insertion into Documentation/gpu/amdgpu.rst
------------START------------
Power Limit
-----------
.. kernel-doc:: drivers/gpu/drm/amd/include/kgd_pp_interface.h
   :doc: amdgpu_pp_power

.. kernel-doc:: drivers/gpu/drm/amd/include/kgd_pp_interface.h
   :identifiers: pp_power_limit_level

.. kernel-doc:: drivers/gpu/drm/amd/include/kgd_pp_interface.h
   :identifiers: pp_power_type

.. kernel-doc:: drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
   :identifiers: smu_get_power_limit
-------------END-------------

Signed-off-by: Darren Powell <darren.powell@amd.com>
Reviewed-by: Lijo Lazar <lijo.lazar@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Darren Powell 2021-05-26 23:27:01 -04:00 committed by Alex Deucher
parent dc2a8240b2
commit 90a681c5e4
2 changed files with 38 additions and 0 deletions

View file

@ -194,6 +194,26 @@ enum pp_df_cstate {
DF_CSTATE_ALLOW,
};
/**
* DOC: amdgpu_pp_power
*
* APU power is managed to system-level requirements through the PPT
* (package power tracking) feature. PPT is intended to limit power to the
* requirements of the power source and could be dynamically updated to
* maximize APU performance within the system power budget.
*
* Two types of power measurement can be requested, where supported, with
* :c:type:`enum pp_power_type <pp_power_type>`.
*/
/**
* enum pp_power_limit_level - Used to query the power limits
*
* @PP_PWR_LIMIT_MIN: Minimum Power Limit
* @PP_PWR_LIMIT_CURRENT: Current Power Limit
* @PP_PWR_LIMIT_DEFAULT: Default Power Limit
* @PP_PWR_LIMIT_MAX: Maximum Power Limit
*/
enum pp_power_limit_level
{
PP_PWR_LIMIT_MIN = -1,
@ -202,6 +222,14 @@ enum pp_power_limit_level
PP_PWR_LIMIT_MAX,
};
/**
* enum pp_power_type - Used to specify the type of the requested power
*
* @PP_PWR_TYPE_SUSTAINED: manages the configurable, thermally significant
* moving average of APU power (default ~5000 ms).
* @PP_PWR_TYPE_FAST: manages the ~10 ms moving average of APU power,
* where supported.
*/
enum pp_power_type
{
PP_PWR_TYPE_SUSTAINED,

View file

@ -2173,6 +2173,16 @@ static int smu_set_fan_speed_rpm(void *handle, uint32_t speed)
return ret;
}
/**
* smu_get_power_limit - Request one of the SMU Power Limits
*
* @handle: pointer to smu context
* @limit: requested limit is written back to this variable
* @pp_limit_level: &pp_power_limit_level which limit of the power to return
* @pp_power_type: &pp_power_type type of power
* Return: 0 on success, <0 on error
*
*/
int smu_get_power_limit(void *handle,
uint32_t *limit,
enum pp_power_limit_level pp_limit_level,