aboutsummaryrefslogtreecommitdiff
path: root/src/soc/intel/broadwell/bootblock/timestamp.inc
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/intel/broadwell/bootblock/timestamp.inc')
-rw-r--r--src/soc/intel/broadwell/bootblock/timestamp.inc19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/soc/intel/broadwell/bootblock/timestamp.inc b/src/soc/intel/broadwell/bootblock/timestamp.inc
new file mode 100644
index 0000000000..f565775ed8
--- /dev/null
+++ b/src/soc/intel/broadwell/bootblock/timestamp.inc
@@ -0,0 +1,19 @@
+/* Store the initial timestamp for booting in mmx registers. This works
+ * because the bootblock isn't being compiled with MMX support so mm0 and
+ * mm1 will be preserved into romstage. */
+ .code32
+
+.global stash_timestamp
+stash_timestamp:
+
+ /* Save the BIST value */
+ movl %eax, %ebp
+
+ finit
+ rdtsc
+ movd %eax, %mm0
+ movd %edx, %mm1
+
+ /* Restore the BIST value to %eax */
+ movl %ebp, %eax
+