Add proper definition support for all Gigabyte B550 models (#1360)

* Add Gigabyte B550 AORUS Elite (v1/v2) models

* Add B550 Gaming X (v1 and v2) models as their layout is identical too

* Add B550 AORUS Pro v2

* Add B550M AORUS Elite

* Add the rest of Gigabyte B550 and B550M (Except the Vision D, Aorus Master, B550M Aorus Pro models)

* Add B550 UD AC Y1

System integrators such as iBuyPower and CyberPowerPC have sold systems with this OEM branded model, and thus would not be detected within this PR otherwise.

* Add B550M Pro, B550 Aorus Master, B550 Vision D models

* Add B550I AORUS PRO AX

* Rename EC_TEMP# to a more display friendly name
This commit is contained in:
Tellinq
2024-07-20 16:47:00 +02:00
committed by GitHub
parent 6edb1bc08d
commit b47afdf571
3 changed files with 135 additions and 4 deletions
@@ -432,8 +432,50 @@ internal class Identification
return Model.TUF_GAMING_B550M_PLUS_WIFI;
case var _ when name.Equals("B360 AORUS GAMING 3 WIFI-CF", StringComparison.OrdinalIgnoreCase):
return Model.B360_AORUS_GAMING_3_WIFI_CF;
case var _ when name.Equals("B550I AORUS PRO AX", StringComparison.OrdinalIgnoreCase):
return Model.B550I_AORUS_PRO_AX;
case var _ when name.Equals("B550M AORUS PRO", StringComparison.OrdinalIgnoreCase):
case var _ when name.Equals("B550M AORUS PRO-P", StringComparison.OrdinalIgnoreCase):
return Model.B550M_AORUS_PRO;
case var _ when name.Equals("B550M AORUS PRO AX", StringComparison.OrdinalIgnoreCase):
return Model.B550M_AORUS_PRO_AX;
case var _ when name.Equals("B550M AORUS ELITE", StringComparison.OrdinalIgnoreCase):
return Model.B550M_AORUS_ELITE;
case var _ when name.Equals("B550M GAMING", StringComparison.OrdinalIgnoreCase):
return Model.B550M_GAMING;
case var _ when name.Equals("B550M DS3H", StringComparison.OrdinalIgnoreCase):
return Model.B550M_DS3H;
case var _ when name.Equals("B550M DS3H AC", StringComparison.OrdinalIgnoreCase):
return Model.B550M_DS3H_AC;
case var _ when name.Equals("B550M S2H", StringComparison.OrdinalIgnoreCase):
return Model.B550M_S2H;
case var _ when name.Equals("B550M H", StringComparison.OrdinalIgnoreCase):
return Model.B550M_H;
case var _ when name.Equals("B550 AORUS MASTER", StringComparison.OrdinalIgnoreCase):
return Model.B550_AORUS_MASTER;
case var _ when name.Equals("B550 AORUS PRO", StringComparison.OrdinalIgnoreCase):
case var _ when name.Equals("B550 AORUS PRO V2", StringComparison.OrdinalIgnoreCase):
return Model.B550_AORUS_PRO;
case var _ when name.Equals("B550 AORUS PRO AC", StringComparison.OrdinalIgnoreCase):
return Model.B550_AORUS_PRO_AC;
case var _ when name.Equals("B550 AORUS PRO AX", StringComparison.OrdinalIgnoreCase):
return Model.B550_AORUS_PRO_AX;
case var _ when name.Equals("B550 VISION D", StringComparison.OrdinalIgnoreCase):
case var _ when name.Equals("B550 VISION D-P", StringComparison.OrdinalIgnoreCase):
return Model.B550_VISION_D;
case var _ when name.Equals("B550 AORUS ELITE", StringComparison.OrdinalIgnoreCase):
case var _ when name.Equals("B550 AORUS ELITE V2", StringComparison.OrdinalIgnoreCase):
return Model.B550_AORUS_ELITE;
case var _ when name.Equals("B550 AORUS ELITE AX", StringComparison.OrdinalIgnoreCase):
case var _ when name.Equals("B550 AORUS ELITE AX V2", StringComparison.OrdinalIgnoreCase):
case var _ when name.Equals("B550 AORUS ELITE AX V3", StringComparison.OrdinalIgnoreCase):
return Model.B550_AORUS_ELITE_AX;
case var _ when name.Equals("B550 GAMING X", StringComparison.OrdinalIgnoreCase):
case var _ when name.Equals("B550 GAMING X V2", StringComparison.OrdinalIgnoreCase):
return Model.B550_GAMING_X;
case var _ when name.Equals("B550 UD AC", StringComparison.OrdinalIgnoreCase):
case var _ when name.Equals("B550 UD AC-Y1", StringComparison.OrdinalIgnoreCase):
return Model.B550_UD_AC;
case var _ when name.Equals("B560M AORUS ELITE", StringComparison.OrdinalIgnoreCase):
return Model.B560M_AORUS_ELITE;
case var _ when name.Equals("B560M AORUS PRO", StringComparison.OrdinalIgnoreCase):
@@ -134,7 +134,24 @@ public enum Model
AX370_Gaming_5,
AX370_Gaming_K7,
B360_AORUS_GAMING_3_WIFI_CF,
B550_AORUS_MASTER,
B550_AORUS_PRO,
B550_AORUS_PRO_AC,
B550_AORUS_PRO_AX,
B550_VISION_D,
B550_AORUS_ELITE,
B550_AORUS_ELITE_AX,
B550_GAMING_X,
B550_UD_AC,
B550M_AORUS_PRO,
B550M_AORUS_PRO_AX,
B550M_AORUS_ELITE,
B550M_GAMING,
B550M_DS3H,
B550M_DS3H_AC,
B550M_S2H,
B550M_H,
B550I_AORUS_PRO_AX,
B560M_AORUS_ELITE,
B560M_AORUS_PRO,
B560M_AORUS_PRO_AX,
@@ -1818,7 +1818,11 @@ internal sealed class SuperIOHardware : Hardware
break;
case Model.B550_AORUS_MASTER:
case Model.B550_AORUS_PRO:
case Model.B550_AORUS_PRO_AC:
case Model.B550_AORUS_PRO_AX:
case Model.B550_VISION_D:
v.Add(new Voltage("Vcore", 0, 0, 1));
v.Add(new Voltage("+3.3V", 1, 6.5F, 10));
v.Add(new Voltage("+12V", 2, 5, 1));
@@ -1829,11 +1833,11 @@ internal sealed class SuperIOHardware : Hardware
v.Add(new Voltage("+3V Standby", 7, 10, 10));
v.Add(new Voltage("CMOS Battery", 8, 10, 10));
t.Add(new Temperature("System #1", 0));
t.Add(new Temperature("Chipset", 1));
t.Add(new Temperature("External #1", 1));
t.Add(new Temperature("CPU", 2));
t.Add(new Temperature("PCIe x16", 3));
t.Add(new Temperature("VRM", 4));
t.Add(new Temperature("PCH", 5));
t.Add(new Temperature("VRM MOS", 4));
t.Add(new Temperature("Chipset", 5));
f.Add(new Fan("CPU Fan", 0));
f.Add(new Fan("System Fan #1", 1));
f.Add(new Fan("System Fan #2", 2));
@@ -1847,6 +1851,70 @@ internal sealed class SuperIOHardware : Hardware
break;
case Model.B550_AORUS_ELITE:
case Model.B550_AORUS_ELITE_AX:
case Model.B550_GAMING_X:
case Model.B550_UD_AC:
case Model.B550M_AORUS_PRO:
case Model.B550M_AORUS_PRO_AX:
v.Add(new Voltage("Vcore", 0, 0, 1));
v.Add(new Voltage("+3.3V", 1, 6.5F, 10));
v.Add(new Voltage("+12V", 2, 5, 1));
v.Add(new Voltage("+5V", 3, 1.5F, 1));
v.Add(new Voltage("Vcore SoC", 4, 0, 1));
v.Add(new Voltage("VDDP", 5, 0, 1));
v.Add(new Voltage("DRAM", 6, 0, 1));
v.Add(new Voltage("+3V Standby", 7, 10, 10));
v.Add(new Voltage("CMOS Battery", 8, 10, 10));
t.Add(new Temperature("System #1", 0));
t.Add(new Temperature("System #2", 1));
t.Add(new Temperature("CPU", 2));
t.Add(new Temperature("PCIe x16", 3));
t.Add(new Temperature("VRM MOS", 4));
t.Add(new Temperature("Chipset", 5));
f.Add(new Fan("CPU Fan", 0));
f.Add(new Fan("System Fan #1", 1));
f.Add(new Fan("System Fan #2", 2));
f.Add(new Fan("System Fan #3", 3));
f.Add(new Fan("CPU Optional Fan", 4));
c.Add(new Control("CPU Fan", 0));
c.Add(new Control("System Fan #1", 1));
c.Add(new Control("System Fan #2", 2));
c.Add(new Control("System Fan #3", 3));
c.Add(new Control("CPU Optional Fan", 4));
break;
case Model.B550I_AORUS_PRO_AX:
case Model.B550M_AORUS_ELITE:
case Model.B550M_GAMING:
case Model.B550M_DS3H:
case Model.B550M_DS3H_AC:
case Model.B550M_S2H:
case Model.B550M_H:
v.Add(new Voltage("Vcore", 0, 0, 1));
v.Add(new Voltage("+3.3V", 1, 6.5F, 10));
v.Add(new Voltage("+12V", 2, 5, 1));
v.Add(new Voltage("+5V", 3, 1.5F, 1));
v.Add(new Voltage("Vcore SoC", 4, 0, 1));
v.Add(new Voltage("VDDP", 5, 0, 1));
v.Add(new Voltage("DRAM", 6, 0, 1));
v.Add(new Voltage("+3V Standby", 7, 10, 10));
v.Add(new Voltage("CMOS Battery", 8, 10, 10));
t.Add(new Temperature("System", 0));
t.Add(new Temperature("VSoC MOS", 1));
t.Add(new Temperature("CPU", 2));
t.Add(new Temperature("VRM MOS", 4));
t.Add(new Temperature("Chipset", 5));
f.Add(new Fan("CPU Fan", 0));
f.Add(new Fan("System Fan #1", 1));
f.Add(new Fan("System Fan #2", 2));
c.Add(new Control("CPU Fan", 0));
c.Add(new Control("System Fan #1", 1));
c.Add(new Control("System Fan #2", 2));
break;
case Model.B660M_DS3H_AX_DDR4:
v.Add(new Voltage("Vcore", 0));
v.Add(new Voltage("VAXG", 1));
@@ -2053,7 +2121,11 @@ internal sealed class SuperIOHardware : Hardware
{
case Model.X570_AORUS_MASTER: // IT879XE
case Model.X570_AORUS_ULTRA:
case Model.B550_AORUS_MASTER:
case Model.B550_AORUS_PRO:
case Model.B550_AORUS_PRO_AC:
case Model.B550_AORUS_PRO_AX:
case Model.B550_VISION_D:
v.Add(new Voltage("VIN0", 0));
v.Add(new Voltage("DDRVTT AB", 1));
v.Add(new Voltage("Chipset Core", 2));
@@ -2064,7 +2136,7 @@ internal sealed class SuperIOHardware : Hardware
v.Add(new Voltage("+3V Standby", 7, 1f, 1f));
v.Add(new Voltage("CMOS Battery", 8, 1f, 1f));
t.Add(new Temperature("PCIe x8", 0));
t.Add(new Temperature("EC_TEMP2", 1));
t.Add(new Temperature("External #2", 1));
t.Add(new Temperature("System #2", 2));
f.Add(new Fan("System Fan #5 Pump", 0));
f.Add(new Fan("System Fan #6 Pump", 1));