]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/perf.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
[mirror_ubuntu-bionic-kernel.git] / drivers / gpu / drm / nouveau / include / nvkm / subdev / bios / perf.h
CommitLineData
b2441318 1/* SPDX-License-Identifier: GPL-2.0 */
d46497dc
MP
2#ifndef __NVBIOS_PERF_H__
3#define __NVBIOS_PERF_H__
8f6a5ab9 4u32 nvbios_perf_table(struct nvkm_bios *, u8 *ver, u8 *hdr,
0833428e
BS
5 u8 *cnt, u8 *len, u8 *snr, u8 *ssz);
6
7struct nvbios_perfE {
8 u8 pstate;
9 u8 fanspeed;
10 u8 voltage;
11 u32 core;
12 u32 shader;
13 u32 memory;
14 u32 vdec;
15 u32 disp;
16 u32 script;
c6e2f9bc
KH
17 u8 pcie_speed;
18 u8 pcie_width;
0833428e
BS
19};
20
8f6a5ab9 21u32 nvbios_perf_entry(struct nvkm_bios *, int idx,
0833428e 22 u8 *ver, u8 *hdr, u8 *cnt, u8 *len);
8f6a5ab9 23u32 nvbios_perfEp(struct nvkm_bios *, int idx,
0833428e
BS
24 u8 *ver, u8 *hdr, u8 *cnt, u8 *len, struct nvbios_perfE *);
25
26struct nvbios_perfS {
27 union {
28 struct {
29 u32 freq;
30 } v40;
31 };
32};
33
d390b480 34u32 nvbios_perfSe(struct nvkm_bios *, u32 data, int idx,
0833428e 35 u8 *ver, u8 *hdr, u8 cnt, u8 len);
d390b480 36u32 nvbios_perfSp(struct nvkm_bios *, u32 data, int idx,
0833428e
BS
37 u8 *ver, u8 *hdr, u8 cnt, u8 len, struct nvbios_perfS *);
38
d46497dc
MP
39struct nvbios_perf_fan {
40 u32 pwm_divisor;
41};
42
d390b480 43int nvbios_perf_fan_parse(struct nvkm_bios *, struct nvbios_perf_fan *);
d46497dc 44#endif