1#ifndef __NVBIOS_PERF_H__ 2#define __NVBIOS_PERF_H__ 3u16 nvbios_perf_table(struct nvkm_bios *, u8 *ver, u8 *hdr, 4 u8 *cnt, u8 *len, u8 *snr, u8 *ssz); 5 6struct nvbios_perfE { 7 u8 pstate; 8 u8 fanspeed; 9 u8 voltage; 10 u32 core; 11 u32 shader; 12 u32 memory; 13 u32 vdec; 14 u32 disp; 15 u32 script; 16}; 17 18u16 nvbios_perf_entry(struct nvkm_bios *, int idx, 19 u8 *ver, u8 *hdr, u8 *cnt, u8 *len); 20u16 nvbios_perfEp(struct nvkm_bios *, int idx, 21 u8 *ver, u8 *hdr, u8 *cnt, u8 *len, struct nvbios_perfE *); 22 23struct nvbios_perfS { 24 union { 25 struct { 26 u32 freq; 27 } v40; 28 }; 29}; 30 31u32 nvbios_perfSe(struct nvkm_bios *, u32 data, int idx, 32 u8 *ver, u8 *hdr, u8 cnt, u8 len); 33u32 nvbios_perfSp(struct nvkm_bios *, u32 data, int idx, 34 u8 *ver, u8 *hdr, u8 cnt, u8 len, struct nvbios_perfS *); 35 36struct nvbios_perf_fan { 37 u32 pwm_divisor; 38}; 39 40int nvbios_perf_fan_parse(struct nvkm_bios *, struct nvbios_perf_fan *); 41#endif 42