Kangheui Won has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/45059 )
Change subject: soc/amd/picasso: pass verstage timestamps to x86 ......................................................................
Patch Set 6: Code-Review-1
(3 comments)
Need further work -
a) Ensure that out-of-sync TSC won't cause any side-effects in kernel. b) Combined with a), need additional verification on S3 resume path.
https://review.coreboot.org/c/coreboot/+/45059/6/src/soc/amd/picasso/bootblo... File src/soc/amd/picasso/bootblock/bootblock.c:
https://review.coreboot.org/c/coreboot/+/45059/6/src/soc/amd/picasso/bootblo... PS6, Line 138: (uint64_t)info->timestamp
This is implicitly assuming the time unit is 1us.
I stated that in line 131.
https://review.coreboot.org/c/coreboot/+/45059/6/src/soc/amd/picasso/bootblo... PS6, Line 144: wrmsr(TSC_MSR, msr);
Rewriting the TSC counter out of sequence with the other APs can cause issues. […]
Yes kernel complained about it - [ 0.000000] tsc: Fast TSC calibration using PIT [ 0.289103] TSC synchronization [CPU#0 -> CPU#1]: [ 0.289103] Measured 5514916724 cycles TSC warp between CPUs, turning off TSC clock. [ 0.289103] tsc: Marking TSC unstable due to check_tsc_sync_source failed
I need to investigate further if this has any side effects.
https://review.coreboot.org/c/coreboot/+/45059/6/src/soc/amd/picasso/bootblo... PS6, Line 157: * Since bootblock_main_with_timestamp calls
What about adding a flag to bootblock_main_with_timestamp?
What flag do you mean?