mirror of
https://github.com/torvalds/linux.git
synced 2025-11-05 11:10:22 +02:00
drm/amd/pp: Avoid divide-by-zero in fan_ctrl_set_fan_speed_rpm
The minRPM speed maybe equal to zero. so need to check input RPM not equal to 0, otherwise cause divide-by-zero driver crash. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Rex Zhu <Rex.Zhu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
b3ca0f397e
commit
c52dcf4919
2 changed files with 2 additions and 0 deletions
|
|
@ -260,6 +260,7 @@ int smu7_fan_ctrl_set_fan_speed_rpm(struct pp_hwmgr *hwmgr, uint32_t speed)
|
||||||
if (hwmgr->thermal_controller.fanInfo.bNoFan ||
|
if (hwmgr->thermal_controller.fanInfo.bNoFan ||
|
||||||
(hwmgr->thermal_controller.fanInfo.
|
(hwmgr->thermal_controller.fanInfo.
|
||||||
ucTachometerPulsesPerRevolution == 0) ||
|
ucTachometerPulsesPerRevolution == 0) ||
|
||||||
|
speed == 0 ||
|
||||||
(speed < hwmgr->thermal_controller.fanInfo.ulMinRPM) ||
|
(speed < hwmgr->thermal_controller.fanInfo.ulMinRPM) ||
|
||||||
(speed > hwmgr->thermal_controller.fanInfo.ulMaxRPM))
|
(speed > hwmgr->thermal_controller.fanInfo.ulMaxRPM))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
||||||
|
|
@ -312,6 +312,7 @@ int vega10_fan_ctrl_set_fan_speed_rpm(struct pp_hwmgr *hwmgr, uint32_t speed)
|
||||||
int result = 0;
|
int result = 0;
|
||||||
|
|
||||||
if (hwmgr->thermal_controller.fanInfo.bNoFan ||
|
if (hwmgr->thermal_controller.fanInfo.bNoFan ||
|
||||||
|
speed == 0 ||
|
||||||
(speed < hwmgr->thermal_controller.fanInfo.ulMinRPM) ||
|
(speed < hwmgr->thermal_controller.fanInfo.ulMinRPM) ||
|
||||||
(speed > hwmgr->thermal_controller.fanInfo.ulMaxRPM))
|
(speed > hwmgr->thermal_controller.fanInfo.ulMaxRPM))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue