Add Qorvo UWB driver for Qorvo UWB chipset QM35725s Change-Id: I77124d7d242863fd8c8a602db7d4cb59aa96ef57 Signed-off-by: zhuangnk1 <zhuangnk1@lenovo.com> Reviewed-on: https://gerrit.mot.com/2687911 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Tao Sun <suntao2@motorola.com> Submit-Approved: Jira Key
63 lines
1.5 KiB
C
63 lines
1.5 KiB
C
// SPDX-License-Identifier: GPL-2.0 OR Apache-2.0
|
|
/*
|
|
* Copyright 2021 Qorvo US, Inc.
|
|
*
|
|
*/
|
|
|
|
#ifndef __FWUPDATER_H__
|
|
#define __FWUPDATER_H__
|
|
|
|
#ifndef __KERNEL__
|
|
#include <stdint.h>
|
|
#include <stddef.h>
|
|
#else
|
|
#include <linux/types.h>
|
|
#endif
|
|
|
|
#include "qmrom.h"
|
|
#include "qm357xx_fwpkg.h"
|
|
|
|
enum fw_pkg_error_e {
|
|
FW_PKG_SUCESS = 0,
|
|
FW_PKG_DOWNLOAD_ERROR,
|
|
FW_PKG_MAGIC_NUM_INVALID,
|
|
FW_PKG_VERSION_INVALID,
|
|
FW_PKG_ENCRYPTION_MODE_INVALID,
|
|
FW_PKG_IMG_HDR_MAGIC_NUM_INVALID,
|
|
FW_PKG_IMG_HDR_VERSION_INVALID,
|
|
FW_PKG_IMG_HDR_CERT_SIZE_INVALID,
|
|
FW_PKG_IMG_HDR_IMG_NUM_INVALID,
|
|
FW_PKG_PLD_CHK_MAGIC_NUM_INVALID,
|
|
FW_PKG_PLD_CHK_VERSION_INVALID,
|
|
FW_PKG_PLD_CHK_LENGTH_INVALID,
|
|
FW_PKG_HDR_CRYPTO_ERROR,
|
|
FW_PKG_HDR_CRYPTO_INVALID,
|
|
FW_PKG_HDR_PAYLOAD_SIZE_INVALID,
|
|
FW_PKG_IMG_HDR_SIZE_INVALID,
|
|
FW_PKG_IMG_HDR_CRYPTO_ERROR,
|
|
FW_PKG_IMG_HDR_NUMDESCS_INVALID,
|
|
FW_PKG_CERT_CHAIN_SIZE_INVALID,
|
|
FW_PKG_CERT_CHAIN_INVALID,
|
|
FW_PKG_CERT_INSTALLED_FW_VERSION_INVALID,
|
|
FW_PKG_CERT_KEY1_CHECK_INVALID,
|
|
FW_PKG_CERT_KEY2_CHECK_INVALID,
|
|
FW_PKG_CERT_CONTENT_CHECK_INVALID,
|
|
FW_PKG_CERT_CHAIN_CRYPTO_ERROR,
|
|
FW_PKG_CERT_CHAIN_IMG_RANGE_INVALID,
|
|
FW_PKG_CERT_CHAIN_WRITE_ERROR,
|
|
FW_PKG_IMG_CHUNK_CRYPTO_ERROR,
|
|
FW_PKG_IMG_CHUNK_WRITE_ERROR,
|
|
FW_PKG_IMG_FIXUP_FAILED
|
|
};
|
|
|
|
/*! Firmware Update Status fields */
|
|
struct fw_updater_status_t {
|
|
uint32_t status;
|
|
uint32_t suberror;
|
|
} __attribute__((packed));
|
|
|
|
void run_fwupdater_unit_tests(void *spi_handle);
|
|
int run_fwupdater(struct qmrom_handle *handle, char *fwpkg_bin, size_t size);
|
|
|
|
#endif /* __FWUPDATER_H__ */
|