1.3.13.1607/3_00_00_08+flat+Lindent
[sgx.git] / pvr / sgxconfig.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 __SGXCONFIG_H__
28 #define __SGXCONFIG_H__
29
30 #define DEV_DEVICE_TYPE                 PVRSRV_DEVICE_TYPE_SGX
31 #define DEV_DEVICE_CLASS                PVRSRV_DEVICE_CLASS_3D
32
33 #define DEV_MAJOR_VERSION               1
34 #define DEV_MINOR_VERSION               0
35
36 #if SGX_FEATURE_ADDRESS_SPACE_SIZE == 32
37 #define SGX_ADDRESS_SPACE_SIZE                          32
38
39 #define SGX_GENERAL_HEAP_BASE                           0x00400000
40 #define SGX_GENERAL_HEAP_SIZE                           (0x78000000-0x00800000)
41
42 #define SGX_TADATA_HEAP_BASE                            0x78000000
43 #define SGX_TADATA_HEAP_SIZE                            (0x08000000-0x00400000)
44
45 #define SGX_KERNEL_CODE_HEAP_BASE                       0x80000000
46 #define SGX_KERNEL_CODE_HEAP_SIZE                       0x00080000
47
48 #define SGX_VIDEO_CODE_HEAP_BASE                        0x81000000
49 #define SGX_VIDEO_CODE_HEAP_SIZE                        0x00080000
50
51 #define SGX_KERNEL_VIDEO_DATA_HEAP_BASE         0x82000000
52 #define SGX_KERNEL_VIDEO_DATA_HEAP_SIZE         0x05000000
53
54 #define SGX_PIXELSHADER_HEAP_BASE                       0x88000000
55 #define SGX_PIXELSHADER_HEAP_SIZE                       0x00500000
56
57 #define SGX_VERTEXSHADER_HEAP_BASE                      0x89000000
58 #define SGX_VERTEXSHADER_HEAP_SIZE                      0x00200000
59
60 #define SGX_PDSPIXEL_CODEDATA_HEAP_BASE         0x8A000000
61 #define SGX_PDSPIXEL_CODEDATA_HEAP_SIZE         0x02000000
62
63 #define SGX_PDSVERTEX_CODEDATA_HEAP_BASE        0x8C000000
64 #define SGX_PDSVERTEX_CODEDATA_HEAP_SIZE        0x02000000
65
66 #define SGX_SYNCINFO_HEAP_BASE                          0xA0000000
67 #define SGX_SYNCINFO_HEAP_SIZE                          0x01000000
68
69 #define SGX_3DPARAMETERS_HEAP_BASE                      0xC0000000
70 #define SGX_3DPARAMETERS_HEAP_SIZE                      (0x10000000-0x00400000)
71
72 #define SGX_2D_HEAP_BASE                                        0xD0000000
73 #define SGX_2D_HEAP_SIZE                                        (0x08000000-0x00400000)
74
75 #define SGX_GENERAL_MAPPING_HEAP_BASE           0xD8000000
76 #define SGX_GENERAL_MAPPING_HEAP_SIZE           (0x08000000-0x00400000)
77
78 #define SGX_CORE_IDENTIFIED
79 #endif
80
81 #if SGX_FEATURE_ADDRESS_SPACE_SIZE == 28
82 #define SGX_ADDRESS_SPACE_SIZE                          28
83
84 #define SGX_GENERAL_HEAP_BASE                           0x00400000
85 #define SGX_GENERAL_HEAP_SIZE                           (0x07000000-0x00401000)
86
87 #define SGX_TADATA_HEAP_BASE                            0x07000000
88 #define SGX_TADATA_HEAP_SIZE                            (0x01000000-0x00001000)
89
90 #define SGX_3DPARAMETERS_HEAP_BASE                      0x08000000
91 #define SGX_3DPARAMETERS_HEAP_SIZE                      (0x04000000-0x00001000)
92
93 #define SGX_GENERAL_MAPPING_HEAP_BASE           0x0C000000
94 #define SGX_GENERAL_MAPPING_HEAP_SIZE           (0x01000000-0x00001000)
95
96 #define SGX_PIXELSHADER_HEAP_BASE                       0x0D000000
97 #define SGX_PIXELSHADER_HEAP_SIZE                       0x00500000
98
99 #define SGX_VERTEXSHADER_HEAP_BASE                      0x0D800000
100 #define SGX_VERTEXSHADER_HEAP_SIZE                      0x00200000
101
102 #define SGX_PDSPIXEL_CODEDATA_HEAP_BASE         0x0E000000
103 #define SGX_PDSPIXEL_CODEDATA_HEAP_SIZE         (0x00800000-0x00001000)
104
105 #define SGX_PDSVERTEX_CODEDATA_HEAP_BASE        0x0E800000
106 #define SGX_PDSVERTEX_CODEDATA_HEAP_SIZE        (0x00800000-0x00001000)
107
108 #define SGX_KERNEL_CODE_HEAP_BASE                       0x0F000000
109 #define SGX_KERNEL_CODE_HEAP_SIZE                       0x00080000
110
111 #define SGX_VIDEO_CODE_HEAP_BASE                        0x0F400000
112 #define SGX_VIDEO_CODE_HEAP_SIZE                        0x00080000
113
114 #define SGX_KERNEL_VIDEO_DATA_HEAP_BASE         0x0F800000
115 #define SGX_KERNEL_VIDEO_DATA_HEAP_SIZE         (0x00400000-0x00001000)
116
117 #define SGX_SYNCINFO_HEAP_BASE                          0x0FC00000
118 #define SGX_SYNCINFO_HEAP_SIZE                          (0x00400000-0x00001000)
119
120 #define SGX_CORE_IDENTIFIED
121 #endif
122
123 #if !defined(SGX_CORE_IDENTIFIED)
124 #error "sgxconfig.h: ERROR: unspecified SGX Core version"
125 #endif
126
127 #endif