]>
Commit | Line | Data |
---|---|---|
94632f82 KK |
1 | /**************************************************************************** |
2 | * * | |
3 | * Copyright 1999-2005 ATI Technologies Inc., Markham, Ontario, CANADA. * | |
4 | * All Rights Reserved. * | |
5 | * * | |
6 | * Your use and or redistribution of this software in source and \ or * | |
7 | * binary form, with or without modification, is subject to: (i) your * | |
8 | * ongoing acceptance of and compliance with the terms and conditions of * | |
9 | * the ATI Technologies Inc. software End User License Agreement; and (ii) * | |
10 | * your inclusion of this notice in any version of this software that you * | |
11 | * use or redistribute. A copy of the ATI Technologies Inc. software End * | |
12 | * User License Agreement is included with this software and is also * | |
13 | * available by contacting ATI Technologies Inc. at http://www.ati.com * | |
14 | * * | |
15 | ****************************************************************************/ | |
16 | ||
17 | /** \file powerplay.h | |
18 | * \brief Protocol definitions for the ATI POWERplay extension | |
19 | * \author Felix Kuehling | |
20 | */ | |
21 | ||
22 | #ifndef __FGLRX_PP_PROTO_H | |
23 | #define __FGLRX_PP_PROTO_H | |
24 | ||
25 | #ifndef XREP_SZ | |
26 | #define XREP_SZ(name) sizeof(x##name##Reply) | |
27 | #endif | |
28 | #ifndef XREQ_SZ | |
29 | #define XREQ_SZ(name) sizeof(x##name##Req) | |
30 | #endif | |
31 | ||
32 | #define X_FGLQueryPowerPlayInfo 13 | |
33 | #define X_FGLQueryPowerState 14 | |
34 | #define X_FGLSetPowerState 15 | |
35 | ||
36 | /***************************************************************************** | |
37 | * FGLQueryPowerPlayInfo */ | |
38 | typedef struct _FGLQueryPowerPlayInfo { | |
39 | CARD8 reqType; | |
40 | CARD8 fireglReqType; | |
41 | CARD16 length B16; | |
42 | /* specific */ | |
43 | CARD32 screen B32; | |
44 | } xFGLQueryPowerPlayInfoReq; | |
45 | ||
46 | typedef struct { | |
47 | BYTE type; /* X_Reply */ | |
48 | BYTE pad1; | |
49 | CARD16 sequenceNumber B16; | |
50 | CARD32 length B32; | |
51 | /* specific */ | |
52 | CARD16 extVersion B16; | |
53 | CARD16 extRevision B16; | |
54 | CARD16 ppVersion B16; | |
55 | CARD16 numPowerStates B16; | |
56 | CARD32 flags B32; | |
57 | CARD32 pad2 B32; | |
58 | CARD32 pad3 B32; | |
59 | CARD32 pad4 B32; | |
60 | } xFGLQueryPowerPlayInfoReply; | |
61 | ||
62 | #define sz_xFGLQueryPowerPlayInfoReq XREQ_SZ(FGLQueryPowerPlayInfo) | |
63 | #define sz_xFGLQueryPowerPlayInfoReply XREP_SZ(FGLQueryPowerPlayInfo) | |
64 | ||
65 | /***************************************************************************** | |
66 | * FGLQueryPowerState */ | |
67 | typedef struct _FGLQueryPowerState { | |
68 | CARD8 reqType; | |
69 | CARD8 fireglReqType; | |
70 | CARD16 length B16; | |
71 | /* specific */ | |
72 | CARD32 screen B32; | |
73 | CARD16 state B16; | |
74 | CARD16 pad1 B16; | |
75 | } xFGLQueryPowerStateReq; | |
76 | ||
77 | typedef struct { | |
78 | BYTE type; /* X_Reply */ | |
79 | BYTE pad1; | |
80 | CARD16 sequenceNumber B16; | |
81 | CARD32 length B32; | |
82 | /* specific */ | |
83 | CARD32 flags B32; | |
84 | CARD32 validEvents B32; | |
85 | CARD32 memClock B32; | |
86 | CARD32 coreClock B32; | |
87 | CARD32 refreshRate B32; | |
88 | CARD16 upperTempLimit B16; | |
89 | CARD16 lowerTempLimit B16; | |
90 | CARD16 nextUpperTempState B16; | |
91 | CARD16 nextLowerTempState B16; | |
92 | } xFGLQueryPowerStateReply; | |
93 | ||
94 | #define sz_xFGLQueryPowerStateReq XREQ_SZ(FGLQueryPowerState) | |
95 | #define sz_xFGLQueryPowerStateReply XREP_SZ(FGLQueryPowerState) | |
96 | ||
97 | /***************************************************************************** | |
98 | * FGLSetPowerState */ | |
99 | typedef struct _FGLSetPowerState { | |
100 | CARD8 reqType; | |
101 | CARD8 fireglReqType; | |
102 | CARD16 length B16; | |
103 | /* specific */ | |
104 | CARD32 screen B32; | |
105 | CARD16 event B16; | |
106 | CARD16 state B16; | |
107 | } xFGLSetPowerStateReq; | |
108 | ||
109 | typedef struct { | |
110 | BYTE type; /* X_Reply */ | |
111 | BYTE pad1; | |
112 | CARD16 sequenceNumber B16; | |
113 | CARD32 length B32; | |
114 | /* specific */ | |
115 | CARD32 result B32; | |
116 | CARD32 pad2 B32; | |
117 | CARD32 pad3 B32; | |
118 | CARD32 pad4 B32; | |
119 | CARD32 pad5 B32; | |
120 | CARD32 pad6 B32; | |
121 | } xFGLSetPowerStateReply; | |
122 | ||
123 | #define sz_xFGLSetPowerStateReq XREQ_SZ(FGLSetPowerState) | |
124 | #define sz_xFGLSetPowerStateReply XREP_SZ(FGLSetPowerState) | |
125 | ||
126 | #endif /* __FGLRX_PP_PROTO_H */ |