diff options
Diffstat (limited to 'meta-amdfalconx86/recipes-kernel/linux/linux-yocto/0578-drm-amdgpu-dpm-don-t-add-pwm-attributes-if-DPM-is-di.patch')
-rw-r--r-- | meta-amdfalconx86/recipes-kernel/linux/linux-yocto/0578-drm-amdgpu-dpm-don-t-add-pwm-attributes-if-DPM-is-di.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/meta-amdfalconx86/recipes-kernel/linux/linux-yocto/0578-drm-amdgpu-dpm-don-t-add-pwm-attributes-if-DPM-is-di.patch b/meta-amdfalconx86/recipes-kernel/linux/linux-yocto/0578-drm-amdgpu-dpm-don-t-add-pwm-attributes-if-DPM-is-di.patch new file mode 100644 index 00000000..9c9b4ae4 --- /dev/null +++ b/meta-amdfalconx86/recipes-kernel/linux/linux-yocto/0578-drm-amdgpu-dpm-don-t-add-pwm-attributes-if-DPM-is-di.patch @@ -0,0 +1,40 @@ +From 27100735adbcb872854674bed1d000825f9954ac Mon Sep 17 00:00:00 2001 +From: Alex Deucher <alexander.deucher@amd.com> +Date: Mon, 19 Oct 2015 15:49:11 -0400 +Subject: [PATCH 0578/1050] drm/amdgpu/dpm: don't add pwm attributes if DPM is + disabled + +PWM fan control is only available with DPM. There is no non-DPM +support on amdgpu, so we should never get a crash here because +the sysfs nodes would never be created in the first place. Add the +check just in case to be on the safe side. + +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c +index efed115..ed2bbe5 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c +@@ -294,10 +294,14 @@ static umode_t hwmon_attributes_visible(struct kobject *kobj, + struct amdgpu_device *adev = dev_get_drvdata(dev); + umode_t effective_mode = attr->mode; + +- /* Skip limit attributes if DPM is not enabled */ ++ /* Skip attributes if DPM is not enabled */ + if (!adev->pm.dpm_enabled && + (attr == &sensor_dev_attr_temp1_crit.dev_attr.attr || +- attr == &sensor_dev_attr_temp1_crit_hyst.dev_attr.attr)) ++ attr == &sensor_dev_attr_temp1_crit_hyst.dev_attr.attr || ++ attr == &sensor_dev_attr_pwm1.dev_attr.attr || ++ attr == &sensor_dev_attr_pwm1_enable.dev_attr.attr || ++ attr == &sensor_dev_attr_pwm1_max.dev_attr.attr || ++ attr == &sensor_dev_attr_pwm1_min.dev_attr.attr)) + return 0; + + /* Skip fan attributes if fan is not present */ +-- +1.9.1 + |