drm/amd/powerplay: move getting MAX_FAN_RPM value to asic level
authorHuang Rui <ray.huang@amd.com>
Mon, 1 Apr 2019 10:06:36 +0000 (18:06 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 21 Jun 2019 23:59:26 +0000 (18:59 -0500)
Getting MAX_FAN_RPM value needs to be read by pptable, so it should be moved to
asic level.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Reviewed-by: Kevin Wang <kevin1.wang@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/powerplay/smu_v11_0.c
drivers/gpu/drm/amd/powerplay/vega20_ppt.c

index a1b63a3..c11341c 100644 (file)
@@ -1302,8 +1302,6 @@ static int smu_v11_0_read_sensor(struct smu_context *smu,
                                 enum amd_pp_sensors sensor,
                                 void *data, uint32_t *size)
 {
-       struct smu_table_context *table_context = &smu->smu_table;
-       PPTable_t *pptable = table_context->driver_pptable;
        int ret = 0;
        switch (sensor) {
        case AMDGPU_PP_SENSOR_GPU_LOAD:
@@ -1339,10 +1337,6 @@ static int smu_v11_0_read_sensor(struct smu_context *smu,
                *(uint32_t *)data = 0;
                *size = 4;
                break;
-       case AMDGPU_PP_SENSOR_MAX_FAN_RPM:
-               *(uint32_t *)data = pptable->FanMaximumRpm;
-               *size = 4;
-               break;
        default:
                ret = smu_common_read_sensor(smu, sensor, data, size);
                break;
index f11ff03..22e13a9 100644 (file)
@@ -2950,6 +2950,8 @@ static int vega20_read_sensor(struct smu_context *smu,
                              void *data, uint32_t *size)
 {
        int ret = 0;
+       struct smu_table_context *table_context = &smu->smu_table;
+       PPTable_t *pptable = table_context->driver_pptable;
 
        switch (sensor) {
        case AMDGPU_PP_SENSOR_UVD_POWER:
@@ -2960,6 +2962,10 @@ static int vega20_read_sensor(struct smu_context *smu,
                *(uint32_t *)data = smu_feature_is_enabled(smu, SMU_FEATURE_DPM_VCE_BIT) ? 1 : 0;
                *size = 4;
                break;
+       case AMDGPU_PP_SENSOR_MAX_FAN_RPM:
+               *(uint32_t *)data = pptable->FanMaximumRpm;
+               *size = 4;
+               break;
        default:
                return -EINVAL;
        }