https://bugzilla.kernel.org/show_bug.cgi?id=76321
--- Comment #2 from Pali Rohár pali.rohar@gmail.com --- Here is output from sensors with your patch (when card is turned off):
radeon-pci-0100 Adapter: PCI adapter ERROR: Can't get value of subfeature temp1_crit: Can't read ERROR: Can't get value of subfeature temp1_crit_hyst: Can't read temp1: N/A (crit = +0.0°C, hyst = +0.0°C)
Values crit & hyst worked fine (as it is not runtime value, but static).
And also your patch disabling showing/changing dpm/pm profile. I do not know if there is some problem to use that sysfs files when card is turned off, but if not I think there is no reason to disable it.
So in my opinion only this part of patch is needed:
@@ -538,8 +570,13 @@ static ssize_t radeon_hwmon_show_temp(struct device *dev, char *buf) { struct radeon_device *rdev = dev_get_drvdata(dev); + struct drm_device *ddev = rdev->ddev; int temp;
+ if ((rdev->flags & RADEON_IS_PX) && + (ddev->switch_power_state != DRM_SWITCH_POWER_ON)) + return -EINVAL; + if (rdev->asic->pm.get_temperature) temp = radeon_get_temperature(rdev); else
Or is really needed other hunks too?