mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-20 13:41:30 +00:00
drm/amdgpu: implement ENABLED_SMC_FEATURES_MASK sensor for vega10
So we can query what features are enabled for debugging. Reviewed-by: Rex Zhu <Rex.Zhu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
e0c3d04747
commit
1f6c52ed09
3 changed files with 11 additions and 4 deletions
|
@ -3714,6 +3714,11 @@ static int vega10_read_sensor(struct pp_hwmgr *hwmgr, int idx,
|
||||||
SMUSVI0_PLANE0_CURRENTVID__CURRENT_SVI0_PLANE0_VID__SHIFT;
|
SMUSVI0_PLANE0_CURRENTVID__CURRENT_SVI0_PLANE0_VID__SHIFT;
|
||||||
*((uint32_t *)value) = (uint32_t)convert_to_vddc((uint8_t)val_vid);
|
*((uint32_t *)value) = (uint32_t)convert_to_vddc((uint8_t)val_vid);
|
||||||
return 0;
|
return 0;
|
||||||
|
case AMDGPU_PP_SENSOR_ENABLED_SMC_FEATURES_MASK:
|
||||||
|
ret = vega10_get_enabled_smc_features(hwmgr, (uint64_t *)value);
|
||||||
|
if (!ret)
|
||||||
|
*size = 8;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
ret = -EINVAL;
|
ret = -EINVAL;
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -98,8 +98,8 @@ int vega10_enable_smc_features(struct pp_hwmgr *hwmgr,
|
||||||
msg, feature_mask);
|
msg, feature_mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int vega10_get_smc_features(struct pp_hwmgr *hwmgr,
|
int vega10_get_enabled_smc_features(struct pp_hwmgr *hwmgr,
|
||||||
uint32_t *features_enabled)
|
uint64_t *features_enabled)
|
||||||
{
|
{
|
||||||
if (features_enabled == NULL)
|
if (features_enabled == NULL)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
@ -112,9 +112,9 @@ static int vega10_get_smc_features(struct pp_hwmgr *hwmgr,
|
||||||
|
|
||||||
static bool vega10_is_dpm_running(struct pp_hwmgr *hwmgr)
|
static bool vega10_is_dpm_running(struct pp_hwmgr *hwmgr)
|
||||||
{
|
{
|
||||||
uint32_t features_enabled = 0;
|
uint64_t features_enabled = 0;
|
||||||
|
|
||||||
vega10_get_smc_features(hwmgr, &features_enabled);
|
vega10_get_enabled_smc_features(hwmgr, &features_enabled);
|
||||||
|
|
||||||
if (features_enabled & SMC_DPM_FEATURES)
|
if (features_enabled & SMC_DPM_FEATURES)
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -44,6 +44,8 @@ struct vega10_smumgr {
|
||||||
|
|
||||||
int vega10_enable_smc_features(struct pp_hwmgr *hwmgr,
|
int vega10_enable_smc_features(struct pp_hwmgr *hwmgr,
|
||||||
bool enable, uint32_t feature_mask);
|
bool enable, uint32_t feature_mask);
|
||||||
|
int vega10_get_enabled_smc_features(struct pp_hwmgr *hwmgr,
|
||||||
|
uint64_t *features_enabled);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue