Added support for F71889ED super I/O chips.
authormoel.mich
Tue, 27 Apr 2010 18:43:56 +0000
changeset 1030845adc5402e
parent 102 9620449d2620
child 104 4a9f8154d8f0
Added support for F71889ED super I/O chips.
Hardware/LPC/Chip.cs
Hardware/LPC/F718XX.cs
Hardware/LPC/LPCGroup.cs
Hardware/LPC/LPCHardware.cs
Hardware/Mainboard/SMBIOS.cs
Properties/AssemblyInfo.cs
     1.1 --- a/Hardware/LPC/Chip.cs	Tue Apr 27 07:31:46 2010 +0000
     1.2 +++ b/Hardware/LPC/Chip.cs	Tue Apr 27 18:43:56 2010 +0000
     1.3 @@ -24,7 +24,8 @@
     1.4      F71862 = 0x0601, 
     1.5      F71869 = 0x0814,
     1.6      F71882 = 0x0541,
     1.7 -    F71889 = 0x0723 
     1.8 +    F71889ED = 0x0909,
     1.9 +    F71889F = 0x0723    
    1.10    }
    1.11  
    1.12  }
     2.1 --- a/Hardware/LPC/F718XX.cs	Tue Apr 27 07:31:46 2010 +0000
     2.2 +++ b/Hardware/LPC/F718XX.cs	Tue Apr 27 18:43:56 2010 +0000
     2.3 @@ -64,7 +64,7 @@
     2.4        WinRing0.WriteIoPortByte(
     2.5          (ushort)(address + ADDRESS_REGISTER_OFFSET), register);
     2.6        return WinRing0.ReadIoPortByte((ushort)(address + DATA_REGISTER_OFFSET));
     2.7 -    }
     2.8 +    } 
     2.9  
    2.10      public F718XX(Chip chip, ushort address) : base(chip) {
    2.11        this.address = address;
     3.1 --- a/Hardware/LPC/LPCGroup.cs	Tue Apr 27 07:31:46 2010 +0000
     3.2 +++ b/Hardware/LPC/LPCGroup.cs	Tue Apr 27 18:43:56 2010 +0000
     3.3 @@ -156,7 +156,7 @@
     3.4            case 0x07:
     3.5              switch (revision) {
     3.6                case 0x23:
     3.7 -                chip = Chip.F71889;
     3.8 +                chip = Chip.F71889F;
     3.9                  logicalDeviceNumber = FINTEK_HARDWARE_MONITOR_LDN;
    3.10                  break;              
    3.11              } break;
    3.12 @@ -167,6 +167,13 @@
    3.13                  logicalDeviceNumber = FINTEK_HARDWARE_MONITOR_LDN;
    3.14                  break;              
    3.15              } break;
    3.16 +          case 0x09:
    3.17 +            switch (revision) {
    3.18 +              case 0x09:
    3.19 +                chip = Chip.F71889ED;
    3.20 +                logicalDeviceNumber = FINTEK_HARDWARE_MONITOR_LDN;
    3.21 +                break;              
    3.22 +            } break;
    3.23            case 0x52:
    3.24              switch (revision) {
    3.25                case 0x17:
    3.26 @@ -241,10 +248,7 @@
    3.27            Thread.Sleep(1);
    3.28            ushort verify = ReadWord(BASE_ADDRESS_REGISTER);
    3.29  
    3.30 -          ushort vendorID = FINTEK_VENDOR_ID;
    3.31 -          if (chip == Chip.F71858 || chip == Chip.F71862 || 
    3.32 -            chip == Chip.F71882 || chip == Chip.F71889)
    3.33 -            vendorID = ReadWord(FINTEK_VENDOR_ID_REGISTER);
    3.34 +          ushort vendorID = ReadWord(FINTEK_VENDOR_ID_REGISTER);
    3.35  
    3.36            WinbondFintekExit();
    3.37  
    3.38 @@ -288,9 +292,20 @@
    3.39                break;
    3.40              case Chip.F71858:
    3.41              case Chip.F71862:
    3.42 +            case Chip.F71869:
    3.43              case Chip.F71882:
    3.44 -            case Chip.F71889: 
    3.45 -            case Chip.F71869:
    3.46 +            case Chip.F71889ED:
    3.47 +            case Chip.F71889F:
    3.48 +              if (vendorID != FINTEK_VENDOR_ID) {
    3.49 +                report.Append("Chip ID: 0x");
    3.50 +                report.AppendLine(chip.ToString("X"));
    3.51 +                report.Append("Chip revision: 0x");
    3.52 +                report.AppendLine(revision.ToString("X"));
    3.53 +                report.Append("Error: Invalid vendor ID 0x");
    3.54 +                report.AppendLine(vendorID.ToString("X"));
    3.55 +                report.AppendLine();
    3.56 +                return;
    3.57 +              }
    3.58                hardware.Add(new F718XX(chip, address));
    3.59                break;
    3.60              default: break;
     4.1 --- a/Hardware/LPC/LPCHardware.cs	Tue Apr 27 07:31:46 2010 +0000
     4.2 +++ b/Hardware/LPC/LPCHardware.cs	Tue Apr 27 18:43:56 2010 +0000
     4.3 @@ -55,7 +55,8 @@
     4.4          case Chip.F71862: name = "Fintek F71862"; break;
     4.5          case Chip.F71869: name = "Fintek F71869"; break;
     4.6          case Chip.F71882: name = "Fintek F71882"; break;
     4.7 -        case Chip.F71889: name = "Fintek F71889"; break;
     4.8 +        case Chip.F71889ED: name = "Fintek F71889ED"; break;
     4.9 +        case Chip.F71889F: name = "Fintek F71889F"; break;
    4.10          case Chip.IT8712F: this.name = "ITE IT8712F"; break;
    4.11          case Chip.IT8716F: this.name = "ITE IT8716F"; break;
    4.12          case Chip.IT8718F: this.name = "ITE IT8718F"; break;
     5.1 --- a/Hardware/Mainboard/SMBIOS.cs	Tue Apr 27 07:31:46 2010 +0000
     5.2 +++ b/Hardware/Mainboard/SMBIOS.cs	Tue Apr 27 18:43:56 2010 +0000
     5.3 @@ -65,7 +65,7 @@
     5.4            raw = (byte[])mo["SMBiosData"];
     5.5            break;
     5.6          }
     5.7 -      } catch (NotImplementedException) { } catch (ManagementException) { }
     5.8 +      } catch { }      
     5.9  
    5.10        if (raw != null && raw.Length > 0) {
    5.11          int offset = 0;
     6.1 --- a/Properties/AssemblyInfo.cs	Tue Apr 27 07:31:46 2010 +0000
     6.2 +++ b/Properties/AssemblyInfo.cs	Tue Apr 27 18:43:56 2010 +0000
     6.3 @@ -69,5 +69,5 @@
     6.4  // You can specify all the values or you can default the Build and Revision Numbers 
     6.5  // by using the '*' as shown below:
     6.6  // [assembly: AssemblyVersion("1.0.*")]
     6.7 -[assembly: AssemblyVersion("0.1.31.0")]
     6.8 -[assembly: AssemblyFileVersion("0.1.31.0")]
     6.9 +[assembly: AssemblyVersion("0.1.32.0")]
    6.10 +[assembly: AssemblyFileVersion("0.1.32.0")]