Hardware/LPC/W836XX.cs
changeset 162 2129ccee0bd1
parent 152 98187e7a08b2
child 163 67be1c62f950
     1.1 --- a/Hardware/LPC/W836XX.cs	Wed Aug 04 19:10:20 2010 +0000
     1.2 +++ b/Hardware/LPC/W836XX.cs	Wed Aug 04 20:27:05 2010 +0000
     1.3 @@ -194,6 +194,8 @@
     1.4      public float?[] Fans { get { return fans; } }
     1.5  
     1.6      public void Update() {
     1.7 +      if (!WinRing0.WaitIsaBusMutex())
     1.8 +        return;
     1.9  
    1.10        for (int i = 0; i < voltages.Length; i++) {
    1.11          if (voltageRegister[i] != VOLTAGE_VBAT_REG) {
    1.12 @@ -279,6 +281,8 @@
    1.13          if (oldByte != newByte) 
    1.14            WriteByte(0, FAN_BIT_REG[i], newByte);        
    1.15        }
    1.16 +
    1.17 +      WinRing0.ReleaseIsaBusMutex();
    1.18      }
    1.19  
    1.20      public string GetReport() {
    1.21 @@ -290,6 +294,10 @@
    1.22        r.Append("Chip revision: 0x"); r.AppendLine(revision.ToString("X"));
    1.23        r.Append("Base Adress: 0x"); r.AppendLine(address.ToString("X4"));
    1.24        r.AppendLine();
    1.25 +
    1.26 +      if (!WinRing0.WaitIsaBusMutex())
    1.27 +        return r.ToString();
    1.28 +
    1.29        r.AppendLine("Hardware Monitor Registers");
    1.30        r.AppendLine();
    1.31        r.AppendLine("      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F");
    1.32 @@ -316,6 +324,8 @@
    1.33        }
    1.34        r.AppendLine();
    1.35  
    1.36 +      WinRing0.ReleaseIsaBusMutex();
    1.37 +
    1.38        return r.ToString();
    1.39      }
    1.40    }