1 /* SPDX-License-Identifier: MIT */
2 #ifndef __NVFW_HS_H__
3 #define __NVFW_HS_H__
4 #include <core/os.h>
5 struct nvkm_subdev;
6 
7 struct nvfw_hs_header {
8 	u32 sig_dbg_offset;
9 	u32 sig_dbg_size;
10 	u32 sig_prod_offset;
11 	u32 sig_prod_size;
12 	u32 patch_loc;
13 	u32 patch_sig;
14 	u32 hdr_offset;
15 	u32 hdr_size;
16 };
17 
18 const struct nvfw_hs_header *nvfw_hs_header(struct nvkm_subdev *, const void *);
19 
20 struct nvfw_hs_load_header {
21 	u32 non_sec_code_off;
22 	u32 non_sec_code_size;
23 	u32 data_dma_base;
24 	u32 data_size;
25 	u32 num_apps;
26 	u32 apps[0];
27 };
28 
29 const struct nvfw_hs_load_header *
30 nvfw_hs_load_header(struct nvkm_subdev *, const void *);
31 #endif
32