Loading drivers/gpu/drm/radeon/radeon.h +5 −0 Original line number Diff line number Diff line Loading @@ -1623,6 +1623,11 @@ struct radeon_pm { /* internal thermal controller on rv6xx+ */ enum radeon_int_thermal_type int_thermal_type; struct device *int_hwmon_dev; /* fan control parameters */ bool no_fan; u8 fan_pulses_per_revolution; u8 fan_min_rpm; u8 fan_max_rpm; /* dpm */ bool dpm_enabled; struct radeon_dpm dpm; Loading drivers/gpu/drm/radeon/radeon_atombios.c +8 −0 Original line number Diff line number Diff line Loading @@ -2248,6 +2248,14 @@ static void radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r /* add the i2c bus for thermal/fan chip */ if (controller->ucType > 0) { if (controller->ucFanParameters & ATOM_PP_FANPARAMETERS_NOFAN) rdev->pm.no_fan = true; rdev->pm.fan_pulses_per_revolution = controller->ucFanParameters & ATOM_PP_FANPARAMETERS_TACHOMETER_PULSES_PER_REVOLUTION_MASK; if (rdev->pm.fan_pulses_per_revolution) { rdev->pm.fan_min_rpm = controller->ucFanMinRPM; rdev->pm.fan_max_rpm = controller->ucFanMaxRPM; } if (controller->ucType == ATOM_PP_THERMALCONTROLLER_RV6xx) { DRM_INFO("Internal thermal controller %s fan control\n", (controller->ucFanParameters & Loading Loading
drivers/gpu/drm/radeon/radeon.h +5 −0 Original line number Diff line number Diff line Loading @@ -1623,6 +1623,11 @@ struct radeon_pm { /* internal thermal controller on rv6xx+ */ enum radeon_int_thermal_type int_thermal_type; struct device *int_hwmon_dev; /* fan control parameters */ bool no_fan; u8 fan_pulses_per_revolution; u8 fan_min_rpm; u8 fan_max_rpm; /* dpm */ bool dpm_enabled; struct radeon_dpm dpm; Loading
drivers/gpu/drm/radeon/radeon_atombios.c +8 −0 Original line number Diff line number Diff line Loading @@ -2248,6 +2248,14 @@ static void radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r /* add the i2c bus for thermal/fan chip */ if (controller->ucType > 0) { if (controller->ucFanParameters & ATOM_PP_FANPARAMETERS_NOFAN) rdev->pm.no_fan = true; rdev->pm.fan_pulses_per_revolution = controller->ucFanParameters & ATOM_PP_FANPARAMETERS_TACHOMETER_PULSES_PER_REVOLUTION_MASK; if (rdev->pm.fan_pulses_per_revolution) { rdev->pm.fan_min_rpm = controller->ucFanMinRPM; rdev->pm.fan_max_rpm = controller->ucFanMaxRPM; } if (controller->ucType == ATOM_PP_THERMALCONTROLLER_RV6xx) { DRM_INFO("Internal thermal controller %s fan control\n", (controller->ucFanParameters & Loading