Hardware/Mainboard/Identification.cs
author moel.mich
Sun, 21 Oct 2012 14:24:03 +0000
changeset 382 ba6abd47a80c
parent 370 8e4dedc41924
permissions -rw-r--r--
Added support for fan control on ITE 87XX chips and a mainboard specific configuration for the Gigabyte GA 970A UD3 (both based on a patch from Eric Hokanson).
moel@370
     1
/*
moel@370
     2
 
moel@370
     3
  This Source Code Form is subject to the terms of the Mozilla Public
moel@370
     4
  License, v. 2.0. If a copy of the MPL was not distributed with this
moel@370
     5
  file, You can obtain one at http://mozilla.org/MPL/2.0/.
moel@370
     6
 
moel@370
     7
  Copyright (C) 2012 Michael Möller <mmoeller@openhardwaremonitor.org>
moel@370
     8
	
moel@370
     9
*/
moel@370
    10
moel@370
    11
namespace OpenHardwareMonitor.Hardware.Mainboard {
moel@370
    12
  internal class Identification {
moel@370
    13
moel@370
    14
    public static Manufacturer GetManufacturer(string name) {
moel@370
    15
      switch (name) {
moel@370
    16
        case "Alienware":
moel@370
    17
          return Manufacturer.Alienware;
moel@370
    18
        case "Apple Inc.":
moel@370
    19
          return Manufacturer.Apple;
moel@370
    20
        case "ASRock":
moel@370
    21
          return Manufacturer.ASRock;
moel@370
    22
        case "ASUSTeK Computer INC.":
moel@370
    23
        case "ASUSTeK COMPUTER INC.":
moel@370
    24
          return Manufacturer.ASUS;
moel@370
    25
        case "Dell Inc.":
moel@370
    26
          return Manufacturer.Dell;
moel@370
    27
        case "DFI":
moel@370
    28
        case "DFI Inc.":
moel@370
    29
          return Manufacturer.DFI;
moel@370
    30
        case "ECS":
moel@370
    31
          return Manufacturer.ECS;
moel@370
    32
        case "EPoX COMPUTER CO., LTD":
moel@370
    33
          return Manufacturer.EPoX;
moel@370
    34
        case "EVGA":
moel@370
    35
          return Manufacturer.EVGA;
moel@370
    36
        case "First International Computer, Inc.":
moel@370
    37
          return Manufacturer.FIC;
moel@370
    38
        case "FUJITSU":
moel@370
    39
        case "FUJITSU SIEMENS":
moel@370
    40
          return Manufacturer.Fujitsu;
moel@370
    41
        case "Gigabyte Technology Co., Ltd.":
moel@370
    42
          return Manufacturer.Gigabyte;
moel@370
    43
        case "Hewlett-Packard":
moel@370
    44
          return Manufacturer.HP;
moel@370
    45
        case "IBM":
moel@370
    46
          return Manufacturer.IBM;
moel@370
    47
        case "Intel":
moel@370
    48
        case "Intel Corp.":
moel@370
    49
        case "Intel Corporation":
moel@370
    50
        case "INTEL Corporation":
moel@370
    51
          return Manufacturer.Intel;
moel@370
    52
        case "Lenovo":
moel@370
    53
        case "LENOVO":
moel@370
    54
          return Manufacturer.Lenovo;
moel@370
    55
        case "Micro-Star International":
moel@370
    56
        case "MICRO-STAR INTERNATIONAL CO., LTD":
moel@370
    57
        case "MICRO-STAR INTERNATIONAL CO.,LTD":
moel@370
    58
        case "MSI":
moel@370
    59
          return Manufacturer.MSI;
moel@370
    60
        case "Shuttle":
moel@370
    61
          return Manufacturer.Shuttle;
moel@370
    62
        case "Supermicro":
moel@370
    63
          return Manufacturer.Supermicro;
moel@370
    64
        case "TOSHIBA":
moel@370
    65
          return Manufacturer.Toshiba;
moel@370
    66
        case "XFX":
moel@370
    67
          return Manufacturer.XFX;
moel@370
    68
        case "To be filled by O.E.M.":
moel@370
    69
          return Manufacturer.Unknown;
moel@370
    70
        default:
moel@370
    71
          return Manufacturer.Unknown;
moel@370
    72
      }
moel@370
    73
    }
moel@370
    74
moel@370
    75
    public static Model GetModel(string name) {
moel@370
    76
      switch (name) {
moel@370
    77
        case "880GMH/USB3":
moel@370
    78
          return Model._880GMH_USB3;
moel@370
    79
        case "ASRock AOD790GX/128M":
moel@370
    80
          return Model.AOD790GX_128M;
moel@370
    81
        case "P55 Deluxe":
moel@370
    82
          return Model.P55_Deluxe;
moel@370
    83
        case "Crosshair III Formula":
moel@370
    84
          return Model.Crosshair_III_Formula;
moel@370
    85
        case "M2N-SLI DELUXE":
moel@370
    86
          return Model.M2N_SLI_DELUXE;
moel@370
    87
        case "M4A79XTD EVO":
moel@370
    88
          return Model.M4A79XTD_EVO;
moel@370
    89
        case "P5W DH Deluxe":
moel@370
    90
          return Model.P5W_DH_Deluxe;
moel@370
    91
        case "P6T":
moel@370
    92
          return Model.P6T;
moel@370
    93
        case "P6X58D-E":
moel@370
    94
          return Model.P6X58D_E;
moel@370
    95
        case "P8P67":
moel@370
    96
          return Model.P8P67;
moel@370
    97
        case "P8P67 EVO":
moel@370
    98
          return Model.P8P67_EVO;
moel@370
    99
        case "P8P67 PRO":
moel@370
   100
          return Model.P8P67_PRO;
moel@370
   101
        case "P8P67-M PRO":
moel@370
   102
          return Model.P8P67_M_PRO;
moel@370
   103
        case "P8Z77-V":
moel@370
   104
          return Model.P8Z77_V;
moel@370
   105
        case "P9X79":
moel@370
   106
          return Model.P9X79;
moel@370
   107
        case "Rampage Extreme":
moel@370
   108
          return Model.Rampage_Extreme;
moel@370
   109
        case "Rampage II GENE":
moel@370
   110
          return Model.Rampage_II_GENE;
moel@370
   111
        case "LP BI P45-T2RS Elite":
moel@370
   112
          return Model.LP_BI_P45_T2RS_Elite;
moel@370
   113
        case "LP DK P55-T3eH9":
moel@370
   114
          return Model.LP_DK_P55_T3eH9;
moel@370
   115
        case "A890GXM-A":
moel@370
   116
          return Model.A890GXM_A;
moel@370
   117
        case "X58 SLI Classified":
moel@370
   118
          return Model.X58_SLI_Classified;
moel@370
   119
        case "965P-S3":
moel@370
   120
          return Model._965P_S3;
moel@370
   121
        case "EP45-DS3R":
moel@370
   122
          return Model.EP45_DS3R;
moel@370
   123
        case "EP45-UD3R":
moel@370
   124
          return Model.EP45_UD3R;
moel@370
   125
        case "EX58-EXTREME":
moel@370
   126
          return Model.EX58_EXTREME;
moel@370
   127
        case "EX58-UD3R":
moel@370
   128
          return Model.EX58_UD3R;
moel@370
   129
        case "G41M-Combo":
moel@370
   130
          return Model.G41M_Combo;
moel@370
   131
        case "G41MT-S2":
moel@370
   132
          return Model.G41MT_S2;
moel@370
   133
        case "G41MT-S2P":
moel@370
   134
          return Model.G41MT_S2P;
moel@382
   135
        case "GA-970A-UD3":
moel@382
   136
          return Model.GA_970A_UD3;
moel@370
   137
        case "GA-MA770T-UD3":
moel@370
   138
          return Model.GA_MA770T_UD3;
moel@370
   139
        case "GA-MA770T-UD3P":
moel@370
   140
          return Model.GA_MA770T_UD3P;
moel@370
   141
        case "GA-MA785GM-US2H":
moel@370
   142
          return Model.GA_MA785GM_US2H;
moel@370
   143
        case "GA-MA785GMT-UD2H":
moel@370
   144
          return Model.GA_MA785GMT_UD2H;
moel@370
   145
        case "GA-MA78LM-S2H":
moel@370
   146
          return Model.GA_MA78LM_S2H;
moel@370
   147
        case "GA-MA790X-UD3P":
moel@370
   148
          return Model.GA_MA790X_UD3P;
moel@370
   149
        case "H55-USB3":
moel@370
   150
          return Model.H55_USB3;
moel@370
   151
        case "H55N-USB3":
moel@370
   152
          return Model.H55N_USB3;
moel@370
   153
        case "H61M-DS2 REV 1.2":
moel@370
   154
          return Model.H61M_DS2_REV_1_2;
moel@370
   155
        case "H61M-USB3-B3 REV 2.0":
moel@370
   156
          return Model.H61M_USB3_B3_REV_2_0;
moel@370
   157
        case "H67A-UD3H-B3":
moel@370
   158
          return Model.H67A_UD3H_B3;
moel@370
   159
        case "H67A-USB3-B3":
moel@370
   160
          return Model.H67A_USB3_B3;
moel@370
   161
        case "P35-DS3":
moel@370
   162
          return Model.P35_DS3;
moel@370
   163
        case "P35-DS3L":
moel@370
   164
          return Model.P35_DS3L;
moel@370
   165
        case "P55-UD4":
moel@370
   166
          return Model.P55_UD4;
moel@370
   167
        case "P55A-UD3":
moel@370
   168
          return Model.P55A_UD3;
moel@370
   169
        case "P55M-UD4":
moel@370
   170
          return Model.P55M_UD4;
moel@370
   171
        case "P67A-UD3-B3":
moel@370
   172
          return Model.P67A_UD3_B3;
moel@370
   173
        case "P67A-UD3R-B3":
moel@370
   174
          return Model.P67A_UD3R_B3;
moel@370
   175
        case "P67A-UD4-B3":
moel@370
   176
          return Model.P67A_UD4_B3;
moel@370
   177
        case "P8Z68-V PRO":
moel@370
   178
          return Model.P8Z68_V_PRO;
moel@370
   179
        case "X38-DS5":
moel@370
   180
          return Model.X38_DS5;
moel@370
   181
        case "X58A-UD3R":
moel@370
   182
          return Model.X58A_UD3R;
moel@370
   183
        case "Z68A-D3H-B3":
moel@370
   184
          return Model.Z68A_D3H_B3;
moel@370
   185
        case "Z68AP-D3":
moel@370
   186
          return Model.Z68AP_D3;
moel@370
   187
        case "Z68X-UD3H-B3":
moel@370
   188
          return Model.Z68X_UD3H_B3;
moel@370
   189
        case "Z68X-UD7-B3":
moel@370
   190
          return Model.Z68X_UD7_B3;
moel@370
   191
        case "FH67":
moel@370
   192
          return Model.FH67;
moel@370
   193
        case "Base Board Product Name":
moel@370
   194
        case "To be filled by O.E.M.":
moel@370
   195
          return Model.Unknown;
moel@370
   196
        default:
moel@370
   197
          return Model.Unknown;
moel@370
   198
      }
moel@370
   199
    }
moel@370
   200
moel@370
   201
  }
moel@370
   202
}