Updated IT87 Driver Pull Request


Recommended Posts

The new generation of gigabyte z490 boards are using two super IO chips to gather temperature, fan speed, and pwm control.  The in kernel driver is 3 years old, thus only supports the IT8792E Super IO chip, but doesn't have updated support for the IT9699E Super IO chip.  

 

I'm not that good around linux doing make commands and don't want to mess up my install.  Is there a way to include this updated driver in one of the 6.9 betas?

 

https://github.com/gamanakis/it87/tree/it8688E

 

This info is gathered from this github issue discussion:

 

https://github.com/lm-sensors/lm-sensors/issues/154

 

Thank you devs!

  • Like 1
Link to comment
  • 3 months later...
On 11/14/2020 at 11:11 PM, madelectron said:

The new generation of gigabyte z490 boards are using two super IO chips to gather temperature, fan speed, and pwm control.  The in kernel driver is 3 years old, thus only supports the IT8792E Super IO chip, but doesn't have updated support for the IT9699E Super IO chip.  

 

I'm not that good around linux doing make commands and don't want to mess up my install.  Is there a way to include this updated driver in one of the 6.9 betas?

 

https://github.com/gamanakis/it87/tree/it8688E

 

This info is gathered from this github issue discussion:

 

https://github.com/lm-sensors/lm-sensors/issues/154

 

Thank you devs!

That would be very useful. Do we know if the driver made it in to the beta?

Link to comment
  • 8 months later...
  • 3 months later...
  • 3 months later...
  • 2 weeks later...
1 hour ago, soerenderfor said:

@ich777 - It could be very nice. I use a Gigabyte X570S AORUS MASTER. I will be very happy if you can make the temp/fan sensor to work.

But please be aware that this driver can introduce very funky behavior, also I thought this chip is already supported by 6.10.2 or am I wrong?

Link to comment
On 5/29/2022 at 8:08 AM, ich777 said:

@madelectron & @mikeyosm & @wallas9512 where you able to resolve this issue, or does it run finaly on 6.10.2?

 

I can surely create a plugin for this chip with the modified driver from the linked GitHub repository but I have to say this driver can cause some funky behavior to the system itself and maybe also cause crashes...

@ich777 Please create a plugin. I have to resort to using acpi_enforce_resources=lax and modprobe it87 force_id=0x8628 to get the system to show temps/fans.

My board is Gigabyte Z690  - https://www.gigabyte.com/Motherboard/Z690-AORUS-MASTER-rev-1x/sp#sp

Link to comment
33 minutes ago, mikeyosm said:

@ich777 Please create a plugin. I have to resort to using acpi_enforce_resources=lax and modprobe it87 force_id=0x8628 to get the system to show temps/fans.

But I really don't think that's necessary because newer Kernel versions are supporting that Chip from what I know.

Link to comment
  • 2 weeks later...

@ich777

 

What is the current recommended solution for this?

 

I am running unRAID 6.10.3 on a Gigabyte C246-WU4 motherboard. I have not added acpi_enforce_resources=lax to my syslinux config.

I have a sensor with ID 0x8688 not being detected.

 

 

My results of sensors-detect are as follows:

 

root@Tower:/# sensors-detect
# sensors-detect version 3.6.0
# System: Gigabyte Technology Co., Ltd. C246-WU4 [Default string]
# Board: Gigabyte Technology Co., Ltd. C246-WU4-CF
# Kernel: 5.15.46-Unraid x86_64
# Processor: Intel(R) Core(TM) i9-9900 CPU @ 3.10GHz (6/158/13)

This program will help you determine which kernel modules you need
to load to use lm_sensors most effectively. It is generally safe
and recommended to accept the default answers to all questions,
unless you know what you're doing.

Some south bridges, CPUs or memory controllers contain embedded sensors.
Do you want to scan for them? This is totally safe. (YES/no):
Silicon Integrated Systems SIS5595...                       No
VIA VT82C686 Integrated Sensors...                          No
VIA VT8231 Integrated Sensors...                            No
AMD K8 thermal sensors...                                   No
AMD Family 10h thermal sensors...                           No
AMD Family 11h thermal sensors...                           No
AMD Family 12h and 14h thermal sensors...                   No
AMD Family 15h thermal sensors...                           No
AMD Family 16h thermal sensors...                           No
AMD Family 17h thermal sensors...                           No
AMD Family 15h power sensors...                             No
AMD Family 16h power sensors...                             No
Hygon Family 18h thermal sensors...                         No
Intel digital thermal sensor...                             Success!
    (driver `coretemp')
Intel AMB FB-DIMM thermal sensor...                         No
Intel 5500/5520/X58 thermal sensor...                       No
VIA C7 thermal sensor...                                    No
VIA Nano thermal sensor...                                  No

Some Super I/O chips contain embedded sensors. We have to write to
standard I/O ports to probe them. This is usually safe.
Do you want to scan for Super I/O sensors? (YES/no):
Probing for Super-I/O at 0x2e/0x2f
Trying family `National Semiconductor/ITE'...               No
Trying family `SMSC'...                                     No
Trying family `VIA/Winbond/Nuvoton/Fintek'...               No
Trying family `ITE'...                                      Yes
Found unknown chip with ID 0x8688
Probing for Super-I/O at 0x4e/0x4f
Trying family `National Semiconductor/ITE'...               No
Trying family `SMSC'...                                     No
Trying family `VIA/Winbond/Nuvoton/Fintek'...               No
Trying family `ITE'...                                      Yes
Found `ITE IT8792E Super IO Sensors'                        Success!
    (address 0xa60, driver `it87')

Some systems (mainly servers) implement IPMI, a set of common interfaces
through which system health data may be retrieved, amongst other things.
We first try to get the information from SMBIOS. If we don't find it
there, we have to read from arbitrary I/O ports to probe for such
interfaces. This is normally safe. Do you want to scan for IPMI
interfaces? (YES/no):
Probing for `IPMI BMC KCS' at 0xca0...                      No
Probing for `IPMI BMC SMIC' at 0xca8...                     No

Some hardware monitoring chips are accessible through the ISA I/O ports.
We have to write to arbitrary I/O ports to probe them. This is usually
safe though. Yes, you do have ISA I/O ports even if you do not have any
ISA slots! Do you want to scan the ISA I/O ports? (yes/NO):

Lastly, we can probe the I2C/SMBus adapters for connected hardware
monitoring devices. This is the most risky part, and while it works
reasonably well on most systems, it has been reported to cause trouble
on some systems.
Do you want to probe the I2C/SMBus adapters now? (YES/no):
Using driver `i2c-i801' for device 0000:00:1f.4: Cannon Lake-H (PCH)
Module i2c-dev loaded successfully.

Next adapter: SMBus I801 adapter at efa0 (i2c-0)
Do you want to scan it? (yes/NO/selectively):

Next adapter: i915 gmbus dpb (i2c-1)
Do you want to scan it? (yes/NO/selectively):

Next adapter: i915 gmbus dpc (i2c-2)
Do you want to scan it? (yes/NO/selectively):

Next adapter: i915 gmbus misc (i2c-3)
Do you want to scan it? (yes/NO/selectively):

Next adapter: i915 gmbus dpd (i2c-4)
Do you want to scan it? (yes/NO/selectively):

Next adapter: AUX C/DDI C/PHY C (i2c-5)
Do you want to scan it? (yes/NO/selectively):

Next adapter: AUX D/DDI D/PHY D (i2c-6)
Do you want to scan it? (yes/NO/selectively):


Now follows a summary of the probes I have just done.
Just press ENTER to continue:

Driver `coretemp':
  * Chip `Intel digital thermal sensor' (confidence: 9)

Driver `it87':
  * ISA bus, address 0xa60
    Chip `ITE IT8792E Super IO Sensors' (confidence: 9)

Do you want to overwrite /etc/sysconfig/lm_sensors? (YES/no):
Copy prog/init/lm_sensors.init to /etc/init.d/lm_sensors
for initialization at boot time.
You should now start the lm_sensors service to load the required
kernel modules.

Unloading i2c-dev... OK

 

results of sensors command:

 

root@Tower:/# sensors
coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +65.0°C  (high = +86.0°C, crit = +100.0°C)
Core 0:        +58.0°C  (high = +86.0°C, crit = +100.0°C)
Core 1:        +65.0°C  (high = +86.0°C, crit = +100.0°C)
Core 2:        +57.0°C  (high = +86.0°C, crit = +100.0°C)
Core 3:        +57.0°C  (high = +86.0°C, crit = +100.0°C)
Core 4:        +59.0°C  (high = +86.0°C, crit = +100.0°C)
Core 5:        +57.0°C  (high = +86.0°C, crit = +100.0°C)
Core 6:        +58.0°C  (high = +86.0°C, crit = +100.0°C)
Core 7:        +58.0°C  (high = +86.0°C, crit = +100.0°C)

nvme-pci-0300
Adapter: PCI adapter
Composite:    +41.9°C  (low  =  -0.1°C, high = +69.8°C)
                       (crit = +84.8°C)

acpitz-acpi-0
Adapter: ACPI interface
MB Temp:      +27.8°C  (crit = +119.0°C)

it8792-isa-0a60
Adapter: ISA adapter
in0:           1.26 V  (min =  +0.00 V, max =  +2.78 V)
in1:         589.00 mV (min =  +0.00 V, max =  +2.78 V)
in2:           1.04 V  (min =  +0.00 V, max =  +2.78 V)
+3.3V:         1.67 V  (min =  +0.00 V, max =  +2.78 V)
in4:         937.00 mV (min =  +0.00 V, max =  +2.78 V)
in5:           1.50 V  (min =  +0.00 V, max =  +2.78 V)
in6:           2.78 V  (min =  +0.00 V, max =  +2.78 V)  ALARM
3VSB:          1.66 V  (min =  +0.00 V, max =  +2.78 V)
Vbat:          1.61 V
Array Fan:    714 RPM  (min =    0 RPM)
CPU Temp:     +41.0°C  (low  = +127.0°C, high = +127.0°C)  sensor = thermistor
temp2:        -55.0°C  (low  = +127.0°C, high = +127.0°C)  sensor = thermistor
temp3:        +44.0°C  (low  = +127.0°C, high = +127.0°C)  sensor = thermistor
intrusion0:  ALARM

nvme-pci-0900
Adapter: PCI adapter
Composite:    +39.9°C  (low  =  -0.1°C, high = +69.8°C)
                       (crit = +84.8°C)

pch_cannonlake-virtual-0
Adapter: Virtual device
temp1:        +61.0°C

 

 

What is the current recommended solution?

 

Thank for any help!

 

Edited by Capt.Insano
formatting & added sensors result
Link to comment
  • 2 weeks later...
On 7/3/2022 at 8:25 PM, Capt.Insano said:

@ich777

 

What is the current recommended solution for this?

 

I am running unRAID 6.10.3 on a Gigabyte C246-WU4 motherboard. I have not added acpi_enforce_resources=lax to my syslinux config.

I have a sensor with ID 0x8688 not being detected.

 

 

My results of sensors-detect are as follows:

 

root@Tower:/# sensors-detect
# sensors-detect version 3.6.0
# System: Gigabyte Technology Co., Ltd. C246-WU4 [Default string]
# Board: Gigabyte Technology Co., Ltd. C246-WU4-CF
# Kernel: 5.15.46-Unraid x86_64
# Processor: Intel(R) Core(TM) i9-9900 CPU @ 3.10GHz (6/158/13)

This program will help you determine which kernel modules you need
to load to use lm_sensors most effectively. It is generally safe
and recommended to accept the default answers to all questions,
unless you know what you're doing.

Some south bridges, CPUs or memory controllers contain embedded sensors.
Do you want to scan for them? This is totally safe. (YES/no):
Silicon Integrated Systems SIS5595...                       No
VIA VT82C686 Integrated Sensors...                          No
VIA VT8231 Integrated Sensors...                            No
AMD K8 thermal sensors...                                   No
AMD Family 10h thermal sensors...                           No
AMD Family 11h thermal sensors...                           No
AMD Family 12h and 14h thermal sensors...                   No
AMD Family 15h thermal sensors...                           No
AMD Family 16h thermal sensors...                           No
AMD Family 17h thermal sensors...                           No
AMD Family 15h power sensors...                             No
AMD Family 16h power sensors...                             No
Hygon Family 18h thermal sensors...                         No
Intel digital thermal sensor...                             Success!
    (driver `coretemp')
Intel AMB FB-DIMM thermal sensor...                         No
Intel 5500/5520/X58 thermal sensor...                       No
VIA C7 thermal sensor...                                    No
VIA Nano thermal sensor...                                  No

Some Super I/O chips contain embedded sensors. We have to write to
standard I/O ports to probe them. This is usually safe.
Do you want to scan for Super I/O sensors? (YES/no):
Probing for Super-I/O at 0x2e/0x2f
Trying family `National Semiconductor/ITE'...               No
Trying family `SMSC'...                                     No
Trying family `VIA/Winbond/Nuvoton/Fintek'...               No
Trying family `ITE'...                                      Yes
Found unknown chip with ID 0x8688
Probing for Super-I/O at 0x4e/0x4f
Trying family `National Semiconductor/ITE'...               No
Trying family `SMSC'...                                     No
Trying family `VIA/Winbond/Nuvoton/Fintek'...               No
Trying family `ITE'...                                      Yes
Found `ITE IT8792E Super IO Sensors'                        Success!
    (address 0xa60, driver `it87')

Some systems (mainly servers) implement IPMI, a set of common interfaces
through which system health data may be retrieved, amongst other things.
We first try to get the information from SMBIOS. If we don't find it
there, we have to read from arbitrary I/O ports to probe for such
interfaces. This is normally safe. Do you want to scan for IPMI
interfaces? (YES/no):
Probing for `IPMI BMC KCS' at 0xca0...                      No
Probing for `IPMI BMC SMIC' at 0xca8...                     No

Some hardware monitoring chips are accessible through the ISA I/O ports.
We have to write to arbitrary I/O ports to probe them. This is usually
safe though. Yes, you do have ISA I/O ports even if you do not have any
ISA slots! Do you want to scan the ISA I/O ports? (yes/NO):

Lastly, we can probe the I2C/SMBus adapters for connected hardware
monitoring devices. This is the most risky part, and while it works
reasonably well on most systems, it has been reported to cause trouble
on some systems.
Do you want to probe the I2C/SMBus adapters now? (YES/no):
Using driver `i2c-i801' for device 0000:00:1f.4: Cannon Lake-H (PCH)
Module i2c-dev loaded successfully.

Next adapter: SMBus I801 adapter at efa0 (i2c-0)
Do you want to scan it? (yes/NO/selectively):

Next adapter: i915 gmbus dpb (i2c-1)
Do you want to scan it? (yes/NO/selectively):

Next adapter: i915 gmbus dpc (i2c-2)
Do you want to scan it? (yes/NO/selectively):

Next adapter: i915 gmbus misc (i2c-3)
Do you want to scan it? (yes/NO/selectively):

Next adapter: i915 gmbus dpd (i2c-4)
Do you want to scan it? (yes/NO/selectively):

Next adapter: AUX C/DDI C/PHY C (i2c-5)
Do you want to scan it? (yes/NO/selectively):

Next adapter: AUX D/DDI D/PHY D (i2c-6)
Do you want to scan it? (yes/NO/selectively):


Now follows a summary of the probes I have just done.
Just press ENTER to continue:

Driver `coretemp':
  * Chip `Intel digital thermal sensor' (confidence: 9)

Driver `it87':
  * ISA bus, address 0xa60
    Chip `ITE IT8792E Super IO Sensors' (confidence: 9)

Do you want to overwrite /etc/sysconfig/lm_sensors? (YES/no):
Copy prog/init/lm_sensors.init to /etc/init.d/lm_sensors
for initialization at boot time.
You should now start the lm_sensors service to load the required
kernel modules.

Unloading i2c-dev... OK

 

results of sensors command:

 

root@Tower:/# sensors
coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +65.0°C  (high = +86.0°C, crit = +100.0°C)
Core 0:        +58.0°C  (high = +86.0°C, crit = +100.0°C)
Core 1:        +65.0°C  (high = +86.0°C, crit = +100.0°C)
Core 2:        +57.0°C  (high = +86.0°C, crit = +100.0°C)
Core 3:        +57.0°C  (high = +86.0°C, crit = +100.0°C)
Core 4:        +59.0°C  (high = +86.0°C, crit = +100.0°C)
Core 5:        +57.0°C  (high = +86.0°C, crit = +100.0°C)
Core 6:        +58.0°C  (high = +86.0°C, crit = +100.0°C)
Core 7:        +58.0°C  (high = +86.0°C, crit = +100.0°C)

nvme-pci-0300
Adapter: PCI adapter
Composite:    +41.9°C  (low  =  -0.1°C, high = +69.8°C)
                       (crit = +84.8°C)

acpitz-acpi-0
Adapter: ACPI interface
MB Temp:      +27.8°C  (crit = +119.0°C)

it8792-isa-0a60
Adapter: ISA adapter
in0:           1.26 V  (min =  +0.00 V, max =  +2.78 V)
in1:         589.00 mV (min =  +0.00 V, max =  +2.78 V)
in2:           1.04 V  (min =  +0.00 V, max =  +2.78 V)
+3.3V:         1.67 V  (min =  +0.00 V, max =  +2.78 V)
in4:         937.00 mV (min =  +0.00 V, max =  +2.78 V)
in5:           1.50 V  (min =  +0.00 V, max =  +2.78 V)
in6:           2.78 V  (min =  +0.00 V, max =  +2.78 V)  ALARM
3VSB:          1.66 V  (min =  +0.00 V, max =  +2.78 V)
Vbat:          1.61 V
Array Fan:    714 RPM  (min =    0 RPM)
CPU Temp:     +41.0°C  (low  = +127.0°C, high = +127.0°C)  sensor = thermistor
temp2:        -55.0°C  (low  = +127.0°C, high = +127.0°C)  sensor = thermistor
temp3:        +44.0°C  (low  = +127.0°C, high = +127.0°C)  sensor = thermistor
intrusion0:  ALARM

nvme-pci-0900
Adapter: PCI adapter
Composite:    +39.9°C  (low  =  -0.1°C, high = +69.8°C)
                       (crit = +84.8°C)

pch_cannonlake-virtual-0
Adapter: Virtual device
temp1:        +61.0°C

 

 

What is the current recommended solution?

 

Thank for any help!

 

There is no solution for the moment :) 

The only thing you cant get , is the temp 

But now, we cant get Autofan control, i juste make my curve under my bios, this is the only way to control them for the moment :) 

  • Thanks 1
Link to comment
On 7/18/2022 at 12:51 PM, Nackophilz said:

There is no solution for the moment :) 

 

Thanks for the reply, that is a pity!

 

 

Hopefully newer kernels will add support, in the meanwhile @ich777: funky behavior aside, did you ever get a chance to look at a plugin to add the custom drivers for full support?

 

 

Thanks again all 

Link to comment
  • 1 month later...
On 7/23/2022 at 5:56 PM, ich777 said:

Nope, because it is not worth to do it because I can tell for sure that a newer Kernel is coming soon. ;)

Ive been having issues with fan control on my Gigabyte B560, it uses it87, will the update sort some of the issues?

 

What Linux kernel has the updated drivers?

Edited by eatoff
Link to comment
  • 3 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.