]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Enhance the RTC driver to not reserve the CMOS century register MSB.
authorgikidy <gikidy@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 5 Jun 2009 06:42:00 +0000 (06:42 +0000)
committergikidy <gikidy@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 5 Jun 2009 06:42:00 +0000 (06:42 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8476 6f19259b-4bc3-4df7-8a09-765794883524

MdeModulePkg/Universal/PcatRealTimeClockRuntimeDxe/PcRtc.c
MdeModulePkg/Universal/PcatRealTimeClockRuntimeDxe/PcRtc.h

index e9367fb737e5bb22da572496f078088c21b8a310..c6b58b394e417f480ec22c75532b271b495e83b9 100644 (file)
@@ -158,11 +158,7 @@ PcRtcInit (
   Time.Month  = RtcRead (RTC_ADDRESS_MONTH);\r
   Time.Year   = RtcRead (RTC_ADDRESS_YEAR);\r
 \r
-  if (RtcTestCenturyRegister () == EFI_SUCCESS) {\r
-    Century = (UINT8) (RtcRead (RTC_ADDRESS_CENTURY) & 0x7f);\r
-  } else {\r
-    Century = RtcRead (RTC_ADDRESS_CENTURY);\r
-  }\r
+  Century = BcdToDecimal8 (RtcRead (RTC_ADDRESS_CENTURY));\r
 \r
   //\r
   // Set RTC configuration after get original time\r
@@ -285,11 +281,7 @@ PcRtcGetTime (
   Time->Month   = RtcRead (RTC_ADDRESS_MONTH);\r
   Time->Year    = RtcRead (RTC_ADDRESS_YEAR);\r
 \r
-  if (RtcTestCenturyRegister () == EFI_SUCCESS) {\r
-    Century = (UINT8) (RtcRead (RTC_ADDRESS_CENTURY) & 0x7f);\r
-  } else {\r
-    Century = RtcRead (RTC_ADDRESS_CENTURY);\r
-  }\r
+  Century = BcdToDecimal8 (RtcRead (RTC_ADDRESS_CENTURY));\r
 \r
   //\r
   // Release RTC Lock.\r
@@ -401,10 +393,6 @@ PcRtcSetTime (
   RtcWrite (RTC_ADDRESS_DAY_OF_THE_MONTH, RtcTime.Day);\r
   RtcWrite (RTC_ADDRESS_MONTH, RtcTime.Month);\r
   RtcWrite (RTC_ADDRESS_YEAR, (UINT8) RtcTime.Year);\r
-  if (RtcTestCenturyRegister () == EFI_SUCCESS) {\r
-    Century = (UINT8) ((Century & 0x7f) | (RtcRead (RTC_ADDRESS_CENTURY) & 0x80));\r
-  }\r
-\r
   RtcWrite (RTC_ADDRESS_CENTURY, Century);\r
 \r
   //\r
@@ -520,11 +508,7 @@ PcRtcGetWakeupTime (
     Time->Year    = RtcRead (RTC_ADDRESS_YEAR);\r
   }\r
 \r
-  if (RtcTestCenturyRegister () == EFI_SUCCESS) {\r
-    Century = (UINT8) (RtcRead (RTC_ADDRESS_CENTURY) & 0x7f);\r
-  } else {\r
-    Century = RtcRead (RTC_ADDRESS_CENTURY);\r
-  }\r
+  Century = BcdToDecimal8 (RtcRead (RTC_ADDRESS_CENTURY));\r
 \r
   //\r
   // Release RTC Lock.\r
@@ -663,29 +647,6 @@ PcRtcSetWakeupTime (
   return EFI_SUCCESS;\r
 }\r
 \r
-/**\r
-  See if century register of RTC is valid.\r
-\r
-  @retval  EFI_SUCCESS       Century register is valid.\r
-  @retval  EFI_DEVICE_ERROR  Century register is NOT valid.\r
-**/\r
-EFI_STATUS\r
-RtcTestCenturyRegister (\r
-  VOID\r
-  )\r
-{\r
-  UINT8 Century;\r
-  UINT8 Temp;\r
-\r
-  Century = RtcRead (RTC_ADDRESS_CENTURY);\r
-  Temp = (UINT8) (RtcRead (RTC_ADDRESS_CENTURY) & 0x7f);\r
-  RtcWrite (RTC_ADDRESS_CENTURY, Century);\r
-  if (Temp == 0x19 || Temp == 0x20) {\r
-    return EFI_SUCCESS;\r
-  }\r
-\r
-  return EFI_DEVICE_ERROR;\r
-}\r
 \r
 /**\r
   Checks an 8-bit BCD value, and converts to an 8-bit value if valid.\r
index 5beb0756910d830956ce0dc8bed42a7aab8988b4..90cfa396345f2d2c66d5a6041659ecb03feab43d 100644 (file)
@@ -296,16 +296,6 @@ ConvertEfiTimeToRtcTime (
   OUT    UINT8           *Century\r
   );\r
 \r
-/**\r
-  See if centry register of RTC is valid.\r
-\r
-  @retval  EFI_SUCCESS       Century register is valid.\r
-  @retval  EFI_DEVICE_ERROR  Century register is NOT valid.\r
-**/\r
-EFI_STATUS\r
-RtcTestCenturyRegister (\r
-  VOID\r
-  );\r
 \r
 /**\r
   Converts time read from RTC to EFI_TIME format defined by UEFI spec.\r