1.1 --- a/Hardware/CPU/AMD10CPU.cs Mon Apr 26 18:38:31 2010 +0000
1.2 +++ b/Hardware/CPU/AMD10CPU.cs Mon Apr 26 18:51:22 2010 +0000
1.3 @@ -47,6 +47,7 @@
1.4 private string name;
1.5 private Image icon;
1.6
1.7 + private int processorIndex;
1.8 private uint pciAddress;
1.9
1.10 private Sensor coreTemperature;
1.11 @@ -60,8 +61,9 @@
1.12 private const ushort PCI_AMD_11H_MISCELLANEOUS_DEVICE_ID = 0x1303;
1.13 private const uint REPORTED_TEMPERATURE_CONTROL_REGISTER = 0xA4;
1.14
1.15 - public AMD10CPU(CPUID[][] cpuid) {
1.16 + public AMD10CPU(int processorIndex, CPUID[][] cpuid) {
1.17
1.18 + this.processorIndex = processorIndex;
1.19 this.name = cpuid[0][0].Name;
1.20 this.icon = Utilities.EmbeddedResources.GetImage("cpu.png");
1.21
1.22 @@ -88,11 +90,11 @@
1.23 new ParameterDescription("Offset", "Temperature offset.", 0)
1.24 });
1.25
1.26 - pciAddress = WinRing0.FindPciDeviceById(PCI_AMD_VENDOR_ID,
1.27 - PCI_AMD_10H_MISCELLANEOUS_DEVICE_ID, 0);
1.28 + pciAddress = WinRing0.FindPciDeviceById(PCI_AMD_VENDOR_ID,
1.29 + PCI_AMD_10H_MISCELLANEOUS_DEVICE_ID, (byte)processorIndex);
1.30 if (pciAddress == 0xFFFFFFFF)
1.31 pciAddress = WinRing0.FindPciDeviceById(PCI_AMD_VENDOR_ID,
1.32 - PCI_AMD_11H_MISCELLANEOUS_DEVICE_ID, 0);
1.33 + PCI_AMD_11H_MISCELLANEOUS_DEVICE_ID, (byte)processorIndex);
1.34
1.35 Update();
1.36 }
1.37 @@ -102,7 +104,7 @@
1.38 }
1.39
1.40 public string Identifier {
1.41 - get { return "/amdcpu/0"; }
1.42 + get { return "/amdcpu/" + processorIndex; }
1.43 }
1.44
1.45 public Image Icon {