1 /* 2 * Copyright (c) 2021, Arm Limited. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 * 6 */ 7 8 #ifndef UEFI_CAPSULE_PARSER_H 9 #define UEFI_CAPSULE_PARSER_H 10 11 #include <stdint.h> 12 #include "fip_parser/external/uuid.h" 13 #include "flash_layout.h" 14 15 #define AUTHENTICATED_CAPSULE 1 16 17 enum uefi_capsule_error_t { 18 UEFI_CAPSULE_PARSER_SUCCESS = 0, 19 UEFI_CAPSULE_PARSER_ERROR = (-1) 20 }; 21 22 typedef struct capsule_image_info { 23 uint32_t nr_image; 24 void *image[NR_OF_IMAGES_IN_FW_BANK]; 25 struct efi_guid guid[NR_OF_IMAGES_IN_FW_BANK]; 26 uint32_t size[NR_OF_IMAGES_IN_FW_BANK]; 27 uint32_t version[NR_OF_IMAGES_IN_FW_BANK]; 28 } capsule_image_info_t; 29 30 enum uefi_capsule_error_t uefi_capsule_retrieve_images(void* capsule_ptr, 31 capsule_image_info_t* images_info); 32 33 #endif /* UEFI_CAPSULE_PARSER_H */ 34