1 /* SPDX-License-Identifier: MIT */
2 #ifndef __NVFW_FW_H__
3 #define __NVFW_FW_H__
4 #include <core/os.h>
5 struct nvkm_subdev;
6 
7 struct nvfw_bin_hdr {
8 	u32 bin_magic;
9 	u32 bin_ver;
10 	u32 bin_size;
11 	u32 header_offset;
12 	u32 data_offset;
13 	u32 data_size;
14 };
15 
16 const struct nvfw_bin_hdr *nvfw_bin_hdr(struct nvkm_subdev *, const void *);
17 
18 struct nvfw_bl_desc {
19 	u32 start_tag;
20 	u32 dmem_load_off;
21 	u32 code_off;
22 	u32 code_size;
23 	u32 data_off;
24 	u32 data_size;
25 };
26 
27 const struct nvfw_bl_desc *nvfw_bl_desc(struct nvkm_subdev *, const void *);
28 #endif
29