summaryrefslogtreecommitdiff
path: root/src/soc/amd/picasso/include
diff options
context:
space:
mode:
authorMartin Roth <martin@coreboot.org>2020-06-26 08:40:56 -0600
committerPatrick Georgi <pgeorgi@google.com>2020-08-24 09:23:05 +0000
commit0c12abe4625e9bde9b31cbd9b1b9e2727bdee715 (patch)
tree14213cb2b460d2ebc4a2abf9a8ee01a0d9c0de82 /src/soc/amd/picasso/include
parent3818d03fa2dcc5be891b909df9f1581296b458ef (diff)
soc/amd/picasso: Add console & timestamp buffers to psp_verstage
Create areas for console & timestamp data in psp_verstage and pass it to the x86 to save for use later. BUG=b:159220781 TEST=Build & Boot trembyle Signed-off-by: Martin Roth <martin@coreboot.org> Change-Id: I41c8d7a1565e761187e941d7d6021805a9744d06 Reviewed-on: https://review.coreboot.org/c/coreboot/+/42830 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Raul Rangel <rrangel@chromium.org>
Diffstat (limited to 'src/soc/amd/picasso/include')
-rw-r--r--src/soc/amd/picasso/include/soc/psp_transfer.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/soc/amd/picasso/include/soc/psp_transfer.h b/src/soc/amd/picasso/include/soc/psp_transfer.h
new file mode 100644
index 0000000000..6a43b55a6c
--- /dev/null
+++ b/src/soc/amd/picasso/include/soc/psp_transfer.h
@@ -0,0 +1,32 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+#ifndef PSP_VERSTAGE_PSP_TRANSFER_H
+#define PSP_VERSTAGE_PSP_TRANSFER_H
+
+#define TRANSFER_INFO_SIZE 64
+#define TIMESTAMP_BUFFER_SIZE 0x200
+
+#define TRANSFER_MAGIC_VAL 0x50544953
+
+/* Area for things that would cause errors in a linker script */
+#if !defined(__ASSEMBLER__)
+#include <stdint.h>
+
+struct transfer_info_struct {
+ uint32_t magic_val; /* Identifier */
+ uint32_t struct_bytes; /* Size of this structure */
+ uint32_t buffer_size; /* Size of the transfer buffer area */
+
+ /* Offsets from start of transfer buffer */
+ uint32_t workbuf_offset;
+ uint32_t console_offset;
+ uint32_t timestamp_offset;
+ uint32_t fmap_offset;
+ uint32_t unused[9]; /* Pad to 64 bytes */
+};
+
+_Static_assert(sizeof(struct transfer_info_struct) == TRANSFER_INFO_SIZE, \
+ "TRANSFER_INFO_SIZE is incorrect");
+#endif
+
+#endif /* PSP_VERSTAGE_PSP_TRANSFER_H */