| From 4465e159649aeebdcadb035f4a576331b7938449 Mon Sep 17 00:00:00 2001 |
| From: David Pursell <dpursell@google.com> |
| Date: Fri, 8 Dec 2023 10:24:12 -0800 |
| Subject: [PATCH] [vim3] fixup Firmware SDK |
| |
| Change-Id: Ibc20e95cc572839dbb777c0d6709ec392ea6d076 |
| --- |
| .../arch/arm64/sysroot/include/zircon/hw/gpt.h | 10 ++++++---- |
| .../firmware_sdk/pkg/abr/include/lib/abr/sysdeps.h | 6 +++++- |
| lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_cmdline.c | 6 ++++-- |
| .../firmware_sdk/pkg/avb/libavb/avb_slot_verify.c | 3 ++- |
| lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_sysdeps.h | 4 +++- |
| .../firmware_sdk/pkg/avb/libavb/avb_sysdeps_posix.c | 7 +++---- |
| .../pkg/zbi-format/include/lib/zbi-format/board.h | 3 ++- |
| .../pkg/zbi-format/include/lib/zbi-format/cpu.h | 3 ++- |
| .../zbi-format/include/lib/zbi-format/driver-config.h | 3 ++- |
| .../pkg/zbi-format/include/lib/zbi-format/kernel.h | 3 ++- |
| .../pkg/zbi-format/include/lib/zbi-format/memory.h | 3 ++- |
| .../pkg/zbi-format/include/lib/zbi-format/zbi.h | 3 ++- |
| lib/fuchsia/firmware_sdk/pkg/zbi/zbi.c | 4 +++- |
| 13 files changed, 38 insertions(+), 20 deletions(-) |
| |
| diff --git a/lib/fuchsia/firmware_sdk/arch/arm64/sysroot/include/zircon/hw/gpt.h b/lib/fuchsia/firmware_sdk/arch/arm64/sysroot/include/zircon/hw/gpt.h |
| index 3aecdeba763..1bf4a8dd4ab 100644 |
| --- a/lib/fuchsia/firmware_sdk/arch/arm64/sysroot/include/zircon/hw/gpt.h |
| +++ b/lib/fuchsia/firmware_sdk/arch/arm64/sysroot/include/zircon/hw/gpt.h |
| @@ -5,14 +5,16 @@ |
| #ifndef ZIRCON_HW_GPT_H_ |
| #define ZIRCON_HW_GPT_H_ |
| |
| -#include <assert.h> |
| -#include <stdbool.h> |
| -#include <stdint.h> |
| +// Modified for VIM3. |
| +#include <common.h> |
| +#include <part_efi.h> |
| + |
| #include <zircon/compiler.h> |
| |
| #define GPT_MAGIC (0x5452415020494645ull) // 'EFI PART' |
| #define GPT_HEADER_SIZE 0x5c |
| -#define GPT_ENTRY_SIZE 0x80 |
| +// Modified for VIM3 - already defined in part_efi.h. |
| +// #define GPT_ENTRY_SIZE 0x80 |
| #define GPT_GUID_LEN 16 |
| #define GPT_GUID_STRLEN 37 |
| #define GPT_NAME_LEN 72 |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/abr/include/lib/abr/sysdeps.h b/lib/fuchsia/firmware_sdk/pkg/abr/include/lib/abr/sysdeps.h |
| index 45980d1bcc1..9bac61c347a 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/abr/include/lib/abr/sysdeps.h |
| +++ b/lib/fuchsia/firmware_sdk/pkg/abr/include/lib/abr/sysdeps.h |
| @@ -10,7 +10,8 @@ |
| * need to define some standard types and implement the abr_* functions declared |
| * below. |
| */ |
| -#define LIBABR_USE_STDLIB_DEPS 1 |
| +// Modified for VIM3. |
| +#define LIBABR_USE_STDLIB_DEPS 0 |
| |
| #if LIBABR_USE_STDLIB_DEPS |
| #include <stdbool.h> |
| @@ -21,6 +22,9 @@ |
| #include <string.h> |
| #endif /* LIBABR_USE_STDLIB_DEPS */ |
| |
| +// Modified for VIM3. |
| +#include <common.h> |
| + |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_cmdline.c b/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_cmdline.c |
| index 5773a201954..aee1b8e1b48 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_cmdline.c |
| +++ b/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_cmdline.c |
| @@ -216,7 +216,8 @@ AvbSlotVerifyResult avb_append_options( |
| AvbHashtreeErrorMode hashtree_error_mode, |
| AvbHashtreeErrorMode resolved_hashtree_error_mode) { |
| AvbSlotVerifyResult ret; |
| - const char* verity_mode; |
| + // Modified for VIM3. |
| + const char* verity_mode = NULL; |
| bool is_device_unlocked; |
| AvbIOResult io_ret; |
| |
| @@ -318,7 +319,8 @@ AvbSlotVerifyResult avb_append_options( |
| if (toplevel_vbmeta->flags & AVB_VBMETA_IMAGE_FLAGS_HASHTREE_DISABLED) { |
| verity_mode = "disabled"; |
| } else { |
| - const char* dm_verity_mode; |
| + // Modified for VIM3. |
| + const char* dm_verity_mode = NULL; |
| char* new_ret; |
| |
| switch (resolved_hashtree_error_mode) { |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_slot_verify.c b/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_slot_verify.c |
| index 6a2745aed86..d7f37408ce9 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_slot_verify.c |
| +++ b/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_slot_verify.c |
| @@ -1368,7 +1368,8 @@ AvbSlotVerifyResult avb_slot_verify(AvbOps* ops, |
| AvbSlotVerifyFlags flags, |
| AvbHashtreeErrorMode hashtree_error_mode, |
| AvbSlotVerifyData** out_data) { |
| - AvbSlotVerifyResult ret; |
| + // Modified for VIM3. |
| + AvbSlotVerifyResult ret = AVB_SLOT_VERIFY_RESULT_ERROR_VERIFICATION; |
| AvbSlotVerifyData* slot_data = NULL; |
| AvbAlgorithmType algorithm_type = AVB_ALGORITHM_TYPE_NONE; |
| bool using_boot_for_vbmeta = false; |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_sysdeps.h b/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_sysdeps.h |
| index e511a8ade2e..ae9932cf471 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_sysdeps.h |
| +++ b/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_sysdeps.h |
| @@ -41,7 +41,9 @@ extern "C" { |
| #include <inttypes.h> |
| #include <stdbool.h> |
| #include <stddef.h> |
| -#include <stdint.h> |
| + |
| +// Modified for VIM3. |
| +#include <common.h> |
| |
| /* If you don't have gcc or clang, these attribute macros may need to |
| * be adjusted. |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_sysdeps_posix.c b/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_sysdeps_posix.c |
| index e26c3efffc0..7d6a5cfafb9 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_sysdeps_posix.c |
| +++ b/lib/fuchsia/firmware_sdk/pkg/avb/libavb/avb_sysdeps_posix.c |
| @@ -22,11 +22,9 @@ |
| * SOFTWARE. |
| */ |
| |
| -#include <endian.h> |
| +// Modified for VIM3. |
| #include <stdarg.h> |
| -#include <stdio.h> |
| #include <stdlib.h> |
| -#include <string.h> |
| |
| #include "avb_sysdeps.h" |
| |
| @@ -55,7 +53,8 @@ size_t avb_strlen(const char* str) { |
| } |
| |
| void avb_abort(void) { |
| - abort(); |
| + // Modified for VIM3. |
| + panic("avb abort\n"); |
| } |
| |
| void avb_print(const char* message) { |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/board.h b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/board.h |
| index 09d08487bc3..1060e417949 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/board.h |
| +++ b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/board.h |
| @@ -9,7 +9,8 @@ |
| #ifndef LIB_ZBI_FORMAT_BOARD_H_ |
| #define LIB_ZBI_FORMAT_BOARD_H_ |
| |
| -#include <stdint.h> |
| +// Modified for VIM3. |
| +#include <common.h> |
| |
| #if defined(__cplusplus) |
| extern "C" { |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/cpu.h b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/cpu.h |
| index 5aa09d631af..2c955d64fc9 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/cpu.h |
| +++ b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/cpu.h |
| @@ -9,7 +9,8 @@ |
| #ifndef LIB_ZBI_FORMAT_CPU_H_ |
| #define LIB_ZBI_FORMAT_CPU_H_ |
| |
| -#include <stdint.h> |
| +// Modified for VIM3. |
| +#include <common.h> |
| |
| #if defined(__cplusplus) |
| extern "C" { |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/driver-config.h b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/driver-config.h |
| index 0a59341b378..57afc13013b 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/driver-config.h |
| +++ b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/driver-config.h |
| @@ -9,7 +9,8 @@ |
| #ifndef LIB_ZBI_FORMAT_DRIVER_CONFIG_H_ |
| #define LIB_ZBI_FORMAT_DRIVER_CONFIG_H_ |
| |
| -#include <stdint.h> |
| +// Modified for VIM3. |
| +#include <common.h> |
| |
| #if defined(__cplusplus) |
| extern "C" { |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/kernel.h b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/kernel.h |
| index bad7e67a72d..d81e0aa7cc0 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/kernel.h |
| +++ b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/kernel.h |
| @@ -9,7 +9,8 @@ |
| #ifndef LIB_ZBI_FORMAT_KERNEL_H_ |
| #define LIB_ZBI_FORMAT_KERNEL_H_ |
| |
| -#include <stdint.h> |
| +// Modified for VIM3. |
| +#include <common.h> |
| |
| #if defined(__cplusplus) |
| extern "C" { |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/memory.h b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/memory.h |
| index 8db1094c727..ab04783523f 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/memory.h |
| +++ b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/memory.h |
| @@ -9,7 +9,8 @@ |
| #ifndef LIB_ZBI_FORMAT_MEMORY_H_ |
| #define LIB_ZBI_FORMAT_MEMORY_H_ |
| |
| -#include <stdint.h> |
| +// Modified for VIM3. |
| +#include <common.h> |
| |
| #if defined(__cplusplus) |
| extern "C" { |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/zbi.h b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/zbi.h |
| index 8f25fc8c9a4..ee39bc81c9c 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/zbi.h |
| +++ b/lib/fuchsia/firmware_sdk/pkg/zbi-format/include/lib/zbi-format/zbi.h |
| @@ -9,7 +9,8 @@ |
| #ifndef LIB_ZBI_FORMAT_ZBI_H_ |
| #define LIB_ZBI_FORMAT_ZBI_H_ |
| |
| -#include <stdint.h> |
| +// Modified for VIM3. |
| +#include <common.h> |
| |
| #if defined(__cplusplus) |
| extern "C" { |
| diff --git a/lib/fuchsia/firmware_sdk/pkg/zbi/zbi.c b/lib/fuchsia/firmware_sdk/pkg/zbi/zbi.c |
| index 4e6cd6724b6..11d09890dfa 100644 |
| --- a/lib/fuchsia/firmware_sdk/pkg/zbi/zbi.c |
| +++ b/lib/fuchsia/firmware_sdk/pkg/zbi/zbi.c |
| @@ -4,7 +4,9 @@ |
| |
| #include <lib/zbi/zbi.h> |
| #include <stdbool.h> |
| -#include <string.h> |
| + |
| +// Modified for VIM3. |
| +#include <common.h> |
| |
| // At most, a ZBI container can be the header + 32 bits of length. |
| #define MAX_CONTAINER_SIZE (sizeof(zbi_header_t) + 0xFFFFFFFFull) |
| -- |
| 2.43.0.472.g3155946c3a-goog |
| |