drm/amd/powerplay: enable ppfeaturemask module parameter support on Vega20
authorEvan Quan <evan.quan@amd.com>
Mon, 29 Apr 2019 03:35:42 +0000 (11:35 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 24 May 2019 17:21:01 +0000 (12:21 -0500)
Support DPM/DS/ULV related bitmasks of ppfeaturemask module parameter.

Signed-off-by: Evan Quan <evan.quan@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c

index eb7002401587dff8ce45ac248908e1be3ff514c5..d18f34d4a51e17a4ef5f07875e25b2abe80b9fe5 100644 (file)
@@ -97,6 +97,27 @@ static void vega20_set_default_registry_data(struct pp_hwmgr *hwmgr)
        if (hwmgr->smu_version < 0x282100)
                data->registry_data.disallowed_features |= FEATURE_ECC_MASK;
 
+       if (!(hwmgr->feature_mask & PP_PCIE_DPM_MASK))
+               data->registry_data.disallowed_features |= FEATURE_DPM_LINK_MASK;
+
+       if (!(hwmgr->feature_mask & PP_SCLK_DPM_MASK))
+               data->registry_data.disallowed_features |= FEATURE_DPM_GFXCLK_MASK;
+
+       if (!(hwmgr->feature_mask & PP_SOCCLK_DPM_MASK))
+               data->registry_data.disallowed_features |= FEATURE_DPM_SOCCLK_MASK;
+
+       if (!(hwmgr->feature_mask & PP_MCLK_DPM_MASK))
+               data->registry_data.disallowed_features |= FEATURE_DPM_UCLK_MASK;
+
+       if (!(hwmgr->feature_mask & PP_DCEFCLK_DPM_MASK))
+               data->registry_data.disallowed_features |= FEATURE_DPM_DCEFCLK_MASK;
+
+       if (!(hwmgr->feature_mask & PP_ULV_MASK))
+               data->registry_data.disallowed_features |= FEATURE_ULV_MASK;
+
+       if (!(hwmgr->feature_mask & PP_SCLK_DEEP_SLEEP_MASK))
+               data->registry_data.disallowed_features |= FEATURE_DS_GFXCLK_MASK;
+
        data->registry_data.od_state_in_dc_support = 0;
        data->registry_data.thermal_support = 1;
        data->registry_data.skip_baco_hardware = 0;