Add support for ASUS Maximum Z690 Formula (#955)

This commit is contained in:
Alan
2023-01-26 10:52:31 +01:00
committed by GitHub
parent 038952aa41
commit f65a49f5be
4 changed files with 54 additions and 1 deletions
@@ -359,6 +359,8 @@ internal class Identification
return Model.B560M_AORUS_PRO_AX;
case var _ when name.Equals("ROG STRIX Z690-A GAMING WIFI D4", StringComparison.OrdinalIgnoreCase):
return Model.ROG_STRIX_Z690_A_GAMING_WIFI_D4;
case var _ when name.Equals("ROG MAXIMUS Z690 FORMULA", StringComparison.OrdinalIgnoreCase):
return Model.ROG_MAXIMUS_Z690_FORMULA;
case var _ when name.Equals("ROG MAXIMUS Z690 EXTREME GLACIAL", StringComparison.OrdinalIgnoreCase):
return Model.ROG_MAXIMUS_Z690_EXTREME_GLACIAL;
case var _ when name.Equals("B660GTN", StringComparison.OrdinalIgnoreCase):
@@ -141,6 +141,14 @@ public abstract class EmbeddedController : Hardware
BoardFamily.Intel600,
ECSensor.TempTSensor,
ECSensor.TempVrm),
new(Model.ROG_MAXIMUS_Z690_FORMULA,
BoardFamily.Intel600,
ECSensor.TempTSensor,
ECSensor.TempVrm,
ECSensor.TempWaterIn,
ECSensor.TempWaterOut,
ECSensor.TempWaterBlockIn,
ECSensor.FanWaterFlow),
new(Model.ROG_MAXIMUS_Z690_EXTREME_GLACIAL,
BoardFamily.Intel600,
ECSensor.TempVrm,
@@ -50,6 +50,7 @@ internal enum Model
ROG_STRIX_B550_F_GAMING_WIFI,
ROG_STRIX_B550_I_GAMING,
ROG_STRIX_Z690_A_GAMING_WIFI_D4,
ROG_MAXIMUS_Z690_FORMULA,
ROG_MAXIMUS_Z690_EXTREME_GLACIAL,
M2N_SLI_Deluxe,
M4A79XTD_EVO,
@@ -2524,7 +2524,49 @@ internal sealed class SuperIOHardware : Hardware
t.Add(new Temperature("Virtual", 23));
fanControlNames = new[] {"Chassis Fan 1", "CPU Fan", "Chassis Fan 2",
"Chassis Fan 3", "High Amp Fan", "W_PUMP+", "AIO Pump"};
"Chassis Fan 3", "High Amp Fan", "Waterpump", "AIO Pump"};
System.Diagnostics.Debug.Assert(fanControlNames.Length == superIO.Fans.Length,
$"Expected {fanControlNames.Length} fan register in the SuperIO chip");
System.Diagnostics.Debug.Assert(superIO.Fans.Length == superIO.Controls.Length,
"Expected counts of cans controls and fan speed registers to be equal");
for (int i = 0; i < fanControlNames.Length; i++)
f.Add(new Fan(fanControlNames[i], i));
for (int i = 0; i < fanControlNames.Length; i++)
c.Add(new Ctrl(fanControlNames[i], i));
break;
case Model.ROG_MAXIMUS_Z690_FORMULA: //NCT6798D
v.Add(new Voltage("Vcore", 0));
v.Add(new Voltage("+5V", 1, 4, 1));
v.Add(new Voltage("AVSB", 2, 34, 34));
v.Add(new Voltage("3VCC", 3, 34, 34));
v.Add(new Voltage("+12V", 4, 11, 1));
v.Add(new Voltage("IVR Atom L2 Cluster #1", 5));
v.Add(new Voltage("Voltage #7", 6));
v.Add(new Voltage("3VSB", 7, 34, 34));
v.Add(new Voltage("VBat", 8, 34, 34));
v.Add(new Voltage("VTT", 9, 1, 1));
v.Add(new Voltage("Voltage #11", 10));
v.Add(new Voltage("IVR Atom L2 Cluster #0", 11, 1, 1));
v.Add(new Voltage("PCH", 12));
v.Add(new Voltage("Voltage #14", 13));
v.Add(new Voltage("Voltage #15", 14));
t.Add(new Temperature("Temperature #1", 0));
t.Add(new Temperature("CPU", 1));
t.Add(new Temperature("Motherboard", 2));
t.Add(new Temperature("Temperature #4", 4));
t.Add(new Temperature("Temperature #5", 5));
t.Add(new Temperature("Temperature #6", 6));
t.Add(new Temperature("Temperature #7", 7));
t.Add(new Temperature("PCH", 12));
t.Add(new Temperature("Temperature #9", 21));
fanControlNames = new[] { "Chassis Fan 1", "CPU Fan", "Chassis Fan 2", "Chassis Fan 3", "Chassis Fan 4", "Waterpump", "AIO Pump" };
System.Diagnostics.Debug.Assert(fanControlNames.Length == superIO.Fans.Length,
$"Expected {fanControlNames.Length} fan register in the SuperIO chip");
System.Diagnostics.Debug.Assert(superIO.Fans.Length == superIO.Controls.Length,