mirror of
https://github.com/openhardwaremonitor/openhardwaremonitor
synced 2025-08-31 22:35:11 +00:00
Added experimental support for the ITE IT8655E, IT8665E and IT8686E chips.
This commit is contained in:
@@ -27,6 +27,9 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
|||||||
|
|
||||||
IT8620E = 0x8620,
|
IT8620E = 0x8620,
|
||||||
IT8628E = 0x8628,
|
IT8628E = 0x8628,
|
||||||
|
IT8655E = 0x8655,
|
||||||
|
IT8665E = 0x8665,
|
||||||
|
IT8686E = 0x8686,
|
||||||
IT8688E = 0x8688,
|
IT8688E = 0x8688,
|
||||||
IT8705F = 0x8705,
|
IT8705F = 0x8705,
|
||||||
IT8712F = 0x8712,
|
IT8712F = 0x8712,
|
||||||
@@ -76,6 +79,9 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
|||||||
|
|
||||||
case Chip.IT8620E: return "ITE IT8620E";
|
case Chip.IT8620E: return "ITE IT8620E";
|
||||||
case Chip.IT8628E: return "ITE IT8628E";
|
case Chip.IT8628E: return "ITE IT8628E";
|
||||||
|
case Chip.IT8655E: return "ITE IT8655E";
|
||||||
|
case Chip.IT8665E: return "ITE IT8665E";
|
||||||
|
case Chip.IT8686E: return "ITE IT8686E";
|
||||||
case Chip.IT8688E: return "ITE IT8688E";
|
case Chip.IT8688E: return "ITE IT8688E";
|
||||||
case Chip.IT8705F: return "ITE IT8705F";
|
case Chip.IT8705F: return "ITE IT8705F";
|
||||||
case Chip.IT8712F: return "ITE IT8712F";
|
case Chip.IT8712F: return "ITE IT8712F";
|
||||||
|
@@ -136,30 +136,50 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
// Bit 0x10 of the configuration register should always be 1
|
// Bit 0x10 of the configuration register should always be 1
|
||||||
if ((ReadByte(CONFIGURATION_REGISTER, out valid) & 0x10) == 0)
|
byte configuration = ReadByte(CONFIGURATION_REGISTER, out valid);
|
||||||
|
if ((configuration & 0x10) == 0 &&
|
||||||
|
chip != Chip.IT8655E && chip != Chip.IT8665E)
|
||||||
return;
|
return;
|
||||||
if (!valid)
|
if (!valid)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (chip == Chip.IT8688E) {
|
switch (chip) {
|
||||||
|
case Chip.IT8665E:
|
||||||
|
case Chip.IT8686E:
|
||||||
|
case Chip.IT8688E:
|
||||||
voltages = new float?[9];
|
voltages = new float?[9];
|
||||||
temperatures = new float?[6];
|
temperatures = new float?[6];
|
||||||
fans = new float?[5];
|
fans = new float?[5];
|
||||||
} else if (chip == Chip.IT879XE) {
|
break;
|
||||||
|
case Chip.IT8655E:
|
||||||
|
voltages = new float?[9];
|
||||||
|
temperatures = new float?[6];
|
||||||
|
fans = new float?[3];
|
||||||
|
break;
|
||||||
|
case Chip.IT879XE:
|
||||||
voltages = new float?[9];
|
voltages = new float?[9];
|
||||||
temperatures = new float?[3];
|
temperatures = new float?[3];
|
||||||
fans = new float?[3];
|
fans = new float?[3];
|
||||||
} else {
|
break;
|
||||||
|
case Chip.IT8705F:
|
||||||
voltages = new float?[9];
|
voltages = new float?[9];
|
||||||
temperatures = new float?[3];
|
temperatures = new float?[3];
|
||||||
fans = new float?[chip == Chip.IT8705F ? 3 : 5];
|
fans = new float?[3];
|
||||||
controls = new float?[3];
|
controls = new float?[3];
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
voltages = new float?[9];
|
||||||
|
temperatures = new float?[3];
|
||||||
|
fans = new float?[5];
|
||||||
|
controls = new float?[3];
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// set the voltage for the ADC LSB
|
// set the voltage for the ADC LSB
|
||||||
switch (chip) {
|
switch (chip) {
|
||||||
case Chip.IT8620E:
|
case Chip.IT8620E:
|
||||||
case Chip.IT8628E:
|
case Chip.IT8628E:
|
||||||
|
case Chip.IT8686E:
|
||||||
case Chip.IT8688E:
|
case Chip.IT8688E:
|
||||||
case Chip.IT8721F:
|
case Chip.IT8721F:
|
||||||
case Chip.IT8728F:
|
case Chip.IT8728F:
|
||||||
@@ -167,6 +187,8 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
|||||||
case Chip.IT8772E:
|
case Chip.IT8772E:
|
||||||
voltageGain = 0.012f;
|
voltageGain = 0.012f;
|
||||||
break;
|
break;
|
||||||
|
case Chip.IT8655E:
|
||||||
|
case Chip.IT8665E:
|
||||||
case Chip.IT879XE:
|
case Chip.IT879XE:
|
||||||
voltageGain = 0.011f;
|
voltageGain = 0.011f;
|
||||||
break;
|
break;
|
||||||
@@ -196,14 +218,7 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
|||||||
case Chip.IT8721F:
|
case Chip.IT8721F:
|
||||||
gpioCount = 8;
|
gpioCount = 8;
|
||||||
break;
|
break;
|
||||||
case Chip.IT8620E:
|
default:
|
||||||
case Chip.IT8628E:
|
|
||||||
case Chip.IT8688E:
|
|
||||||
case Chip.IT8705F:
|
|
||||||
case Chip.IT8728F:
|
|
||||||
case Chip.IT8771E:
|
|
||||||
case Chip.IT8772E:
|
|
||||||
case Chip.IT879XE:
|
|
||||||
gpioCount = 0;
|
gpioCount = 0;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@@ -188,6 +188,9 @@ namespace OpenHardwareMonitor.Hardware.Mainboard {
|
|||||||
|
|
||||||
case Chip.IT8620E:
|
case Chip.IT8620E:
|
||||||
case Chip.IT8628E:
|
case Chip.IT8628E:
|
||||||
|
case Chip.IT8655E:
|
||||||
|
case Chip.IT8665E:
|
||||||
|
case Chip.IT8686E:
|
||||||
case Chip.IT8688E:
|
case Chip.IT8688E:
|
||||||
case Chip.IT8721F:
|
case Chip.IT8721F:
|
||||||
case Chip.IT8728F:
|
case Chip.IT8728F:
|
||||||
|
Reference in New Issue
Block a user