1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2 /*
3  * Copyright(c) 2020-2023 Intel Corporation
4  */
5 #ifndef __IWL_PNVM_H__
6 #define __IWL_PNVM_H__
7 
8 #include "iwl-drv.h"
9 #include "fw/notif-wait.h"
10 
11 #define MVM_UCODE_PNVM_TIMEOUT	(HZ / 4)
12 
13 #define MAX_PNVM_NAME  64
14 
15 int iwl_pnvm_load(struct iwl_trans *trans,
16 		  struct iwl_notif_wait_data *notif_wait,
17 		  const struct iwl_ucode_capabilities *capa);
18 
19 static inline
iwl_pnvm_get_fs_name(struct iwl_trans * trans,u8 * pnvm_name,size_t max_len)20 void iwl_pnvm_get_fs_name(struct iwl_trans *trans,
21 			  u8 *pnvm_name, size_t max_len)
22 {
23 	char _fw_name_pre[FW_NAME_PRE_BUFSIZE];
24 
25 	snprintf(pnvm_name, max_len, "%s.pnvm",
26 		 iwl_drv_get_fwname_pre(trans, _fw_name_pre));
27 }
28 
29 #endif /* __IWL_PNVM_H__ */
30