On 04/10/2015 09:15 AM, Ville Aakko wrote:
Hi, I'd like to know if it would be possible to add support for additional sensors on a motherboard having an nct6791d sensor chip, and - presuming it is possible, how much work / difficult that would be. I'm currently using the Asus Maximus Gaming VII Gene motherboard. It has one additional temperature sensor (T_SENSOR1), which I have connected a working sensor to. From BIOS I can see it is working, since it gives sensible readings. The nct6775 driver (which I'm just presuming is also handling the additional sensor, though I'm not 100% sure) does not report the temperature for this sensor, however: $ sensors nct6791-* | grep °C SYSTIN: +36.0°C (high = +55.0°C, hyst = +75.0°C) sensor = thermistor CPUTIN: +50.5°C (high = +80.0°C, hyst = +75.0°C) sensor = thermistor AUXTIN0: +45.0°C sensor = thermistor AUXTIN1: +127.0°C sensor = thermistor AUXTIN2: +37.0°C sensor = thermistor AUXTIN3: +55.0°C sensor = thermistor PECI Agent 0: +63.5°C PCH_CHIP_CPU_MAX_TEMP: +0.0°C PCH_CHIP_TEMP: +0.0°C PCH_CPU_TEMP: +0.0°C I'd presume it should be one of the AUXTIN[0-3] sensors, but they give seemingly bogus (see *) information, that is exactly the same wether the sensor is connected or not (I was doing some very intensive computation while taking the reading above, which causes them to be quite high). I'd be happy to provide any information to help add proper support.Testing some patches and compiling the kernel module is not a problem. I've also figured I can dump some of the registers via isadump and looked at the source, but I haven't figured out (at least yet) where to look for the values, and where the temperature data might be in the dumps - and if it is available, how the source should be modified. I didn't give it too much effor though since I might be totally on the wrong track. But in case someone (I presume the author is on this list?) can point me in the right direction, I might even be able to make the necessary changes and test them myself. I'd be pleased for any help or comments! Thanks, - Ville *) AUXTIN0,1 and 3 wary from anywhere between -127 to +127 seemingly unrelated to anything, and 2 is always around 37°C. Also, I have tried to cool / warm the sensor while 'watch sensors' to see some correlation, to rule out a some kind of computation fault in the driver, but that does not seem to be the case. To me it seems that AUXTIN[0-3] is looking at the wrong (or unconnected in my MB) address. SYSTIN and CPUTIN give something usefull, though I'm not sure where they are on the sensors, PECI Agent is self-explanatory, the rest below that are always 0°C.
If the sensor is connected to AUXTIN[0123], it _should_ be working. Registers to directly read temperatures from the chip are as follows: Bank 4: 0x90 SYSTIN 0x91 CPUTIN 0x92 AUXTIN0 0x93 AUXTIN1 0x94 AUXTIN2 0x95 AUXTIN3 Additional temperature registers: Bank 0: 0x27 SMIOVT1 The temperature source for this register is set in bank 6, register 0x21. 0x73, 0x74 Monitor Temperature Register 1 (0x73=fraction, 0x74=Integer) 0x75, 0x76 Reg 2 0x77, 0x78 Reg 3 0x79, 0x7a Reg 4 0x7b, 0x7c Reg 5 The temperature sources for those registers are set in bank 1, 2, 3, 8, and 9, in register 0 of each bank. There is another source select register in bank 0xa, register 0, which you could check as well. Bank 1: 0x50 SMIOVT2 The temperature source for this register is set in bank 6, register 0x22. In the source select registers, the lower 5 bits define the temperature source. There are too many to list each individually, but here are some important values. 0x01 - 0x06 SYSSTIN to AUXTIN3 0x08 - 0x0f SMBus master sources (not explained in detail) 0x10, 0x11 PECI0, PECI1 0x12 - 0x19 PCH temperatures 0x1a BYTE_TEMP, not explained in detail 0x1f Virtual_TEMP, not explained in detail You can try reading any of these registers to see if changes in temperature are reflected. We can then go from there and try to determine what is missing in the driver. Thanks, Guenter _______________________________________________ lm-sensors mailing list lm-sensors@xxxxxxxxxxxxxx http://lists.lm-sensors.org/mailman/listinfo/lm-sensors