xref: /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/subdev/bios/pmu.h (revision 41ec02673d281bbb3d38e6c78504ce6e30c228c1)
1 /*	$NetBSD: pmu.h,v 1.3 2021/12/18 23:45:33 riastradh Exp $	*/
2 
3 /* SPDX-License-Identifier: MIT */
4 #ifndef __NVBIOS_PMU_H__
5 #define __NVBIOS_PMU_H__
6 struct nvbios_pmuT {
7 };
8 
9 u32 nvbios_pmuTe(struct nvkm_bios *, u8 *ver, u8 *hdr, u8 *cnt, u8 *len);
10 
11 struct nvbios_pmuE {
12 	u8  type;
13 	u32 data;
14 };
15 
16 u32 nvbios_pmuEe(struct nvkm_bios *, int idx, u8 *ver, u8 *hdr);
17 u32 nvbios_pmuEp(struct nvkm_bios *, int idx, u8 *ver, u8 *hdr,
18 		 struct nvbios_pmuE *);
19 
20 struct nvbios_pmuR {
21 	u32 boot_addr_pmu;
22 	u32 boot_addr;
23 	u32 boot_size;
24 	u32 code_addr_pmu;
25 	u32 code_addr;
26 	u32 code_size;
27 	u32 init_addr_pmu;
28 
29 	u32 data_addr_pmu;
30 	u32 data_addr;
31 	u32 data_size;
32 	u32 args_addr_pmu;
33 };
34 
35 bool nvbios_pmuRm(struct nvkm_bios *, u8 type, struct nvbios_pmuR *);
36 #endif
37