xref: /linux/drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/pmu.h (revision ca55b2fef3a9373fcfc30f82fd26bc7fccbda732)
1 #ifndef __NVBIOS_PMU_H__
2 #define __NVBIOS_PMU_H__
3 struct nvbios_pmuT {
4 };
5 
6 u32 nvbios_pmuTe(struct nvkm_bios *, u8 *ver, u8 *hdr, u8 *cnt, u8 *len);
7 u32 nvbios_pmuTp(struct nvkm_bios *, u8 *ver, u8 *hdr, u8 *cnt, u8 *len,
8 		 struct nvbios_pmuT *);
9 
10 struct nvbios_pmuE {
11 	u8  type;
12 	u32 data;
13 };
14 
15 u32 nvbios_pmuEe(struct nvkm_bios *, int idx, u8 *ver, u8 *hdr);
16 u32 nvbios_pmuEp(struct nvkm_bios *, int idx, u8 *ver, u8 *hdr,
17 		 struct nvbios_pmuE *);
18 
19 struct nvbios_pmuR {
20 	u32 boot_addr_pmu;
21 	u32 boot_addr;
22 	u32 boot_size;
23 	u32 code_addr_pmu;
24 	u32 code_addr;
25 	u32 code_size;
26 	u32 init_addr_pmu;
27 
28 	u32 data_addr_pmu;
29 	u32 data_addr;
30 	u32 data_size;
31 	u32 args_addr_pmu;
32 };
33 
34 bool nvbios_pmuRm(struct nvkm_bios *, u8 type, struct nvbios_pmuR *);
35 #endif
36