Ben Skeggs | 671e969 | 2015-11-08 11:56:00 +1000 | [diff] [blame^] | 1 | #ifndef __NVIF_IF0001_H__ |
| 2 | #define __NVIF_IF0001_H__ |
| 3 | |
| 4 | #define NVIF_CONTROL_PSTATE_INFO 0x00 |
| 5 | #define NVIF_CONTROL_PSTATE_ATTR 0x01 |
| 6 | #define NVIF_CONTROL_PSTATE_USER 0x02 |
| 7 | |
| 8 | struct nvif_control_pstate_info_v0 { |
| 9 | __u8 version; |
| 10 | __u8 count; /* out: number of power states */ |
| 11 | #define NVIF_CONTROL_PSTATE_INFO_V0_USTATE_DISABLE (-1) |
| 12 | #define NVIF_CONTROL_PSTATE_INFO_V0_USTATE_PERFMON (-2) |
| 13 | __s8 ustate_ac; /* out: target pstate index */ |
| 14 | __s8 ustate_dc; /* out: target pstate index */ |
| 15 | __s8 pwrsrc; /* out: current power source */ |
| 16 | #define NVIF_CONTROL_PSTATE_INFO_V0_PSTATE_UNKNOWN (-1) |
| 17 | #define NVIF_CONTROL_PSTATE_INFO_V0_PSTATE_PERFMON (-2) |
| 18 | __s8 pstate; /* out: current pstate index */ |
| 19 | __u8 pad06[2]; |
| 20 | }; |
| 21 | |
| 22 | struct nvif_control_pstate_attr_v0 { |
| 23 | __u8 version; |
| 24 | #define NVIF_CONTROL_PSTATE_ATTR_V0_STATE_CURRENT (-1) |
| 25 | __s8 state; /* in: index of pstate to query |
| 26 | * out: pstate identifier |
| 27 | */ |
| 28 | __u8 index; /* in: index of attribute to query |
| 29 | * out: index of next attribute, or 0 if no more |
| 30 | */ |
| 31 | __u8 pad03[5]; |
| 32 | __u32 min; |
| 33 | __u32 max; |
| 34 | char name[32]; |
| 35 | char unit[16]; |
| 36 | }; |
| 37 | |
| 38 | struct nvif_control_pstate_user_v0 { |
| 39 | __u8 version; |
| 40 | #define NVIF_CONTROL_PSTATE_USER_V0_STATE_UNKNOWN (-1) |
| 41 | #define NVIF_CONTROL_PSTATE_USER_V0_STATE_PERFMON (-2) |
| 42 | __s8 ustate; /* in: pstate identifier */ |
| 43 | __s8 pwrsrc; /* in: target power source */ |
| 44 | __u8 pad03[5]; |
| 45 | }; |
| 46 | #endif |