-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix rtc drift issue #6410
Merged
Merged
Fix rtc drift issue #6410
+92
−37
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
niruiyu
reviewed
Nov 7, 2024
niruiyu
reviewed
Nov 7, 2024
The commit messages should typically only have one Signed-off-by tag |
chenlin3
force-pushed
the
fix_rtc_drift_issue
branch
3 times, most recently
from
November 7, 2024 08:39
ed120e3
to
9468c6e
Compare
niruiyu
reviewed
Nov 7, 2024
niruiyu
reviewed
Nov 7, 2024
chenlin3
force-pushed
the
fix_rtc_drift_issue
branch
3 times, most recently
from
November 11, 2024 02:20
5a5fb68
to
d867654
Compare
niruiyu
approved these changes
Nov 11, 2024
chenlin3
force-pushed
the
fix_rtc_drift_issue
branch
2 times, most recently
from
November 11, 2024 05:09
a028820
to
ff2f683
Compare
mdkinney
reviewed
Nov 11, 2024
chenlin3
force-pushed
the
fix_rtc_drift_issue
branch
2 times, most recently
from
November 12, 2024 03:43
6e3b2c3
to
279b0e5
Compare
mdkinney
reviewed
Nov 12, 2024
chenlin3
force-pushed
the
fix_rtc_drift_issue
branch
from
November 13, 2024 06:59
279b0e5
to
8fa73e2
Compare
mdkinney
approved these changes
Nov 13, 2024
Legacy BIOS design sets only the Update Cycle Inhibit (SET) bit when changing the RTC time. Update Cycle Inhibit Bit may not be supported by the backend device (Common I2C RTC device). It could add Division Chain Select (DV) bit to stop the RTC first (Write to 0x07), Changing the RTC time and then Set the DV bit back. Signed-off-by: Di Zhang <[email protected]>
In PcRtcInit(), it always read RTC time and then write it back. It could potentially cause two issues: 1) There is time gap between read RTC and write RTC, writing RTC time on every boot could cause RTC time drift after many reboot cycles 2) Writing RTC registers on every boot could cause some unnecessary delay, slightly impact the boot performance. The change is only writing RTC time when 1) the current RTC time is not valid or 2) the RegisterB value is changed. Signed-off-by: Chen Lin Z <[email protected]>
chenlin3
force-pushed
the
fix_rtc_drift_issue
branch
from
November 13, 2024 07:11
8fa73e2
to
b683efe
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
<Include a description of the change and why this change was made.>
<For each item, place an "x" in between
[
and]
if true. Example:[x]
(you can also check items in GitHub UI)><Create the PR as a Draft PR if it is only created to run CI checks.>
<Delete lines in <> tags before creating the PR.>
How This Was Tested
<Describe the test(s) that were run to verify the changes.>
Integration Instructions
<Describe how these changes should be integrated. Use N/A if nothing is required.>