diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2011-01-06 21:19:22 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-01-06 23:11:29 -0500 |
commit | 4fddba1fd9df94caaa03956bf36e1a887a1c92a5 (patch) | |
tree | cd30b44c4b7d1bc55f0f046772ceb2fe66206b90 /drivers/gpu/drm | |
parent | 36868bda88b92ce8a9aa8b3ee2e0d1e0de09cc19 (diff) |
drm/radeon/kms: handle NI thermal controller
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon.h | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_atombios.c | 6 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_pm.c | 1 |
3 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h index 73730fd1d0af..5598f9559a64 100644 --- a/drivers/gpu/drm/radeon/radeon.h +++ b/drivers/gpu/drm/radeon/radeon.h | |||
@@ -739,6 +739,7 @@ enum radeon_int_thermal_type { | |||
739 | THERMAL_TYPE_RV770, | 739 | THERMAL_TYPE_RV770, |
740 | THERMAL_TYPE_EVERGREEN, | 740 | THERMAL_TYPE_EVERGREEN, |
741 | THERMAL_TYPE_SUMO, | 741 | THERMAL_TYPE_SUMO, |
742 | THERMAL_TYPE_NI, | ||
742 | }; | 743 | }; |
743 | 744 | ||
744 | struct radeon_voltage { | 745 | struct radeon_voltage { |
diff --git a/drivers/gpu/drm/radeon/radeon_atombios.c b/drivers/gpu/drm/radeon/radeon_atombios.c index a2dfe257079c..03f1c9a10ba4 100644 --- a/drivers/gpu/drm/radeon/radeon_atombios.c +++ b/drivers/gpu/drm/radeon/radeon_atombios.c | |||
@@ -1891,6 +1891,7 @@ static const char *pp_lib_thermal_controller_names[] = { | |||
1891 | "Evergreen", | 1891 | "Evergreen", |
1892 | "emc2103", | 1892 | "emc2103", |
1893 | "Sumo", | 1893 | "Sumo", |
1894 | "Northern Islands", | ||
1894 | }; | 1895 | }; |
1895 | 1896 | ||
1896 | union power_info { | 1897 | union power_info { |
@@ -2154,6 +2155,11 @@ static void radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r | |||
2154 | (controller->ucFanParameters & | 2155 | (controller->ucFanParameters & |
2155 | ATOM_PP_FANPARAMETERS_NOFAN) ? "without" : "with"); | 2156 | ATOM_PP_FANPARAMETERS_NOFAN) ? "without" : "with"); |
2156 | rdev->pm.int_thermal_type = THERMAL_TYPE_SUMO; | 2157 | rdev->pm.int_thermal_type = THERMAL_TYPE_SUMO; |
2158 | } else if (controller->ucType == ATOM_PP_THERMALCONTROLLER_NISLANDS) { | ||
2159 | DRM_INFO("Internal thermal controller %s fan control\n", | ||
2160 | (controller->ucFanParameters & | ||
2161 | ATOM_PP_FANPARAMETERS_NOFAN) ? "without" : "with"); | ||
2162 | rdev->pm.int_thermal_type = THERMAL_TYPE_NI; | ||
2157 | } else if ((controller->ucType == | 2163 | } else if ((controller->ucType == |
2158 | ATOM_PP_THERMALCONTROLLER_EXTERNAL_GPIO) || | 2164 | ATOM_PP_THERMALCONTROLLER_EXTERNAL_GPIO) || |
2159 | (controller->ucType == | 2165 | (controller->ucType == |
diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c index 0afd26ccccfa..7ad2e1a6991d 100644 --- a/drivers/gpu/drm/radeon/radeon_pm.c +++ b/drivers/gpu/drm/radeon/radeon_pm.c | |||
@@ -440,6 +440,7 @@ static ssize_t radeon_hwmon_show_temp(struct device *dev, | |||
440 | temp = rv770_get_temp(rdev); | 440 | temp = rv770_get_temp(rdev); |
441 | break; | 441 | break; |
442 | case THERMAL_TYPE_EVERGREEN: | 442 | case THERMAL_TYPE_EVERGREEN: |
443 | case THERMAL_TYPE_NI: | ||
443 | temp = evergreen_get_temp(rdev); | 444 | temp = evergreen_get_temp(rdev); |
444 | break; | 445 | break; |
445 | case THERMAL_TYPE_SUMO: | 446 | case THERMAL_TYPE_SUMO: |