perf.h 921 B

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