| /* |
| * Copyright (c) 2023 Nordic Semiconductor ASA |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| /** |
| * @file |
| * @brief Public API for boot mode interface |
| */ |
| |
| #ifndef ZEPHYR_INCLUDE_RETENTION_BLINFO_ |
| #define ZEPHYR_INCLUDE_RETENTION_BLINFO_ |
| |
| #include <stdint.h> |
| #include <stddef.h> |
| #include <zephyr/kernel.h> |
| |
| #if defined(CONFIG_RETENTION_BOOTLOADER_INFO_TYPE_MCUBOOT) |
| #include <bootutil/boot_status.h> |
| #endif |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| /** |
| * @brief Bootloader info interface |
| * @defgroup bootloader_info_interface Bootloader info interface |
| * @since 3.5 |
| * @version 0.1.0 |
| * @ingroup retention_api |
| * @{ |
| */ |
| |
| #if IS_ENABLED(CONFIG_RETENTION_BOOTLOADER_INFO_OUTPUT_FUNCTION) || defined(__DOXYGEN__) |
| /** |
| * @brief Returns bootinfo information. |
| * |
| * @param key The information to return (for MCUboot: minor TLV). |
| * @param val Where the return information will be placed. |
| * @param val_len_max The maximum size of the provided buffer. |
| * |
| * @retval 0 If successful. |
| * @retval -EOVERFLOW If the data is too large to fit the supplied buffer. |
| * @retval -EIO If the requested key was not found. |
| * @retval -errno Error code. |
| */ |
| int blinfo_lookup(uint16_t key, char *val, int val_len_max); |
| #endif |
| |
| /** |
| * @} |
| */ |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /* ZEPHYR_INCLUDE_RETENTION_BLINFO_ */ |