1b7019ac5SIlia Mirkin /* SPDX-License-Identifier: MIT */
2c39f472eSBen Skeggs #ifndef __NVBIOS_BOOST_H__
3c39f472eSBen Skeggs #define __NVBIOS_BOOST_H__
458786017SBen Skeggs u32 nvbios_boostTe(struct nvkm_bios *, u8 *, u8 *, u8 *, u8 *, u8 *, u8 *);
5c39f472eSBen Skeggs 
6c39f472eSBen Skeggs struct nvbios_boostE {
7c39f472eSBen Skeggs 	u8  pstate;
8c39f472eSBen Skeggs 	u32 min;
9c39f472eSBen Skeggs 	u32 max;
10c39f472eSBen Skeggs };
11c39f472eSBen Skeggs 
1258786017SBen Skeggs u32 nvbios_boostEe(struct nvkm_bios *, int idx, u8 *, u8 *, u8 *, u8 *);
1358786017SBen Skeggs u32 nvbios_boostEp(struct nvkm_bios *, int idx, u8 *, u8 *, u8 *, u8 *,
14c39f472eSBen Skeggs 		   struct nvbios_boostE *);
1558786017SBen Skeggs u32 nvbios_boostEm(struct nvkm_bios *, u8, u8 *, u8 *, u8 *, u8 *,
16c39f472eSBen Skeggs 		   struct nvbios_boostE *);
17c39f472eSBen Skeggs 
18c39f472eSBen Skeggs struct nvbios_boostS {
19c39f472eSBen Skeggs 	u8  domain;
20c39f472eSBen Skeggs 	u8  percent;
21c39f472eSBen Skeggs 	u32 min;
22c39f472eSBen Skeggs 	u32 max;
23c39f472eSBen Skeggs };
24c39f472eSBen Skeggs 
2558786017SBen Skeggs u32 nvbios_boostSe(struct nvkm_bios *, int, u32, u8 *, u8 *, u8, u8);
2658786017SBen Skeggs u32 nvbios_boostSp(struct nvkm_bios *, int, u32, u8 *, u8 *, u8, u8,
27c39f472eSBen Skeggs 		   struct nvbios_boostS *);
28c39f472eSBen Skeggs #endif
29