[ros-diffs] [ion] 26680: - CmpInitializeMachineDependentConfiguration: Write FeatureSet, MHZ and Update Signature to registry CentralProcessor node.

ion at svn.reactos.org ion at svn.reactos.org
Thu May 10 20:11:11 CEST 2007


Author: ion
Date: Thu May 10 22:11:11 2007
New Revision: 26680

URL: http://svn.reactos.org/svn/reactos?rev=26680&view=rev
Log:
- CmpInitializeMachineDependentConfiguration: Write FeatureSet, MHZ and Update Signature to registry CentralProcessor node.

Modified:
    trunk/reactos/ntoskrnl/config/i386/cmhardwr.c

Modified: trunk/reactos/ntoskrnl/config/i386/cmhardwr.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/config/i386/cmhardwr.c?rev=26680&r1=26679&r2=26680&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/config/i386/cmhardwr.c (original)
+++ trunk/reactos/ntoskrnl/config/i386/cmhardwr.c Thu May 10 22:11:11 2007
@@ -197,6 +197,48 @@
 
                 /* Close this new handle */
                 NtClose(FpuHandle);
+
+                /* Check if we have features bits */
+                if (Prcb->FeatureBits)
+                {
+                    /* Add them to the registry */
+                    RtlInitUnicodeString(&ValueName, L"FeatureSet");
+                    Status = NtSetValueKey(KeyHandle,
+                                           &ValueName,
+                                           0,
+                                           REG_DWORD,
+                                           &Prcb->FeatureBits,
+                                           sizeof(Prcb->FeatureBits));
+                }
+
+                /* Check if we detected the CPU Speed */
+                if (Prcb->MHz)
+                {
+                    /* Add it to the registry */
+                    RtlInitUnicodeString(&ValueName, L"~MHz");
+                    Status = NtSetValueKey(KeyHandle,
+                                           &ValueName,
+                                           0,
+                                           REG_DWORD,
+                                           &Prcb->MHz,
+                                           sizeof(Prcb->MHz));
+                }
+
+                /* Check if we have an update signature */
+                if (Prcb->UpdateSignature.QuadPart)
+                {
+                    /* Add it to the registry */
+                    RtlInitUnicodeString(&ValueName, L"Update Signature");
+                    Status = NtSetValueKey(KeyHandle,
+                                           &ValueName,
+                                           0,
+                                           REG_BINARY,
+                                           &Prcb->UpdateSignature,
+                                           sizeof(Prcb->UpdateSignature));
+                }
+
+                /* Close the processor handle */
+                NtClose(KeyHandle);
             }
         }
 




More information about the Ros-diffs mailing list