Added support for Nuvoton NCT6796D.
This commit is contained in:
@@ -43,6 +43,7 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
||||
NCT610X = 0xC452,
|
||||
NCT6779D = 0xC560,
|
||||
NCT6791D = 0xC803,
|
||||
NCT6796D = 0xD423,
|
||||
|
||||
W83627DHG = 0xA020,
|
||||
W83627DHGP = 0xB070,
|
||||
@@ -91,6 +92,7 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
||||
case Chip.NCT6776F: return "Nuvoton NCT6776F";
|
||||
case Chip.NCT6779D: return "Nuvoton NCT6779D";
|
||||
case Chip.NCT6791D: return "Nuvoton NCT6791D";
|
||||
case Chip.NCT6796D: return "Nuvoton NCT6796D";
|
||||
|
||||
case Chip.W83627DHG: return "Winbond W83627DHG";
|
||||
case Chip.W83627DHGP: return "Winbond W83627DHG-P";
|
||||
|
||||
@@ -73,6 +73,8 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
||||
lmChips.Add(new LMChip(Chip.NCT6779D, path)); break;
|
||||
case "nct6791":
|
||||
lmChips.Add(new LMChip(Chip.NCT6791D, path)); break;
|
||||
case "nct6796":
|
||||
lmChips.Add(new LMChip(Chip.NCT6796D, path)); break;
|
||||
|
||||
case "w83627ehf":
|
||||
lmChips.Add(new LMChip(Chip.W83627EHF, path)); break;
|
||||
|
||||
@@ -209,6 +209,13 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
||||
logicalDeviceNumber = WINBOND_NUVOTON_HARDWARE_MONITOR_LDN;
|
||||
break;
|
||||
} break;
|
||||
case 0xD4:
|
||||
switch (revision) {
|
||||
case 0x23:
|
||||
chip = Chip.NCT6796D;
|
||||
logicalDeviceNumber = WINBOND_NUVOTON_HARDWARE_MONITOR_LDN;
|
||||
break;
|
||||
} break;
|
||||
}
|
||||
if (chip == Chip.Unknown) {
|
||||
if (id != 0 && id != 0xff) {
|
||||
@@ -227,7 +234,7 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
||||
ushort vendorID = port.ReadWord(FINTEK_VENDOR_ID_REGISTER);
|
||||
|
||||
// disable the hardware monitor i/o space lock on NCT6791D chips
|
||||
if (address == verify && chip == Chip.NCT6791D) {
|
||||
if (address == verify && (chip == Chip.NCT6791D || chip == Chip.NCT6796D)) {
|
||||
port.NuvotonDisableIOSpaceLock();
|
||||
}
|
||||
|
||||
@@ -277,6 +284,7 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
||||
case Chip.NCT6776F:
|
||||
case Chip.NCT6779D:
|
||||
case Chip.NCT6791D:
|
||||
case Chip.NCT6796D:
|
||||
superIOs.Add(new NCT677X(chip, revision, address, port));
|
||||
break;
|
||||
case Chip.F71858:
|
||||
|
||||
@@ -272,6 +272,7 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
||||
|
||||
case Chip.NCT6779D:
|
||||
case Chip.NCT6791D:
|
||||
case Chip.NCT6796D:
|
||||
if (chip == Chip.NCT6779D) {
|
||||
fans = new float?[5];
|
||||
controls = new float?[5];
|
||||
@@ -414,7 +415,7 @@ namespace OpenHardwareMonitor.Hardware.LPC {
|
||||
public float?[] Controls { get { return controls; } }
|
||||
|
||||
private void DisableIOSpaceLock() {
|
||||
if (chip != Chip.NCT6791D)
|
||||
if (chip != Chip.NCT6791D && chip != Chip.NCT6796D)
|
||||
return;
|
||||
|
||||
// the lock is disabled already if the vendor ID can be read
|
||||
|
||||
@@ -266,6 +266,7 @@ namespace OpenHardwareMonitor.Hardware.Mainboard {
|
||||
break;
|
||||
case Chip.NCT6779D:
|
||||
case Chip.NCT6791D:
|
||||
case Chip.NCT6796D:
|
||||
GetNuvotonConfigurationD(superIO, manufacturer, model, v, t, f, c);
|
||||
break;
|
||||
default:
|
||||
|
||||
Reference in New Issue
Block a user