\r
ConvertRtcTimeToEfiTime (&Time, RegisterB);\r
\r
- if (RtcTestCenturyRegister () == EFI_SUCCESS) {\r
- Century = BcdToDecimal ((UINT8) (RtcRead (RTC_ADDRESS_CENTURY) & 0x7f));\r
- } else {\r
- Century = BcdToDecimal (RtcRead (RTC_ADDRESS_CENTURY));\r
- }\r
+ Century = BcdToDecimal8 (RtcRead (RTC_ADDRESS_CENTURY));\r
\r
Time.Year = (UINT16) (Century * 100 + Time.Year);\r
\r
\r
ConvertRtcTimeToEfiTime (Time, RegisterB);\r
\r
- if (RtcTestCenturyRegister () == EFI_SUCCESS) {\r
- Century = BcdToDecimal ((UINT8) (RtcRead (RTC_ADDRESS_CENTURY) & 0x7f));\r
- } else {\r
- Century = BcdToDecimal (RtcRead (RTC_ADDRESS_CENTURY));\r
- }\r
+ Century = BcdToDecimal8 (RtcRead (RTC_ADDRESS_CENTURY));\r
\r
Time->Year = (UINT16) (Century * 100 + Time->Year);\r
\r
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
\r
ConvertRtcTimeToEfiTime (Time, RegisterB);\r
\r
- if (RtcTestCenturyRegister () == EFI_SUCCESS) {\r
- Century = BcdToDecimal ((UINT8) (RtcRead (RTC_ADDRESS_CENTURY) & 0x7f));\r
- } else {\r
- Century = BcdToDecimal (RtcRead (RTC_ADDRESS_CENTURY));\r
- }\r
+ Century = BcdToDecimal8 (RtcRead (RTC_ADDRESS_CENTURY));\r
\r
Time->Year = (UINT16) (Century * 100 + Time->Year);\r
\r
return EFI_SUCCESS;\r
}\r
\r
-UINT8\r
-BcdToDecimal (\r
- IN UINT8 BcdValue\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Arguments:\r
-\r
- \r
-\r
-Returns: \r
---*/\r
-// TODO: BcdValue - add argument and description to function comment\r
-{\r
- UINTN High;\r
- UINTN Low;\r
-\r
- High = BcdValue >> 4;\r
- Low = BcdValue - (High << 4);\r
-\r
- return (UINT8) (Low + (High * 10));\r
-}\r
-\r
-EFI_STATUS\r
-RtcTestCenturyRegister (\r
- VOID\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Arguments:\r
-\r
- \r
-\r
-Returns: \r
---*/\r
-// TODO: EFI_SUCCESS - add return value to function comment\r
-// TODO: EFI_DEVICE_ERROR - add return value to function comment\r
-{\r
- UINT8 Century;\r
- UINT8 Temp;\r
-\r
- Century = RtcRead (RTC_ADDRESS_CENTURY);\r
- //\r
- // RtcWrite (RTC_ADDRESS_CENTURY, 0x00);\r
- //\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
VOID\r
ConvertRtcTimeToEfiTime (\r
IN EFI_TIME *Time,\r
Time->Hour = (UINT8) (Time->Hour & 0x7f);\r
\r
if (RegisterB.Bits.DM == 0) {\r
- Time->Year = BcdToDecimal ((UINT8) Time->Year);\r
- Time->Month = BcdToDecimal (Time->Month);\r
- Time->Day = BcdToDecimal (Time->Day);\r
- Time->Hour = BcdToDecimal (Time->Hour);\r
- Time->Minute = BcdToDecimal (Time->Minute);\r
- Time->Second = BcdToDecimal (Time->Second);\r
+ Time->Year = BcdToDecimal8 ((UINT8) Time->Year);\r
+ Time->Month = BcdToDecimal8 (Time->Month);\r
+ Time->Day = BcdToDecimal8 (Time->Day);\r
+ Time->Hour = BcdToDecimal8 (Time->Hour);\r
+ Time->Minute = BcdToDecimal8 (Time->Minute);\r
+ Time->Second = BcdToDecimal8 (Time->Second);\r
}\r
//\r
// If time is in 12 hour format, convert it to 24 hour format\r