drm/radeon: add support for thermal controller on KB/KV
authorAlex Deucher <alexander.deucher@amd.com>
Tue, 23 Apr 2013 01:41:26 +0000 (21:41 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 30 Aug 2013 20:30:13 +0000 (16:30 -0400)
No support for reading temperature back yet.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/radeon/radeon.h
drivers/gpu/drm/radeon/radeon_atombios.c

index 262c4c4..d1f5f7b 100644 (file)
@@ -1132,6 +1132,7 @@ enum radeon_int_thermal_type {
        THERMAL_TYPE_SI,
        THERMAL_TYPE_EMC2103_WITH_INTERNAL,
        THERMAL_TYPE_CI,
+       THERMAL_TYPE_KV,
 };
 
 struct radeon_voltage {
index 27de73c..6247b5e 100644 (file)
@@ -2237,6 +2237,11 @@ static void radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r
                                 (controller->ucFanParameters &
                                  ATOM_PP_FANPARAMETERS_NOFAN) ? "without" : "with");
                        rdev->pm.int_thermal_type = THERMAL_TYPE_CI;
+               } else if (controller->ucType == ATOM_PP_THERMALCONTROLLER_KAVERI) {
+                       DRM_INFO("Internal thermal controller %s fan control\n",
+                                (controller->ucFanParameters &
+                                 ATOM_PP_FANPARAMETERS_NOFAN) ? "without" : "with");
+                       rdev->pm.int_thermal_type = THERMAL_TYPE_KV;
                } else if ((controller->ucType ==
                            ATOM_PP_THERMALCONTROLLER_EXTERNAL_GPIO) ||
                           (controller->ucType ==