mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-21 03:33:59 +08:00
Merge branch 'drm-fixes-4.3' of git://people.freedesktop.org/~agd5f/linux into drm-fixes
Just a crash fix for radeon and amdgpu if the user has forcibly disabled dpm and tries to access the pwm sysfs controls. * 'drm-fixes-4.3' of git://people.freedesktop.org/~agd5f/linux: drm/amdgpu: add missing dpm check for KV dpm late init drm/amdgpu/dpm: don't add pwm attributes if DPM is disabled drm/radeon/dpm: don't add pwm attributes if DPM is disabled
This commit is contained in:
commit
c50f13f911
@ -294,10 +294,14 @@ static umode_t hwmon_attributes_visible(struct kobject *kobj,
|
|||||||
struct amdgpu_device *adev = dev_get_drvdata(dev);
|
struct amdgpu_device *adev = dev_get_drvdata(dev);
|
||||||
umode_t effective_mode = attr->mode;
|
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 &&
|
if (!adev->pm.dpm_enabled &&
|
||||||
(attr == &sensor_dev_attr_temp1_crit.dev_attr.attr ||
|
(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;
|
return 0;
|
||||||
|
|
||||||
/* Skip fan attributes if fan is not present */
|
/* Skip fan attributes if fan is not present */
|
||||||
|
@ -2997,6 +2997,9 @@ static int kv_dpm_late_init(void *handle)
|
|||||||
struct amdgpu_device *adev = (struct amdgpu_device *)handle;
|
struct amdgpu_device *adev = (struct amdgpu_device *)handle;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
if (!amdgpu_dpm)
|
||||||
|
return 0;
|
||||||
|
|
||||||
/* init the sysfs and debugfs files late */
|
/* init the sysfs and debugfs files late */
|
||||||
ret = amdgpu_pm_sysfs_init(adev);
|
ret = amdgpu_pm_sysfs_init(adev);
|
||||||
if (ret)
|
if (ret)
|
||||||
|
@ -717,10 +717,14 @@ static umode_t hwmon_attributes_visible(struct kobject *kobj,
|
|||||||
struct radeon_device *rdev = dev_get_drvdata(dev);
|
struct radeon_device *rdev = dev_get_drvdata(dev);
|
||||||
umode_t effective_mode = attr->mode;
|
umode_t effective_mode = attr->mode;
|
||||||
|
|
||||||
/* Skip limit attributes if DPM is not enabled */
|
/* Skip attributes if DPM is not enabled */
|
||||||
if (rdev->pm.pm_method != PM_METHOD_DPM &&
|
if (rdev->pm.pm_method != PM_METHOD_DPM &&
|
||||||
(attr == &sensor_dev_attr_temp1_crit.dev_attr.attr ||
|
(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;
|
return 0;
|
||||||
|
|
||||||
/* Skip fan attributes if fan is not present */
|
/* Skip fan attributes if fan is not present */
|
||||||
|
Loading…
Reference in New Issue
Block a user