dell / libsmbios

library for interacting with Dell SMBIOS tables
Other
190 stars 39 forks source link

Sensor access from Linux on new Tiger Lake systems? #99

Open AaronKelley opened 3 years ago

AaronKelley commented 3 years ago

Hi, I noticed that with the new Precision 7560/7760 that have just launched, the old SMM BIOS interface for accessing sensor data (fan speeds, temperatures, etc.) does not appear to be functional. I'm referring to the one used by the dell-smm-hwmon driver (https://github.com/torvalds/linux/blob/master/drivers/hwmon/dell-smm-hwmon.c), which I realize does not seem to have been written by Dell. This interface is also used by some Windows tools to present sensor data.

Is it correct that this interface has been removed, or is some new step needed to enable it?

If it is no longer accessible... I'm assuming that sensor data is accessible through the SMI/WMI interface, because I see that after installing Dell Command | Monitor on Windows, I can pull sensor data through PowerShell/WMI. However, I cannot find any documentation in this project for accessing the sensor data. I'm familiar with making SMI calls and the data structure for these (i.e. smi.simple_ci_smi( 17, 19, 0 ) from smbios-thermal-ctl, which basically fills the class, selector, and first input value). Are you able to share which "class" and "selector" values are needed to pull the sensor data directly via SMI/WMI?

Thanks for any feedback.

AaronKelley commented 3 years ago

Figured it out myself... The sensor values can be pulled by issuing a "token read" request. Class: 0 Selector: 0 Input field 1: token value

Output field 1: 0 indicates success Output field 2: Current sensor reading

Token values are 0xF100, 0xF110, 0xF120, 0xF130, 0xF140, and 0xF150 for temperature sensors; and, 0xF600 and 0xF610 for the fan speed sensors.