1 /**********************************************************************
3 * Copyright(c) 2008 Imagination Technologies Ltd. All rights reserved.
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.
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.
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.
18 * The full GNU General Public License is included in this distribution in
19 * the file called "COPYING".
21 * Contact Information:
22 * Imagination Technologies Ltd. <gpl-support@imgtec.com>
23 * Home Park Estate, Kings Langley, Herts, WD4 8LZ, UK
25 ******************************************************************************/
27 #ifndef __SGXCONFIG_H__
28 #define __SGXCONFIG_H__
30 #define DEV_DEVICE_TYPE PVRSRV_DEVICE_TYPE_SGX
31 #define DEV_DEVICE_CLASS PVRSRV_DEVICE_CLASS_3D
33 #define DEV_MAJOR_VERSION 1
34 #define DEV_MINOR_VERSION 0
36 #if SGX_FEATURE_ADDRESS_SPACE_SIZE == 32
37 #define SGX_ADDRESS_SPACE_SIZE 32
39 #define SGX_GENERAL_HEAP_BASE 0x00400000
40 #define SGX_GENERAL_HEAP_SIZE (0x78000000-0x00800000)
42 #define SGX_TADATA_HEAP_BASE 0x78000000
43 #define SGX_TADATA_HEAP_SIZE (0x08000000-0x00400000)
45 #define SGX_KERNEL_CODE_HEAP_BASE 0x80000000
46 #define SGX_KERNEL_CODE_HEAP_SIZE 0x00080000
48 #define SGX_VIDEO_CODE_HEAP_BASE 0x81000000
49 #define SGX_VIDEO_CODE_HEAP_SIZE 0x00080000
51 #define SGX_KERNEL_VIDEO_DATA_HEAP_BASE 0x82000000
52 #define SGX_KERNEL_VIDEO_DATA_HEAP_SIZE 0x05000000
54 #define SGX_PIXELSHADER_HEAP_BASE 0x88000000
55 #define SGX_PIXELSHADER_HEAP_SIZE 0x00500000
57 #define SGX_VERTEXSHADER_HEAP_BASE 0x89000000
58 #define SGX_VERTEXSHADER_HEAP_SIZE 0x00200000
60 #define SGX_PDSPIXEL_CODEDATA_HEAP_BASE 0x8A000000
61 #define SGX_PDSPIXEL_CODEDATA_HEAP_SIZE 0x02000000
63 #define SGX_PDSVERTEX_CODEDATA_HEAP_BASE 0x8C000000
64 #define SGX_PDSVERTEX_CODEDATA_HEAP_SIZE 0x02000000
66 #define SGX_SYNCINFO_HEAP_BASE 0xA0000000
67 #define SGX_SYNCINFO_HEAP_SIZE 0x01000000
69 #define SGX_3DPARAMETERS_HEAP_BASE 0xC0000000
70 #define SGX_3DPARAMETERS_HEAP_SIZE (0x10000000-0x00400000)
72 #define SGX_2D_HEAP_BASE 0xD0000000
73 #define SGX_2D_HEAP_SIZE (0x08000000-0x00400000)
75 #define SGX_GENERAL_MAPPING_HEAP_BASE 0xD8000000
76 #define SGX_GENERAL_MAPPING_HEAP_SIZE (0x08000000-0x00400000)
78 #define SGX_CORE_IDENTIFIED
81 #if SGX_FEATURE_ADDRESS_SPACE_SIZE == 28
82 #define SGX_ADDRESS_SPACE_SIZE 28
84 #define SGX_GENERAL_HEAP_BASE 0x00400000
85 #define SGX_GENERAL_HEAP_SIZE (0x07000000-0x00401000)
87 #define SGX_TADATA_HEAP_BASE 0x07000000
88 #define SGX_TADATA_HEAP_SIZE (0x01000000-0x00001000)
90 #define SGX_3DPARAMETERS_HEAP_BASE 0x08000000
91 #define SGX_3DPARAMETERS_HEAP_SIZE (0x04000000-0x00001000)
93 #define SGX_GENERAL_MAPPING_HEAP_BASE 0x0C000000
94 #define SGX_GENERAL_MAPPING_HEAP_SIZE (0x01000000-0x00001000)
96 #define SGX_PIXELSHADER_HEAP_BASE 0x0D000000
97 #define SGX_PIXELSHADER_HEAP_SIZE 0x00500000
99 #define SGX_VERTEXSHADER_HEAP_BASE 0x0D800000
100 #define SGX_VERTEXSHADER_HEAP_SIZE 0x00200000
102 #define SGX_PDSPIXEL_CODEDATA_HEAP_BASE 0x0E000000
103 #define SGX_PDSPIXEL_CODEDATA_HEAP_SIZE (0x00800000-0x00001000)
105 #define SGX_PDSVERTEX_CODEDATA_HEAP_BASE 0x0E800000
106 #define SGX_PDSVERTEX_CODEDATA_HEAP_SIZE (0x00800000-0x00001000)
108 #define SGX_KERNEL_CODE_HEAP_BASE 0x0F000000
109 #define SGX_KERNEL_CODE_HEAP_SIZE 0x00080000
111 #define SGX_VIDEO_CODE_HEAP_BASE 0x0F400000
112 #define SGX_VIDEO_CODE_HEAP_SIZE 0x00080000
114 #define SGX_KERNEL_VIDEO_DATA_HEAP_BASE 0x0F800000
115 #define SGX_KERNEL_VIDEO_DATA_HEAP_SIZE (0x00400000-0x00001000)
117 #define SGX_SYNCINFO_HEAP_BASE 0x0FC00000
118 #define SGX_SYNCINFO_HEAP_SIZE (0x00400000-0x00001000)
120 #define SGX_CORE_IDENTIFIED
123 #if !defined(SGX_CORE_IDENTIFIED)
124 #error "sgxconfig.h: ERROR: unspecified SGX Core version"