Index: src/platform/vboot_reference/vboot_firmware/include/gbb_header.h |
diff --git a/src/platform/vboot_reference/vboot_firmware/include/gbb_header.h b/src/platform/vboot_reference/vboot_firmware/include/gbb_header.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..d1f84a837aa9b08558b3db0691cf39eafab15626 |
--- /dev/null |
+++ b/src/platform/vboot_reference/vboot_firmware/include/gbb_header.h |
@@ -0,0 +1,47 @@ |
+/* Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
+ * Use of this source code is governed by a BSD-style license that can be |
+ * found in the LICENSE file. |
+ * |
+ * Data structure of Google Binary Block (GBB) |
+ */ |
+ |
+#ifndef VBOOT_REFERENCE_GBB_HEADER_H_ |
+#define VBOOT_REFERENCE_GBB_HEADER_H_ |
+ |
+#include <stdint.h> |
+ |
+#define GBB_HEADER_SIZE (0x80) |
+ |
+#define GBB_SIGNATURE "$GBB" |
+#define GBB_SIGNATURE_SIZE (4) |
+ |
+#define GBB_MAJOR_VER (0x01) |
+#define GBB_MINOR_VER (0x00) |
+ |
+#ifdef __cplusplus |
+extern "C" { |
+#endif // __cplusplus |
+ |
+typedef struct GoogleBinaryBlockHeader { |
+ uint8_t signature[GBB_SIGNATURE_SIZE]; // GBB_SIGNATURE "$GBB" |
+ uint16_t major_version; // see GBB_MAJOR_VER |
+ uint16_t minor_version; // see GBB_MINOR_VER |
+ uint32_t header_size; // size of GBB header in bytes |
+ uint32_t reserved; |
+ |
+ uint32_t hwid_offset; // HWID offset from header |
+ uint32_t hwid_size; // HWID size in bytes |
+ uint32_t rootkey_offset; // Root Key offset from header |
+ uint32_t rootkey_size; // Root Key size in bytes |
+ uint32_t bmpfv_offset; // BMP FV offset from header |
+ uint32_t bmpfv_size; // BMP FV size in bytes |
+ |
+ uint8_t pad[88]; // to match GBB_HEADER_SIZE |
+} GoogleBinaryBlockHeader; |
+ |
+#ifdef __cplusplus |
+} |
+#endif // __cplusplus |
+ |
+#endif /* VBOOT_REFERENCE_GBB_HEADER_H_ */ |
+ |