1 /* SPDX-License-Identifier: MIT */
2 #ifndef __NVBIOS_POWER_BUDGET_H__
3 #define __NVBIOS_POWER_BUDGET_H__
4 
5 #include <nvkm/subdev/bios.h>
6 
7 struct nvbios_power_budget_entry {
8 	u32 min_w;
9 	u32 avg_w;
10 	u32 max_w;
11 };
12 
13 struct nvbios_power_budget {
14 	u32 offset;
15 	u8  ver;
16 	u8  hlen;
17 	u8  elen;
18 	u8  ecount;
19 	u8  cap_entry;
20 };
21 
22 int nvbios_power_budget_header(struct nvkm_bios *,
23                                struct nvbios_power_budget *);
24 int nvbios_power_budget_entry(struct nvkm_bios *, struct nvbios_power_budget *,
25                               u8 idx, struct nvbios_power_budget_entry *);
26 
27 #endif
28