Revision: 18072
          http://sourceforge.net/p/edk2/code/18072
Author:   timhe
Date:     2015-07-27 03:14:33 +0000 (Mon, 27 Jul 2015)
Log Message:
-----------
Fixed OS software shutdown when reporting actual processor temperature

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Lu ShifeiX A <shifeix.a...@intel.com>
Reviewed-by: Tim He <tim...@intel.com>

Modified Paths:
--------------
    branches/UDK2014.SP1/Vlv2TbltDevicePkg/PlatformDxe/Platform.c
    branches/UDK2014.SP1/Vlv2TbltDevicePkg/PlatformSetupDxe/Thermal.vfi
    branches/UDK2014.SP1/Vlv2TbltDevicePkg/PlatformSetupDxe/VfrStrings.uni

Modified: branches/UDK2014.SP1/Vlv2TbltDevicePkg/PlatformDxe/Platform.c
===================================================================
--- branches/UDK2014.SP1/Vlv2TbltDevicePkg/PlatformDxe/Platform.c       
2015-07-27 03:10:37 UTC (rev 18071)
+++ branches/UDK2014.SP1/Vlv2TbltDevicePkg/PlatformDxe/Platform.c       
2015-07-27 03:14:33 UTC (rev 18072)
@@ -564,6 +564,32 @@
   }
 }
 
+VOID
+EFIAPI
+InitThermalZone (
+  EFI_EVENT  Event,
+  VOID       *Context
+  )
+{
+  UINTN                  VarSize;
+  EFI_STATUS             Status;
+  EFI_GLOBAL_NVS_AREA_PROTOCOL       *GlobalNvsArea;
+  VarSize = sizeof(SYSTEM_CONFIGURATION);
+  Status = gRT->GetVariable(
+                  NORMAL_SETUP_NAME,
+                  &gEfiNormalSetupGuid,
+                  NULL,
+                  &VarSize,
+                  &mSystemConfiguration
+                  );
+  Status = gBS->LocateProtocol (
+                  &gEfiGlobalNvsAreaProtocolGuid,
+                  NULL,
+                  (void **)&GlobalNvsArea
+                  );
+  GlobalNvsArea->Area->CriticalThermalTripPoint = 
mSystemConfiguration.CriticalThermalTripPoint;
+  GlobalNvsArea->Area->PassiveThermalTripPoint = 
mSystemConfiguration.PassiveThermalTripPoint;
+}
 #if defined SUPPORT_LVDS_DISPLAY && SUPPORT_LVDS_DISPLAY
 
 #endif
@@ -818,7 +844,16 @@
                &mReadyToBootEvent
                );
   }
-
+  //
+  // Create a ReadyToBoot Event to run the thermalzone init process
+  //
+  Status = EfiCreateEventReadyToBootEx (
+             TPL_CALLBACK,
+             InitThermalZone,
+             NULL,
+             &mReadyToBootEvent
+             );  
+ 
   ReportStatusCodeEx (
     EFI_PROGRESS_CODE,
     EFI_COMPUTING_UNIT_CHIPSET | EFI_CU_PLATFORM_DXE_STEP1,

Modified: branches/UDK2014.SP1/Vlv2TbltDevicePkg/PlatformSetupDxe/Thermal.vfi
===================================================================
--- branches/UDK2014.SP1/Vlv2TbltDevicePkg/PlatformSetupDxe/Thermal.vfi 
2015-07-27 03:10:37 UTC (rev 18071)
+++ branches/UDK2014.SP1/Vlv2TbltDevicePkg/PlatformSetupDxe/Thermal.vfi 
2015-07-27 03:14:33 UTC (rev 18072)
@@ -42,8 +42,27 @@
   title  = STRING_TOKEN(STR_THERMAL_TITLE);
 
   subtitle text = STRING_TOKEN(STR_THERMAL_CONFIGURATION);
+  oneof   varid   = Setup.CriticalThermalTripPoint,
+    prompt      = STRING_TOKEN(STR_ACPI_CRITICAL_THERMAL_TRIP_POINT),
+    help        = STRING_TOKEN(STR_ACPI_CRITICAL_THERMAL_TRIP_POINT_HELP),
+    option text = STRING_TOKEN (STR_85_C), value = 85, flags=0 | 
RESET_REQUIRED;     
+    option text = STRING_TOKEN (STR_87_C), value = 87, flags=0 | 
RESET_REQUIRED; 
+    option text = STRING_TOKEN (STR_90_C), value = 90, flags=0 | 
RESET_REQUIRED;
+    option text = STRING_TOKEN (STR_105_C), value = 105, flags=0 | 
RESET_REQUIRED;
+    option text = STRING_TOKEN (STR_110_C), value = 110, flags=0 | 
RESET_REQUIRED;
+    option text = STRING_TOKEN (STR_200_C), value = 200, flags=DEFAULT | 
MANUFACTURING | RESET_REQUIRED;
+  endoneof; 
+  oneof   varid   = Setup.PassiveThermalTripPoint,
+    prompt      = STRING_TOKEN (STR_ACPI_PASSIVE_THERMAL_TRIP_POINT),
+    help        = STRING_TOKEN (STR_ACPI_PASSIVE_THERMAL_TRIP_POINT_HELP),
+    option text = STRING_TOKEN (STR_85_C), value = 85, flags=0 | 
RESET_REQUIRED;
+    option text = STRING_TOKEN (STR_87_C), value = 87, flags=0 | 
RESET_REQUIRED;   
+    option text = STRING_TOKEN (STR_90_C), value = 90, flags=0 | 
RESET_REQUIRED;
+    option text = STRING_TOKEN (STR_100_C), value = 100, flags=0 | 
RESET_REQUIRED;
+    option text = STRING_TOKEN (STR_105_C), value = 105, flags=0 | 
RESET_REQUIRED;
+    option text = STRING_TOKEN (STR_180_C), value = 180, flags=DEFAULT | 
MANUFACTURING | RESET_REQUIRED;
+  endoneof;
 
-
   suppressif TRUE;
     numeric varid = Setup.PassiveTc1Value,
       prompt  = STRING_TOKEN (STR_ACPI_PASSIVE_TC1_VALUE),

Modified: branches/UDK2014.SP1/Vlv2TbltDevicePkg/PlatformSetupDxe/VfrStrings.uni
===================================================================
(Binary files differ)


------------------------------------------------------------------------------
_______________________________________________
edk2-commits mailing list
edk2-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to