gpu: pvr: pass proc info to sgxkick and sgxtransfer
[sgx.git] / pvr / sgxscript.h
1 /**********************************************************************
2  *
3  * Copyright(c) 2008 Imagination Technologies Ltd. All rights reserved.
4  *
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms and conditions of the GNU General Public License,
7  * version 2, as published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope it will be useful but, except
10  * as otherwise stated in writing, without any warranty; without even the
11  * implied warranty of merchantability or fitness for a particular purpose.
12  * See the GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License along with
15  * this program; if not, write to the Free Software Foundation, Inc.,
16  * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
17  *
18  * The full GNU General Public License is included in this distribution in
19  * the file called "COPYING".
20  *
21  * Contact Information:
22  * Imagination Technologies Ltd. <gpl-support@imgtec.com>
23  * Home Park Estate, Kings Langley, Herts, WD4 8LZ, UK
24  *
25  ******************************************************************************/
26
27 #ifndef __SGXSCRIPT_H__
28 #define __SGXSCRIPT_H__
29
30
31 #define SGX_MAX_INIT_COMMANDS   64
32 #define SGX_MAX_DEINIT_COMMANDS 16
33
34 enum SGX_INIT_OPERATION {
35         SGX_INIT_OP_ILLEGAL = 0,
36         SGX_INIT_OP_WRITE_HW_REG,
37 #if defined(PDUMP)
38         SGX_INIT_OP_PDUMP_HW_REG,
39 #endif
40         SGX_INIT_OP_HALT
41 };
42
43 union SGX_INIT_COMMAND {
44         enum SGX_INIT_OPERATION eOp;
45         struct {
46                 enum SGX_INIT_OPERATION eOp;
47                 u32 ui32Offset;
48                 u32 ui32Value;
49         } sWriteHWReg;
50 #if defined(PDUMP)
51         struct {
52                 enum SGX_INIT_OPERATION eOp;
53                 u32 ui32Offset;
54                 u32 ui32Value;
55         } sPDumpHWReg;
56 #endif
57 };
58
59 struct SGX_INIT_SCRIPTS {
60         union SGX_INIT_COMMAND asInitCommandsPart1[SGX_MAX_INIT_COMMANDS];
61         union SGX_INIT_COMMAND asInitCommandsPart2[SGX_MAX_INIT_COMMANDS];
62         union SGX_INIT_COMMAND asDeinitCommands[SGX_MAX_DEINIT_COMMANDS];
63 };
64
65 #endif