aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/pvr/pvr_bridge.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/pvr/pvr_bridge.h')
-rw-r--r--drivers/gpu/pvr/pvr_bridge.h655
1 files changed, 492 insertions, 163 deletions
diff --git a/drivers/gpu/pvr/pvr_bridge.h b/drivers/gpu/pvr/pvr_bridge.h
index 82c3aa66ef2..93f1bb10a8b 100644
--- a/drivers/gpu/pvr/pvr_bridge.h
+++ b/drivers/gpu/pvr/pvr_bridge.h
@@ -68,7 +68,7 @@ extern "C" {
68#define PVRSRV_BRIDGE_GETFREE_DEVICEMEM PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+8) 68#define PVRSRV_BRIDGE_GETFREE_DEVICEMEM PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+8)
69#define PVRSRV_BRIDGE_CREATE_COMMANDQUEUE PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+9) 69#define PVRSRV_BRIDGE_CREATE_COMMANDQUEUE PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+9)
70#define PVRSRV_BRIDGE_DESTROY_COMMANDQUEUE PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+10) 70#define PVRSRV_BRIDGE_DESTROY_COMMANDQUEUE PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+10)
71#define PVRSRV_BRIDGE_MHANDLE_TO_MMAP_DATA PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+11) 71#define PVRSRV_BRIDGE_MHANDLE_TO_MMAP_DATA PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+11)
72#define PVRSRV_BRIDGE_CONNECT_SERVICES PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+12) 72#define PVRSRV_BRIDGE_CONNECT_SERVICES PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+12)
73#define PVRSRV_BRIDGE_DISCONNECT_SERVICES PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+13) 73#define PVRSRV_BRIDGE_DISCONNECT_SERVICES PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+13)
74#define PVRSRV_BRIDGE_WRAP_DEVICE_MEM PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+14) 74#define PVRSRV_BRIDGE_WRAP_DEVICE_MEM PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+14)
@@ -85,7 +85,10 @@ extern "C" {
85#define PVRSRV_BRIDGE_UNMAP_MEM_INFO_FROM_USER PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+25) 85#define PVRSRV_BRIDGE_UNMAP_MEM_INFO_FROM_USER PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+25)
86#define PVRSRV_BRIDGE_EXPORT_DEVICEMEM PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+26) 86#define PVRSRV_BRIDGE_EXPORT_DEVICEMEM PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+26)
87#define PVRSRV_BRIDGE_RELEASE_MMAP_DATA PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+27) 87#define PVRSRV_BRIDGE_RELEASE_MMAP_DATA PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+27)
88#define PVRSRV_BRIDGE_CORE_CMD_LAST (PVRSRV_BRIDGE_CORE_CMD_FIRST+27) 88#define PVRSRV_BRIDGE_CHG_DEV_MEM_ATTRIBS PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+28)
89#define PVRSRV_BRIDGE_MAP_DEV_MEMORY_2 PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+29)
90#define PVRSRV_BRIDGE_EXPORT_DEVICEMEM_2 PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+30)
91#define PVRSRV_BRIDGE_CORE_CMD_LAST (PVRSRV_BRIDGE_CORE_CMD_FIRST+30)
89 92
90#define PVRSRV_BRIDGE_SIM_CMD_FIRST (PVRSRV_BRIDGE_CORE_CMD_LAST+1) 93#define PVRSRV_BRIDGE_SIM_CMD_FIRST (PVRSRV_BRIDGE_CORE_CMD_LAST+1)
91#define PVRSRV_BRIDGE_PROCESS_SIMISR_EVENT PVRSRV_IOWR(PVRSRV_BRIDGE_SIM_CMD_FIRST+0) 94#define PVRSRV_BRIDGE_PROCESS_SIMISR_EVENT PVRSRV_IOWR(PVRSRV_BRIDGE_SIM_CMD_FIRST+0)
@@ -168,7 +171,6 @@ extern "C" {
168#define PVRSRV_BRIDGE_SWAP_DISPCLASS_TO_SYSTEM PVRSRV_IOWR(PVRSRV_BRIDGE_DISPCLASS_CMD_FIRST+14) 171#define PVRSRV_BRIDGE_SWAP_DISPCLASS_TO_SYSTEM PVRSRV_IOWR(PVRSRV_BRIDGE_DISPCLASS_CMD_FIRST+14)
169#define PVRSRV_BRIDGE_DISPCLASS_CMD_LAST (PVRSRV_BRIDGE_DISPCLASS_CMD_FIRST+14) 172#define PVRSRV_BRIDGE_DISPCLASS_CMD_LAST (PVRSRV_BRIDGE_DISPCLASS_CMD_FIRST+14)
170 173
171
172#define PVRSRV_BRIDGE_BUFCLASS_CMD_FIRST (PVRSRV_BRIDGE_DISPCLASS_CMD_LAST+1) 174#define PVRSRV_BRIDGE_BUFCLASS_CMD_FIRST (PVRSRV_BRIDGE_DISPCLASS_CMD_LAST+1)
173#define PVRSRV_BRIDGE_OPEN_BUFFERCLASS_DEVICE PVRSRV_IOWR(PVRSRV_BRIDGE_BUFCLASS_CMD_FIRST+0) 175#define PVRSRV_BRIDGE_OPEN_BUFFERCLASS_DEVICE PVRSRV_IOWR(PVRSRV_BRIDGE_BUFCLASS_CMD_FIRST+0)
174#define PVRSRV_BRIDGE_CLOSE_BUFFERCLASS_DEVICE PVRSRV_IOWR(PVRSRV_BRIDGE_BUFCLASS_CMD_FIRST+1) 176#define PVRSRV_BRIDGE_CLOSE_BUFFERCLASS_DEVICE PVRSRV_IOWR(PVRSRV_BRIDGE_BUFCLASS_CMD_FIRST+1)
@@ -197,7 +199,7 @@ extern "C" {
197#define PVRSRV_BRIDGE_INITSRV_DISCONNECT PVRSRV_IOWR(PVRSRV_BRIDGE_INITSRV_CMD_FIRST+1) 199#define PVRSRV_BRIDGE_INITSRV_DISCONNECT PVRSRV_IOWR(PVRSRV_BRIDGE_INITSRV_CMD_FIRST+1)
198#define PVRSRV_BRIDGE_INITSRV_CMD_LAST (PVRSRV_BRIDGE_INITSRV_CMD_FIRST+1) 200#define PVRSRV_BRIDGE_INITSRV_CMD_LAST (PVRSRV_BRIDGE_INITSRV_CMD_FIRST+1)
199 201
200#define PVRSRV_BRIDGE_EVENT_OBJECT_CMD_FIRST (PVRSRV_BRIDGE_INITSRV_CMD_LAST+1) 202#define PVRSRV_BRIDGE_EVENT_OBJECT_CMD_FIRST (PVRSRV_BRIDGE_INITSRV_CMD_LAST+1)
201#define PVRSRV_BRIDGE_EVENT_OBJECT_WAIT PVRSRV_IOWR(PVRSRV_BRIDGE_EVENT_OBJECT_CMD_FIRST+0) 203#define PVRSRV_BRIDGE_EVENT_OBJECT_WAIT PVRSRV_IOWR(PVRSRV_BRIDGE_EVENT_OBJECT_CMD_FIRST+0)
202#define PVRSRV_BRIDGE_EVENT_OBJECT_OPEN PVRSRV_IOWR(PVRSRV_BRIDGE_EVENT_OBJECT_CMD_FIRST+1) 204#define PVRSRV_BRIDGE_EVENT_OBJECT_OPEN PVRSRV_IOWR(PVRSRV_BRIDGE_EVENT_OBJECT_CMD_FIRST+1)
203#define PVRSRV_BRIDGE_EVENT_OBJECT_CLOSE PVRSRV_IOWR(PVRSRV_BRIDGE_EVENT_OBJECT_CMD_FIRST+2) 205#define PVRSRV_BRIDGE_EVENT_OBJECT_CLOSE PVRSRV_IOWR(PVRSRV_BRIDGE_EVENT_OBJECT_CMD_FIRST+2)
@@ -208,12 +210,14 @@ extern "C" {
208#define PVRSRV_BRIDGE_DESTROY_SYNC_INFO_MOD_OBJ PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+1) 210#define PVRSRV_BRIDGE_DESTROY_SYNC_INFO_MOD_OBJ PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+1)
209#define PVRSRV_BRIDGE_MODIFY_PENDING_SYNC_OPS PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+2) 211#define PVRSRV_BRIDGE_MODIFY_PENDING_SYNC_OPS PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+2)
210#define PVRSRV_BRIDGE_MODIFY_COMPLETE_SYNC_OPS PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+3) 212#define PVRSRV_BRIDGE_MODIFY_COMPLETE_SYNC_OPS PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+3)
211#define PVRSRV_BRIDGE_SYNC_OPS_FLUSH_TO_MOD_OBJ PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+4) 213#define PVRSRV_BRIDGE_SYNC_OPS_TAKE_TOKEN PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+4)
212#define PVRSRV_BRIDGE_SYNC_OPS_FLUSH_TO_DELTA PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+5) 214#define PVRSRV_BRIDGE_SYNC_OPS_FLUSH_TO_TOKEN PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+5)
213#define PVRSRV_BRIDGE_ALLOC_SYNC_INFO PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+6) 215#define PVRSRV_BRIDGE_SYNC_OPS_FLUSH_TO_MOD_OBJ PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+6)
214#define PVRSRV_BRIDGE_FREE_SYNC_INFO PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+7) 216#define PVRSRV_BRIDGE_SYNC_OPS_FLUSH_TO_DELTA PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+7)
215#define PVRSRV_BRIDGE_SYNC_OPS_CMD_LAST (PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+7) 217#define PVRSRV_BRIDGE_ALLOC_SYNC_INFO PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+8)
216 218#define PVRSRV_BRIDGE_FREE_SYNC_INFO PVRSRV_IOWR(PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+9)
219#define PVRSRV_BRIDGE_SYNC_OPS_CMD_LAST (PVRSRV_BRIDGE_SYNC_OPS_CMD_FIRST+9)
220
217#define PVRSRV_BRIDGE_LAST_NON_DEVICE_CMD (PVRSRV_BRIDGE_SYNC_OPS_CMD_LAST+1) 221#define PVRSRV_BRIDGE_LAST_NON_DEVICE_CMD (PVRSRV_BRIDGE_SYNC_OPS_CMD_LAST+1)
218 222
219 223
@@ -231,22 +235,22 @@ typedef struct PVRSRV_BRIDGE_PACKAGE_TAG
231{ 235{
232 IMG_UINT32 ui32BridgeID; 236 IMG_UINT32 ui32BridgeID;
233 IMG_UINT32 ui32Size; 237 IMG_UINT32 ui32Size;
234 IMG_VOID *pvParamIn; 238 IMG_VOID *pvParamIn;
235 IMG_UINT32 ui32InBufferSize; 239 IMG_UINT32 ui32InBufferSize;
236 IMG_VOID *pvParamOut; 240 IMG_VOID *pvParamOut;
237 IMG_UINT32 ui32OutBufferSize; 241 IMG_UINT32 ui32OutBufferSize;
238 242
243#if defined (SUPPORT_SID_INTERFACE)
244 IMG_SID hKernelServices;
245#else
239 IMG_HANDLE hKernelServices; 246 IMG_HANDLE hKernelServices;
247#endif
240}PVRSRV_BRIDGE_PACKAGE; 248}PVRSRV_BRIDGE_PACKAGE;
241 249
242 250
243
244
245
246
247typedef struct PVRSRV_BRIDGE_IN_CONNECT_SERVICES_TAG 251typedef struct PVRSRV_BRIDGE_IN_CONNECT_SERVICES_TAG
248{ 252{
249 IMG_UINT32 ui32BridgeFlags; 253 IMG_UINT32 ui32BridgeFlags;
250 IMG_UINT32 ui32Flags; 254 IMG_UINT32 ui32Flags;
251} PVRSRV_BRIDGE_IN_CONNECT_SERVICES; 255} PVRSRV_BRIDGE_IN_CONNECT_SERVICES;
252 256
@@ -268,56 +272,82 @@ typedef struct PVRSRV_BRIDGE_IN_ENUMCLASS_TAG
268 272
269typedef struct PVRSRV_BRIDGE_IN_CLOSE_DISPCLASS_DEVICE_TAG 273typedef struct PVRSRV_BRIDGE_IN_CLOSE_DISPCLASS_DEVICE_TAG
270{ 274{
271 IMG_UINT32 ui32BridgeFlags; 275 IMG_UINT32 ui32BridgeFlags;
276#if defined (SUPPORT_SID_INTERFACE)
277 IMG_SID hDeviceKM;
278#else
272 IMG_HANDLE hDeviceKM; 279 IMG_HANDLE hDeviceKM;
280#endif
273} PVRSRV_BRIDGE_IN_CLOSE_DISPCLASS_DEVICE; 281} PVRSRV_BRIDGE_IN_CLOSE_DISPCLASS_DEVICE;
274 282
275 283
276typedef struct PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_FORMATS_TAG 284typedef struct PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_FORMATS_TAG
277{ 285{
278 IMG_UINT32 ui32BridgeFlags; 286 IMG_UINT32 ui32BridgeFlags;
287#if defined (SUPPORT_SID_INTERFACE)
288 IMG_SID hDeviceKM;
289#else
279 IMG_HANDLE hDeviceKM; 290 IMG_HANDLE hDeviceKM;
291#endif
280} PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_FORMATS; 292} PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_FORMATS;
281 293
282 294
283typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_SYSBUFFER_TAG 295typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_SYSBUFFER_TAG
284{ 296{
285 IMG_UINT32 ui32BridgeFlags; 297 IMG_UINT32 ui32BridgeFlags;
298#if defined (SUPPORT_SID_INTERFACE)
299 IMG_SID hDeviceKM;
300#else
286 IMG_HANDLE hDeviceKM; 301 IMG_HANDLE hDeviceKM;
302#endif
287} PVRSRV_BRIDGE_IN_GET_DISPCLASS_SYSBUFFER; 303} PVRSRV_BRIDGE_IN_GET_DISPCLASS_SYSBUFFER;
288 304
289 305
290typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_INFO_TAG 306typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_INFO_TAG
291{ 307{
292 IMG_UINT32 ui32BridgeFlags; 308 IMG_UINT32 ui32BridgeFlags;
309#if defined (SUPPORT_SID_INTERFACE)
310 IMG_SID hDeviceKM;
311#else
293 IMG_HANDLE hDeviceKM; 312 IMG_HANDLE hDeviceKM;
313#endif
294} PVRSRV_BRIDGE_IN_GET_DISPCLASS_INFO; 314} PVRSRV_BRIDGE_IN_GET_DISPCLASS_INFO;
295 315
296 316
297typedef struct PVRSRV_BRIDGE_IN_CLOSE_BUFFERCLASS_DEVICE_TAG 317typedef struct PVRSRV_BRIDGE_IN_CLOSE_BUFFERCLASS_DEVICE_TAG
298{ 318{
299 IMG_UINT32 ui32BridgeFlags; 319 IMG_UINT32 ui32BridgeFlags;
320#if defined (SUPPORT_SID_INTERFACE)
321 IMG_SID hDeviceKM;
322#else
300 IMG_HANDLE hDeviceKM; 323 IMG_HANDLE hDeviceKM;
324#endif
301} PVRSRV_BRIDGE_IN_CLOSE_BUFFERCLASS_DEVICE; 325} PVRSRV_BRIDGE_IN_CLOSE_BUFFERCLASS_DEVICE;
302 326
303 327
304typedef struct PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_INFO_TAG 328typedef struct PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_INFO_TAG
305{ 329{
306 IMG_UINT32 ui32BridgeFlags; 330 IMG_UINT32 ui32BridgeFlags;
331#if defined (SUPPORT_SID_INTERFACE)
332 IMG_SID hDeviceKM;
333#else
307 IMG_HANDLE hDeviceKM; 334 IMG_HANDLE hDeviceKM;
335#endif
308} PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_INFO; 336} PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_INFO;
309 337
310 338
311
312typedef struct PVRSRV_BRIDGE_IN_RELEASE_DEVICEINFO_TAG 339typedef struct PVRSRV_BRIDGE_IN_RELEASE_DEVICEINFO_TAG
313{ 340{
314 IMG_UINT32 ui32BridgeFlags; 341 IMG_UINT32 ui32BridgeFlags;
342#if defined (SUPPORT_SID_INTERFACE)
343 IMG_SID hDevCookie;
344#else
315 IMG_HANDLE hDevCookie; 345 IMG_HANDLE hDevCookie;
346#endif
316 347
317} PVRSRV_BRIDGE_IN_RELEASE_DEVICEINFO; 348} PVRSRV_BRIDGE_IN_RELEASE_DEVICEINFO;
318 349
319 350
320
321typedef struct PVRSRV_BRIDGE_IN_FREE_CLASSDEVICEINFO_TAG 351typedef struct PVRSRV_BRIDGE_IN_FREE_CLASSDEVICEINFO_TAG
322{ 352{
323 IMG_UINT32 ui32BridgeFlags; 353 IMG_UINT32 ui32BridgeFlags;
@@ -327,85 +357,117 @@ typedef struct PVRSRV_BRIDGE_IN_FREE_CLASSDEVICEINFO_TAG
327}PVRSRV_BRIDGE_IN_FREE_CLASSDEVICEINFO; 357}PVRSRV_BRIDGE_IN_FREE_CLASSDEVICEINFO;
328 358
329 359
330
331typedef struct PVRSRV_BRIDGE_IN_GET_DEVMEM_HEAPINFO_TAG 360typedef struct PVRSRV_BRIDGE_IN_GET_DEVMEM_HEAPINFO_TAG
332{ 361{
333 IMG_UINT32 ui32BridgeFlags; 362 IMG_UINT32 ui32BridgeFlags;
363#if defined (SUPPORT_SID_INTERFACE)
364 IMG_SID hDevCookie;
365 IMG_SID hDevMemContext;
366#else
334 IMG_HANDLE hDevCookie; 367 IMG_HANDLE hDevCookie;
335 IMG_HANDLE hDevMemContext; 368 IMG_HANDLE hDevMemContext;
369#endif
336 370
337}PVRSRV_BRIDGE_IN_GET_DEVMEM_HEAPINFO; 371}PVRSRV_BRIDGE_IN_GET_DEVMEM_HEAPINFO;
338 372
339 373
340
341typedef struct PVRSRV_BRIDGE_IN_CREATE_DEVMEMCONTEXT_TAG 374typedef struct PVRSRV_BRIDGE_IN_CREATE_DEVMEMCONTEXT_TAG
342{ 375{
343 IMG_UINT32 ui32BridgeFlags; 376 IMG_UINT32 ui32BridgeFlags;
377#if defined (SUPPORT_SID_INTERFACE)
378 IMG_SID hDevCookie;
379#else
344 IMG_HANDLE hDevCookie; 380 IMG_HANDLE hDevCookie;
381#endif
345 382
346}PVRSRV_BRIDGE_IN_CREATE_DEVMEMCONTEXT; 383}PVRSRV_BRIDGE_IN_CREATE_DEVMEMCONTEXT;
347 384
348 385
349
350typedef struct PVRSRV_BRIDGE_IN_DESTROY_DEVMEMCONTEXT_TAG 386typedef struct PVRSRV_BRIDGE_IN_DESTROY_DEVMEMCONTEXT_TAG
351{ 387{
352 IMG_UINT32 ui32BridgeFlags; 388 IMG_UINT32 ui32BridgeFlags;
389#if defined (SUPPORT_SID_INTERFACE)
390 IMG_SID hDevCookie;
391 IMG_SID hDevMemContext;
392#else
353 IMG_HANDLE hDevCookie; 393 IMG_HANDLE hDevCookie;
354 IMG_HANDLE hDevMemContext; 394 IMG_HANDLE hDevMemContext;
395#endif
355 396
356}PVRSRV_BRIDGE_IN_DESTROY_DEVMEMCONTEXT; 397}PVRSRV_BRIDGE_IN_DESTROY_DEVMEMCONTEXT;
357 398
358 399
359
360typedef struct PVRSRV_BRIDGE_IN_ALLOCDEVICEMEM_TAG 400typedef struct PVRSRV_BRIDGE_IN_ALLOCDEVICEMEM_TAG
361{ 401{
362 IMG_UINT32 ui32BridgeFlags; 402 IMG_UINT32 ui32BridgeFlags;
403#if defined (SUPPORT_SID_INTERFACE)
404 IMG_SID hDevCookie;
405 IMG_SID hDevMemHeap;
406#else
363 IMG_HANDLE hDevCookie; 407 IMG_HANDLE hDevCookie;
364 IMG_HANDLE hDevMemHeap; 408 IMG_HANDLE hDevMemHeap;
409#endif
365 IMG_UINT32 ui32Attribs; 410 IMG_UINT32 ui32Attribs;
366 IMG_SIZE_T ui32Size; 411 IMG_SIZE_T ui32Size;
367 IMG_SIZE_T ui32Alignment; 412 IMG_SIZE_T ui32Alignment;
368 413
369}PVRSRV_BRIDGE_IN_ALLOCDEVICEMEM; 414}PVRSRV_BRIDGE_IN_ALLOCDEVICEMEM;
370 415
371
372typedef struct PVRSRV_BRIDGE_IN_MAPMEMINFOTOUSER_TAG 416typedef struct PVRSRV_BRIDGE_IN_MAPMEMINFOTOUSER_TAG
373{ 417{
374 IMG_UINT32 ui32BridgeFlags; 418 IMG_UINT32 ui32BridgeFlags;
419#if defined (SUPPORT_SID_INTERFACE)
420 IMG_SID hKernelMemInfo;
421#else
375 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 422 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
423#endif
376 424
377}PVRSRV_BRIDGE_IN_MAPMEMINFOTOUSER; 425}PVRSRV_BRIDGE_IN_MAPMEMINFOTOUSER;
378 426
379
380typedef struct PVRSRV_BRIDGE_IN_UNMAPMEMINFOFROMUSER_TAG 427typedef struct PVRSRV_BRIDGE_IN_UNMAPMEMINFOFROMUSER_TAG
381{ 428{
382 IMG_UINT32 ui32BridgeFlags; 429 IMG_UINT32 ui32BridgeFlags;
430#if defined (SUPPORT_SID_INTERFACE)
431 IMG_SID hKernelMemInfo;
432#else
383 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 433 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
434#endif
384 IMG_PVOID pvLinAddr; 435 IMG_PVOID pvLinAddr;
436#if defined (SUPPORT_SID_INTERFACE)
437 IMG_SID hMappingInfo;
438#else
385 IMG_HANDLE hMappingInfo; 439 IMG_HANDLE hMappingInfo;
440#endif
386 441
387}PVRSRV_BRIDGE_IN_UNMAPMEMINFOFROMUSER; 442}PVRSRV_BRIDGE_IN_UNMAPMEMINFOFROMUSER;
388 443
389
390typedef struct PVRSRV_BRIDGE_IN_FREEDEVICEMEM_TAG 444typedef struct PVRSRV_BRIDGE_IN_FREEDEVICEMEM_TAG
391{ 445{
392 IMG_UINT32 ui32BridgeFlags; 446 IMG_UINT32 ui32BridgeFlags;
447#if defined (SUPPORT_SID_INTERFACE)
448 IMG_SID hDevCookie;
449 IMG_SID hKernelMemInfo;
450#else
393 IMG_HANDLE hDevCookie; 451 IMG_HANDLE hDevCookie;
394 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 452 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
395 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 453#endif
454 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
396 455
397}PVRSRV_BRIDGE_IN_FREEDEVICEMEM; 456}PVRSRV_BRIDGE_IN_FREEDEVICEMEM;
398 457
399
400typedef struct PVRSRV_BRIDGE_IN_EXPORTDEVICEMEM_TAG 458typedef struct PVRSRV_BRIDGE_IN_EXPORTDEVICEMEM_TAG
401{ 459{
402 IMG_UINT32 ui32BridgeFlags; 460 IMG_UINT32 ui32BridgeFlags;
461#if defined (SUPPORT_SID_INTERFACE)
462 IMG_SID hDevCookie;
463 IMG_SID hKernelMemInfo;
464#else
403 IMG_HANDLE hDevCookie; 465 IMG_HANDLE hDevCookie;
404 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 466 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
467#endif
405 468
406}PVRSRV_BRIDGE_IN_EXPORTDEVICEMEM; 469}PVRSRV_BRIDGE_IN_EXPORTDEVICEMEM;
407 470
408
409typedef struct PVRSRV_BRIDGE_IN_GETFREEDEVICEMEM_TAG 471typedef struct PVRSRV_BRIDGE_IN_GETFREEDEVICEMEM_TAG
410{ 472{
411 IMG_UINT32 ui32BridgeFlags; 473 IMG_UINT32 ui32BridgeFlags;
@@ -413,126 +475,163 @@ typedef struct PVRSRV_BRIDGE_IN_GETFREEDEVICEMEM_TAG
413 475
414} PVRSRV_BRIDGE_IN_GETFREEDEVICEMEM; 476} PVRSRV_BRIDGE_IN_GETFREEDEVICEMEM;
415 477
416
417typedef struct PVRSRV_BRIDGE_IN_CREATECOMMANDQUEUE_TAG 478typedef struct PVRSRV_BRIDGE_IN_CREATECOMMANDQUEUE_TAG
418{ 479{
419 IMG_UINT32 ui32BridgeFlags; 480 IMG_UINT32 ui32BridgeFlags;
481#if defined (SUPPORT_SID_INTERFACE)
482 IMG_SID hDevCookie;
483#else
420 IMG_HANDLE hDevCookie; 484 IMG_HANDLE hDevCookie;
485#endif
421 IMG_SIZE_T ui32QueueSize; 486 IMG_SIZE_T ui32QueueSize;
422 487
423}PVRSRV_BRIDGE_IN_CREATECOMMANDQUEUE; 488}PVRSRV_BRIDGE_IN_CREATECOMMANDQUEUE;
424 489
425 490
426
427typedef struct PVRSRV_BRIDGE_IN_DESTROYCOMMANDQUEUE_TAG 491typedef struct PVRSRV_BRIDGE_IN_DESTROYCOMMANDQUEUE_TAG
428{ 492{
429 IMG_UINT32 ui32BridgeFlags; 493 IMG_UINT32 ui32BridgeFlags;
494#if defined (SUPPORT_SID_INTERFACE)
495 IMG_SID hDevCookie;
496#else
430 IMG_HANDLE hDevCookie; 497 IMG_HANDLE hDevCookie;
498#endif
431 PVRSRV_QUEUE_INFO *psQueueInfo; 499 PVRSRV_QUEUE_INFO *psQueueInfo;
432 500
433}PVRSRV_BRIDGE_IN_DESTROYCOMMANDQUEUE; 501}PVRSRV_BRIDGE_IN_DESTROYCOMMANDQUEUE;
434 502
435 503
436
437typedef struct PVRSRV_BRIDGE_IN_MHANDLE_TO_MMAP_DATA_TAG 504typedef struct PVRSRV_BRIDGE_IN_MHANDLE_TO_MMAP_DATA_TAG
438{ 505{
439 IMG_UINT32 ui32BridgeFlags; 506 IMG_UINT32 ui32BridgeFlags;
507#if defined (SUPPORT_SID_INTERFACE)
508 IMG_SID hMHandle;
509#else
440 IMG_HANDLE hMHandle; 510 IMG_HANDLE hMHandle;
511#endif
441} PVRSRV_BRIDGE_IN_MHANDLE_TO_MMAP_DATA; 512} PVRSRV_BRIDGE_IN_MHANDLE_TO_MMAP_DATA;
442 513
443 514
444
445typedef struct PVRSRV_BRIDGE_IN_RELEASE_MMAP_DATA_TAG 515typedef struct PVRSRV_BRIDGE_IN_RELEASE_MMAP_DATA_TAG
446{ 516{
447 IMG_UINT32 ui32BridgeFlags; 517 IMG_UINT32 ui32BridgeFlags;
518#if defined (SUPPORT_SID_INTERFACE)
519 IMG_SID hMHandle;
520#else
448 IMG_HANDLE hMHandle; 521 IMG_HANDLE hMHandle;
522#endif
449} PVRSRV_BRIDGE_IN_RELEASE_MMAP_DATA; 523} PVRSRV_BRIDGE_IN_RELEASE_MMAP_DATA;
450 524
451 525
452
453typedef struct PVRSRV_BRIDGE_IN_RESERVE_DEV_VIRTMEM_TAG 526typedef struct PVRSRV_BRIDGE_IN_RESERVE_DEV_VIRTMEM_TAG
454{ 527{
455 IMG_UINT32 ui32BridgeFlags; 528 IMG_UINT32 ui32BridgeFlags;
529#if defined (SUPPORT_SID_INTERFACE)
530 IMG_SID hDevMemHeap;
531#else
456 IMG_HANDLE hDevMemHeap; 532 IMG_HANDLE hDevMemHeap;
533#endif
457 IMG_DEV_VIRTADDR *psDevVAddr; 534 IMG_DEV_VIRTADDR *psDevVAddr;
458 IMG_SIZE_T ui32Size; 535 IMG_SIZE_T ui32Size;
459 IMG_SIZE_T ui32Alignment; 536 IMG_SIZE_T ui32Alignment;
460 537
461}PVRSRV_BRIDGE_IN_RESERVE_DEV_VIRTMEM; 538}PVRSRV_BRIDGE_IN_RESERVE_DEV_VIRTMEM;
462 539
463
464typedef struct PVRSRV_BRIDGE_OUT_CONNECT_SERVICES_TAG 540typedef struct PVRSRV_BRIDGE_OUT_CONNECT_SERVICES_TAG
465{ 541{
466 PVRSRV_ERROR eError; 542 PVRSRV_ERROR eError;
543#if defined (SUPPORT_SID_INTERFACE)
544 IMG_SID hKernelServices;
545#else
467 IMG_HANDLE hKernelServices; 546 IMG_HANDLE hKernelServices;
547#endif
468}PVRSRV_BRIDGE_OUT_CONNECT_SERVICES; 548}PVRSRV_BRIDGE_OUT_CONNECT_SERVICES;
469 549
470
471typedef struct PVRSRV_BRIDGE_OUT_RESERVE_DEV_VIRTMEM_TAG 550typedef struct PVRSRV_BRIDGE_OUT_RESERVE_DEV_VIRTMEM_TAG
472{ 551{
473 PVRSRV_ERROR eError; 552 PVRSRV_ERROR eError;
553#if defined (SUPPORT_SID_INTERFACE)
554 IMG_SID hKernelMemInfo;
555 IMG_SID hKernelSyncInfo;
556#else
474 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 557 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
475 PVRSRV_KERNEL_SYNC_INFO *psKernelSyncInfo; 558 PVRSRV_KERNEL_SYNC_INFO *psKernelSyncInfo;
476 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 559#endif
477 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; 560 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
561 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo;
478 562
479}PVRSRV_BRIDGE_OUT_RESERVE_DEV_VIRTMEM; 563}PVRSRV_BRIDGE_OUT_RESERVE_DEV_VIRTMEM;
480 564
481 565
482
483typedef struct PVRSRV_BRIDGE_IN_FREE_DEV_VIRTMEM_TAG 566typedef struct PVRSRV_BRIDGE_IN_FREE_DEV_VIRTMEM_TAG
484{ 567{
485 IMG_UINT32 ui32BridgeFlags; 568 IMG_UINT32 ui32BridgeFlags;
569#if defined (SUPPORT_SID_INTERFACE)
570 IMG_SID hKernelMemInfo;
571#else
486 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 572 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
487 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 573#endif
488 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; 574 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
575 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo;
489 576
490}PVRSRV_BRIDGE_IN_FREE_DEV_VIRTMEM; 577}PVRSRV_BRIDGE_IN_FREE_DEV_VIRTMEM;
491 578
492 579
493
494typedef struct PVRSRV_BRIDGE_IN_MAP_DEV_MEMORY_TAG 580typedef struct PVRSRV_BRIDGE_IN_MAP_DEV_MEMORY_TAG
495{ 581{
496 IMG_UINT32 ui32BridgeFlags; 582 IMG_UINT32 ui32BridgeFlags;
583#if defined (SUPPORT_SID_INTERFACE)
584 IMG_SID hKernelMemInfo;
585 IMG_SID hDstDevMemHeap;
586#else
497 IMG_HANDLE hKernelMemInfo; 587 IMG_HANDLE hKernelMemInfo;
498 IMG_HANDLE hDstDevMemHeap; 588 IMG_HANDLE hDstDevMemHeap;
589#endif
499 590
500}PVRSRV_BRIDGE_IN_MAP_DEV_MEMORY; 591}PVRSRV_BRIDGE_IN_MAP_DEV_MEMORY;
501 592
502 593
503
504typedef struct PVRSRV_BRIDGE_OUT_MAP_DEV_MEMORY_TAG 594typedef struct PVRSRV_BRIDGE_OUT_MAP_DEV_MEMORY_TAG
505{ 595{
506 PVRSRV_ERROR eError; 596 PVRSRV_ERROR eError;
597#if defined (SUPPORT_SID_INTERFACE)
598 IMG_SID hDstKernelMemInfo;
599#else
507 PVRSRV_KERNEL_MEM_INFO *psDstKernelMemInfo; 600 PVRSRV_KERNEL_MEM_INFO *psDstKernelMemInfo;
508 PVRSRV_CLIENT_MEM_INFO sDstClientMemInfo; 601#endif
509 PVRSRV_CLIENT_SYNC_INFO sDstClientSyncInfo; 602 PVRSRV_CLIENT_MEM_INFO sDstClientMemInfo;
603 PVRSRV_CLIENT_SYNC_INFO sDstClientSyncInfo;
510 604
511}PVRSRV_BRIDGE_OUT_MAP_DEV_MEMORY; 605}PVRSRV_BRIDGE_OUT_MAP_DEV_MEMORY;
512 606
513 607
514
515typedef struct PVRSRV_BRIDGE_IN_UNMAP_DEV_MEMORY_TAG 608typedef struct PVRSRV_BRIDGE_IN_UNMAP_DEV_MEMORY_TAG
516{ 609{
517 IMG_UINT32 ui32BridgeFlags; 610 IMG_UINT32 ui32BridgeFlags;
611#if defined (SUPPORT_SID_INTERFACE)
612 IMG_SID hKernelMemInfo;
613#else
518 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 614 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
519 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 615#endif
520 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; 616 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
617 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo;
521 618
522}PVRSRV_BRIDGE_IN_UNMAP_DEV_MEMORY; 619}PVRSRV_BRIDGE_IN_UNMAP_DEV_MEMORY;
523 620
524 621
525
526typedef struct PVRSRV_BRIDGE_IN_MAP_EXT_MEMORY_TAG 622typedef struct PVRSRV_BRIDGE_IN_MAP_EXT_MEMORY_TAG
527{ 623{
528 IMG_UINT32 ui32BridgeFlags; 624 IMG_UINT32 ui32BridgeFlags;
625#if defined (SUPPORT_SID_INTERFACE)
626 IMG_SID hKernelMemInfo;
627#else
529 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 628 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
530 IMG_SYS_PHYADDR *psSysPAddr; 629#endif
531 IMG_UINT32 ui32Flags; 630 IMG_SYS_PHYADDR *psSysPAddr;
631 IMG_UINT32 ui32Flags;
532 632
533}PVRSRV_BRIDGE_IN_MAP_EXT_MEMORY; 633}PVRSRV_BRIDGE_IN_MAP_EXT_MEMORY;
534 634
535
536typedef struct PVRSRV_BRIDGE_IN_UNMAP_EXT_MEMORY_TAG 635typedef struct PVRSRV_BRIDGE_IN_UNMAP_EXT_MEMORY_TAG
537{ 636{
538 IMG_UINT32 ui32BridgeFlags; 637 IMG_UINT32 ui32BridgeFlags;
@@ -542,44 +641,58 @@ typedef struct PVRSRV_BRIDGE_IN_UNMAP_EXT_MEMORY_TAG
542 641
543}PVRSRV_BRIDGE_IN_UNMAP_EXT_MEMORY; 642}PVRSRV_BRIDGE_IN_UNMAP_EXT_MEMORY;
544 643
545
546typedef struct PVRSRV_BRIDGE_IN_MAP_DEVICECLASS_MEMORY_TAG 644typedef struct PVRSRV_BRIDGE_IN_MAP_DEVICECLASS_MEMORY_TAG
547{ 645{
548 IMG_UINT32 ui32BridgeFlags; 646 IMG_UINT32 ui32BridgeFlags;
647#if defined (SUPPORT_SID_INTERFACE)
648 IMG_SID hDeviceClassBuffer;
649 IMG_SID hDevMemContext;
650#else
549 IMG_HANDLE hDeviceClassBuffer; 651 IMG_HANDLE hDeviceClassBuffer;
550 IMG_HANDLE hDevMemContext; 652 IMG_HANDLE hDevMemContext;
653#endif
551 654
552}PVRSRV_BRIDGE_IN_MAP_DEVICECLASS_MEMORY; 655}PVRSRV_BRIDGE_IN_MAP_DEVICECLASS_MEMORY;
553 656
554 657
555
556typedef struct PVRSRV_BRIDGE_OUT_MAP_DEVICECLASS_MEMORY_TAG 658typedef struct PVRSRV_BRIDGE_OUT_MAP_DEVICECLASS_MEMORY_TAG
557{ 659{
558 PVRSRV_ERROR eError; 660 PVRSRV_ERROR eError;
559 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 661 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
560 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; 662 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo;
663#if defined (SUPPORT_SID_INTERFACE)
664 IMG_SID hKernelMemInfo;
665 IMG_SID hMappingInfo;
666#else
561 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 667 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
562 IMG_HANDLE hMappingInfo; 668 IMG_HANDLE hMappingInfo;
669#endif
563 670
564}PVRSRV_BRIDGE_OUT_MAP_DEVICECLASS_MEMORY; 671}PVRSRV_BRIDGE_OUT_MAP_DEVICECLASS_MEMORY;
565 672
566 673
567
568typedef struct PVRSRV_BRIDGE_IN_UNMAP_DEVICECLASS_MEMORY_TAG 674typedef struct PVRSRV_BRIDGE_IN_UNMAP_DEVICECLASS_MEMORY_TAG
569{ 675{
570 IMG_UINT32 ui32BridgeFlags; 676 IMG_UINT32 ui32BridgeFlags;
677#if defined (SUPPORT_SID_INTERFACE)
678 IMG_SID hKernelMemInfo;
679#else
571 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 680 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
572 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 681#endif
573 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; 682 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
683 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo;
574 684
575}PVRSRV_BRIDGE_IN_UNMAP_DEVICECLASS_MEMORY; 685}PVRSRV_BRIDGE_IN_UNMAP_DEVICECLASS_MEMORY;
576 686
577 687
578
579typedef struct PVRSRV_BRIDGE_IN_PDUMP_MEMPOL_TAG 688typedef struct PVRSRV_BRIDGE_IN_PDUMP_MEMPOL_TAG
580{ 689{
581 IMG_UINT32 ui32BridgeFlags; 690 IMG_UINT32 ui32BridgeFlags;
691#if defined (SUPPORT_SID_INTERFACE)
692 IMG_SID hKernelMemInfo;
693#else
582 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 694 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
695#endif
583 IMG_UINT32 ui32Offset; 696 IMG_UINT32 ui32Offset;
584 IMG_UINT32 ui32Value; 697 IMG_UINT32 ui32Value;
585 IMG_UINT32 ui32Mask; 698 IMG_UINT32 ui32Mask;
@@ -588,25 +701,32 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_MEMPOL_TAG
588 701
589}PVRSRV_BRIDGE_IN_PDUMP_MEMPOL; 702}PVRSRV_BRIDGE_IN_PDUMP_MEMPOL;
590 703
591
592typedef struct PVRSRV_BRIDGE_IN_PDUMP_SYNCPOL_TAG 704typedef struct PVRSRV_BRIDGE_IN_PDUMP_SYNCPOL_TAG
593{ 705{
594 IMG_UINT32 ui32BridgeFlags; 706 IMG_UINT32 ui32BridgeFlags;
707#if defined (SUPPORT_SID_INTERFACE)
708 IMG_SID hKernelSyncInfo;
709#else
595 PVRSRV_KERNEL_SYNC_INFO *psKernelSyncInfo; 710 PVRSRV_KERNEL_SYNC_INFO *psKernelSyncInfo;
596 IMG_BOOL bIsRead; 711#endif
712 IMG_BOOL bIsRead;
713 IMG_BOOL bUseLastOpDumpVal;
597 IMG_UINT32 ui32Value; 714 IMG_UINT32 ui32Value;
598 IMG_UINT32 ui32Mask; 715 IMG_UINT32 ui32Mask;
599 716
600}PVRSRV_BRIDGE_IN_PDUMP_SYNCPOL; 717}PVRSRV_BRIDGE_IN_PDUMP_SYNCPOL;
601 718
602 719
603
604typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPMEM_TAG 720typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPMEM_TAG
605{ 721{
606 IMG_UINT32 ui32BridgeFlags; 722 IMG_UINT32 ui32BridgeFlags;
607 IMG_PVOID pvLinAddr; 723 IMG_PVOID pvLinAddr;
608 IMG_PVOID pvAltLinAddr; 724 IMG_PVOID pvAltLinAddr;
725#if defined (SUPPORT_SID_INTERFACE)
726 IMG_SID hKernelMemInfo;
727#else
609 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 728 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
729#endif
610 IMG_UINT32 ui32Offset; 730 IMG_UINT32 ui32Offset;
611 IMG_UINT32 ui32Bytes; 731 IMG_UINT32 ui32Bytes;
612 IMG_UINT32 ui32Flags; 732 IMG_UINT32 ui32Flags;
@@ -614,41 +734,49 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPMEM_TAG
614}PVRSRV_BRIDGE_IN_PDUMP_DUMPMEM; 734}PVRSRV_BRIDGE_IN_PDUMP_DUMPMEM;
615 735
616 736
617
618typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPSYNC_TAG 737typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPSYNC_TAG
619{ 738{
620 IMG_UINT32 ui32BridgeFlags; 739 IMG_UINT32 ui32BridgeFlags;
621 IMG_PVOID pvAltLinAddr; 740 IMG_PVOID pvAltLinAddr;
741#if defined (SUPPORT_SID_INTERFACE)
742 IMG_SID hKernelSyncInfo;
743#else
622 PVRSRV_KERNEL_SYNC_INFO *psKernelSyncInfo; 744 PVRSRV_KERNEL_SYNC_INFO *psKernelSyncInfo;
745#endif
623 IMG_UINT32 ui32Offset; 746 IMG_UINT32 ui32Offset;
624 IMG_UINT32 ui32Bytes; 747 IMG_UINT32 ui32Bytes;
625 748
626}PVRSRV_BRIDGE_IN_PDUMP_DUMPSYNC; 749}PVRSRV_BRIDGE_IN_PDUMP_DUMPSYNC;
627 750
628 751
629
630typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPREG_TAG 752typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPREG_TAG
631{ 753{
632 IMG_UINT32 ui32BridgeFlags; 754 IMG_UINT32 ui32BridgeFlags;
755#if defined (SUPPORT_SID_INTERFACE)
756 IMG_SID hDevCookie;
757#else
633 IMG_HANDLE hDevCookie; 758 IMG_HANDLE hDevCookie;
759#endif
634 PVRSRV_HWREG sHWReg; 760 PVRSRV_HWREG sHWReg;
635 IMG_UINT32 ui32Flags; 761 IMG_UINT32 ui32Flags;
636 IMG_CHAR szRegRegion[32]; 762 IMG_CHAR szRegRegion[32];
637 763
638}PVRSRV_BRIDGE_IN_PDUMP_DUMPREG; 764}PVRSRV_BRIDGE_IN_PDUMP_DUMPREG;
639 765
640
641typedef struct PVRSRV_BRIDGE_IN_PDUMP_REGPOL_TAG 766typedef struct PVRSRV_BRIDGE_IN_PDUMP_REGPOL_TAG
642{ 767{
643 IMG_UINT32 ui32BridgeFlags; 768 IMG_UINT32 ui32BridgeFlags;
769#if defined (SUPPORT_SID_INTERFACE)
770 IMG_SID hDevCookie;
771#else
644 IMG_HANDLE hDevCookie; 772 IMG_HANDLE hDevCookie;
773#endif
645 PVRSRV_HWREG sHWReg; 774 PVRSRV_HWREG sHWReg;
646 IMG_UINT32 ui32Mask; 775 IMG_UINT32 ui32Mask;
647 IMG_UINT32 ui32Flags; 776 IMG_UINT32 ui32Flags;
648 IMG_CHAR szRegRegion[32]; 777 IMG_CHAR szRegRegion[32];
649}PVRSRV_BRIDGE_IN_PDUMP_REGPOL; 778}PVRSRV_BRIDGE_IN_PDUMP_REGPOL;
650 779
651
652typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPPDREG_TAG 780typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPPDREG_TAG
653{ 781{
654 IMG_UINT32 ui32BridgeFlags; 782 IMG_UINT32 ui32BridgeFlags;
@@ -657,21 +785,25 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPPDREG_TAG
657 785
658}PVRSRV_BRIDGE_IN_PDUMP_DUMPPDREG; 786}PVRSRV_BRIDGE_IN_PDUMP_DUMPPDREG;
659 787
660
661typedef struct PVRSRV_BRIDGE_IN_PDUMP_MEMPAGES_TAG 788typedef struct PVRSRV_BRIDGE_IN_PDUMP_MEMPAGES_TAG
662{ 789{
663 IMG_UINT32 ui32BridgeFlags; 790 IMG_UINT32 ui32BridgeFlags;
791#if defined (SUPPORT_SID_INTERFACE)
792 IMG_SID hDevCookie;
793 IMG_SID hKernelMemInfo;
794#else
795 IMG_HANDLE hDevCookie;
664 IMG_HANDLE hKernelMemInfo; 796 IMG_HANDLE hKernelMemInfo;
797#endif
665 IMG_DEV_PHYADDR *pPages; 798 IMG_DEV_PHYADDR *pPages;
666 IMG_UINT32 ui32NumPages; 799 IMG_UINT32 ui32NumPages;
667 IMG_DEV_VIRTADDR sDevAddr; 800 IMG_DEV_VIRTADDR sDevVAddr;
668 IMG_UINT32 ui32Start; 801 IMG_UINT32 ui32Start;
669 IMG_UINT32 ui32Length; 802 IMG_UINT32 ui32Length;
670 IMG_BOOL bContinuous; 803 IMG_UINT32 ui32Flags;
671 804
672}PVRSRV_BRIDGE_IN_PDUMP_MEMPAGES; 805}PVRSRV_BRIDGE_IN_PDUMP_MEMPAGES;
673 806
674
675typedef struct PVRSRV_BRIDGE_IN_PDUMP_COMMENT_TAG 807typedef struct PVRSRV_BRIDGE_IN_PDUMP_COMMENT_TAG
676{ 808{
677 IMG_UINT32 ui32BridgeFlags; 809 IMG_UINT32 ui32BridgeFlags;
@@ -681,7 +813,6 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_COMMENT_TAG
681}PVRSRV_BRIDGE_IN_PDUMP_COMMENT; 813}PVRSRV_BRIDGE_IN_PDUMP_COMMENT;
682 814
683 815
684
685typedef struct PVRSRV_BRIDGE_IN_PDUMP_SETFRAME_TAG 816typedef struct PVRSRV_BRIDGE_IN_PDUMP_SETFRAME_TAG
686{ 817{
687 IMG_UINT32 ui32BridgeFlags; 818 IMG_UINT32 ui32BridgeFlags;
@@ -690,19 +821,25 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_SETFRAME_TAG
690}PVRSRV_BRIDGE_IN_PDUMP_SETFRAME; 821}PVRSRV_BRIDGE_IN_PDUMP_SETFRAME;
691 822
692 823
693
694
695typedef struct PVRSRV_BRIDGE_IN_PDUMP_BITMAP_TAG 824typedef struct PVRSRV_BRIDGE_IN_PDUMP_BITMAP_TAG
696{ 825{
697 IMG_UINT32 ui32BridgeFlags; 826 IMG_UINT32 ui32BridgeFlags;
827#if defined (SUPPORT_SID_INTERFACE)
828 IMG_SID hDevCookie;
829#else
698 IMG_HANDLE hDevCookie; 830 IMG_HANDLE hDevCookie;
699 IMG_CHAR szFileName[PVRSRV_PDUMP_MAX_FILENAME_SIZE]; 831#endif
832 IMG_CHAR szFileName[PVRSRV_PDUMP_MAX_FILENAME_SIZE];
700 IMG_UINT32 ui32FileOffset; 833 IMG_UINT32 ui32FileOffset;
701 IMG_UINT32 ui32Width; 834 IMG_UINT32 ui32Width;
702 IMG_UINT32 ui32Height; 835 IMG_UINT32 ui32Height;
703 IMG_UINT32 ui32StrideInBytes; 836 IMG_UINT32 ui32StrideInBytes;
704 IMG_DEV_VIRTADDR sDevBaseAddr; 837 IMG_DEV_VIRTADDR sDevBaseAddr;
838#if defined (SUPPORT_SID_INTERFACE)
839 IMG_SID hDevMemContext;
840#else
705 IMG_HANDLE hDevMemContext; 841 IMG_HANDLE hDevMemContext;
842#endif
706 IMG_UINT32 ui32Size; 843 IMG_UINT32 ui32Size;
707 PDUMP_PIXEL_FORMAT ePixelFormat; 844 PDUMP_PIXEL_FORMAT ePixelFormat;
708 PDUMP_MEM_FORMAT eMemFormat; 845 PDUMP_MEM_FORMAT eMemFormat;
@@ -711,21 +848,23 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_BITMAP_TAG
711}PVRSRV_BRIDGE_IN_PDUMP_BITMAP; 848}PVRSRV_BRIDGE_IN_PDUMP_BITMAP;
712 849
713 850
714
715typedef struct PVRSRV_BRIDGE_IN_PDUMP_READREG_TAG 851typedef struct PVRSRV_BRIDGE_IN_PDUMP_READREG_TAG
716{ 852{
717 IMG_UINT32 ui32BridgeFlags; 853 IMG_UINT32 ui32BridgeFlags;
854#if defined (SUPPORT_SID_INTERFACE)
855 IMG_SID hDevCookie;
856#else
718 IMG_HANDLE hDevCookie; 857 IMG_HANDLE hDevCookie;
719 IMG_CHAR szFileName[PVRSRV_PDUMP_MAX_FILENAME_SIZE]; 858#endif
859 IMG_CHAR szFileName[PVRSRV_PDUMP_MAX_FILENAME_SIZE];
720 IMG_UINT32 ui32FileOffset; 860 IMG_UINT32 ui32FileOffset;
721 IMG_UINT32 ui32Address; 861 IMG_UINT32 ui32Address;
722 IMG_UINT32 ui32Size; 862 IMG_UINT32 ui32Size;
723 IMG_UINT32 ui32Flags; 863 IMG_UINT32 ui32Flags;
724 IMG_CHAR szRegRegion[32]; 864 IMG_CHAR szRegRegion[32];
725 865
726}PVRSRV_BRIDGE_IN_PDUMP_READREG; 866}PVRSRV_BRIDGE_IN_PDUMP_READREG;
727 867
728
729typedef struct PVRSRV_BRIDGE_IN_PDUMP_DRIVERINFO_TAG 868typedef struct PVRSRV_BRIDGE_IN_PDUMP_DRIVERINFO_TAG
730{ 869{
731 IMG_UINT32 ui32BridgeFlags; 870 IMG_UINT32 ui32BridgeFlags;
@@ -737,21 +876,27 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_DRIVERINFO_TAG
737typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPPDDEVPADDR_TAG 876typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPPDDEVPADDR_TAG
738{ 877{
739 IMG_UINT32 ui32BridgeFlags; 878 IMG_UINT32 ui32BridgeFlags;
879#if defined (SUPPORT_SID_INTERFACE)
880 IMG_SID hKernelMemInfo;
881#else
740 IMG_HANDLE hKernelMemInfo; 882 IMG_HANDLE hKernelMemInfo;
883#endif
741 IMG_UINT32 ui32Offset; 884 IMG_UINT32 ui32Offset;
742 IMG_DEV_PHYADDR sPDDevPAddr; 885 IMG_DEV_PHYADDR sPDDevPAddr;
743}PVRSRV_BRIDGE_IN_PDUMP_DUMPPDDEVPADDR; 886}PVRSRV_BRIDGE_IN_PDUMP_DUMPPDDEVPADDR;
744 887
745
746typedef struct PVRSRV_BRIDGE_PDUM_IN_CYCLE_COUNT_REG_READ_TAG 888typedef struct PVRSRV_BRIDGE_PDUM_IN_CYCLE_COUNT_REG_READ_TAG
747{ 889{
748 IMG_UINT32 ui32BridgeFlags; 890 IMG_UINT32 ui32BridgeFlags;
891#if defined (SUPPORT_SID_INTERFACE)
892 IMG_SID hDevCookie;
893#else
749 IMG_HANDLE hDevCookie; 894 IMG_HANDLE hDevCookie;
895#endif
750 IMG_UINT32 ui32RegOffset; 896 IMG_UINT32 ui32RegOffset;
751 IMG_BOOL bLastFrame; 897 IMG_BOOL bLastFrame;
752}PVRSRV_BRIDGE_IN_PDUMP_CYCLE_COUNT_REG_READ; 898}PVRSRV_BRIDGE_IN_PDUMP_CYCLE_COUNT_REG_READ;
753 899
754
755typedef struct PVRSRV_BRIDGE_OUT_ENUMDEVICE_TAG 900typedef struct PVRSRV_BRIDGE_OUT_ENUMDEVICE_TAG
756{ 901{
757 PVRSRV_ERROR eError; 902 PVRSRV_ERROR eError;
@@ -761,17 +906,19 @@ typedef struct PVRSRV_BRIDGE_OUT_ENUMDEVICE_TAG
761}PVRSRV_BRIDGE_OUT_ENUMDEVICE; 906}PVRSRV_BRIDGE_OUT_ENUMDEVICE;
762 907
763 908
764
765typedef struct PVRSRV_BRIDGE_OUT_ACQUIRE_DEVICEINFO_TAG 909typedef struct PVRSRV_BRIDGE_OUT_ACQUIRE_DEVICEINFO_TAG
766{ 910{
767 911
768 PVRSRV_ERROR eError; 912 PVRSRV_ERROR eError;
913#if defined (SUPPORT_SID_INTERFACE)
914 IMG_SID hDevCookie;
915#else
769 IMG_HANDLE hDevCookie; 916 IMG_HANDLE hDevCookie;
917#endif
770 918
771} PVRSRV_BRIDGE_OUT_ACQUIRE_DEVICEINFO; 919} PVRSRV_BRIDGE_OUT_ACQUIRE_DEVICEINFO;
772 920
773 921
774
775typedef struct PVRSRV_BRIDGE_OUT_ENUMCLASS_TAG 922typedef struct PVRSRV_BRIDGE_OUT_ENUMCLASS_TAG
776{ 923{
777 PVRSRV_ERROR eError; 924 PVRSRV_ERROR eError;
@@ -781,30 +928,40 @@ typedef struct PVRSRV_BRIDGE_OUT_ENUMCLASS_TAG
781}PVRSRV_BRIDGE_OUT_ENUMCLASS; 928}PVRSRV_BRIDGE_OUT_ENUMCLASS;
782 929
783 930
784
785typedef struct PVRSRV_BRIDGE_IN_OPEN_DISPCLASS_DEVICE_TAG 931typedef struct PVRSRV_BRIDGE_IN_OPEN_DISPCLASS_DEVICE_TAG
786{ 932{
787 IMG_UINT32 ui32BridgeFlags; 933 IMG_UINT32 ui32BridgeFlags;
788 IMG_UINT32 ui32DeviceID; 934 IMG_UINT32 ui32DeviceID;
935#if defined (SUPPORT_SID_INTERFACE)
936 IMG_SID hDevCookie;
937#else
789 IMG_HANDLE hDevCookie; 938 IMG_HANDLE hDevCookie;
790 939#endif
940
791}PVRSRV_BRIDGE_IN_OPEN_DISPCLASS_DEVICE; 941}PVRSRV_BRIDGE_IN_OPEN_DISPCLASS_DEVICE;
792 942
793
794typedef struct PVRSRV_BRIDGE_OUT_OPEN_DISPCLASS_DEVICE_TAG 943typedef struct PVRSRV_BRIDGE_OUT_OPEN_DISPCLASS_DEVICE_TAG
795{ 944{
796 PVRSRV_ERROR eError; 945 PVRSRV_ERROR eError;
946#if defined (SUPPORT_SID_INTERFACE)
947 IMG_SID hDeviceKM;
948#else
797 IMG_HANDLE hDeviceKM; 949 IMG_HANDLE hDeviceKM;
950#endif
798 951
799}PVRSRV_BRIDGE_OUT_OPEN_DISPCLASS_DEVICE; 952}PVRSRV_BRIDGE_OUT_OPEN_DISPCLASS_DEVICE;
800 953
801 954
802
803typedef struct PVRSRV_BRIDGE_IN_WRAP_EXT_MEMORY_TAG 955typedef struct PVRSRV_BRIDGE_IN_WRAP_EXT_MEMORY_TAG
804{ 956{
805 IMG_UINT32 ui32BridgeFlags; 957 IMG_UINT32 ui32BridgeFlags;
958#if defined (SUPPORT_SID_INTERFACE)
959 IMG_SID hDevCookie;
960 IMG_SID hDevMemContext;
961#else
806 IMG_HANDLE hDevCookie; 962 IMG_HANDLE hDevCookie;
807 IMG_HANDLE hDevMemContext; 963 IMG_HANDLE hDevMemContext;
964#endif
808 IMG_VOID *pvLinAddr; 965 IMG_VOID *pvLinAddr;
809 IMG_SIZE_T ui32ByteSize; 966 IMG_SIZE_T ui32ByteSize;
810 IMG_SIZE_T ui32PageOffset; 967 IMG_SIZE_T ui32PageOffset;
@@ -815,7 +972,6 @@ typedef struct PVRSRV_BRIDGE_IN_WRAP_EXT_MEMORY_TAG
815 972
816}PVRSRV_BRIDGE_IN_WRAP_EXT_MEMORY; 973}PVRSRV_BRIDGE_IN_WRAP_EXT_MEMORY;
817 974
818
819typedef struct PVRSRV_BRIDGE_OUT_WRAP_EXT_MEMORY_TAG 975typedef struct PVRSRV_BRIDGE_OUT_WRAP_EXT_MEMORY_TAG
820{ 976{
821 PVRSRV_ERROR eError; 977 PVRSRV_ERROR eError;
@@ -824,11 +980,14 @@ typedef struct PVRSRV_BRIDGE_OUT_WRAP_EXT_MEMORY_TAG
824 980
825}PVRSRV_BRIDGE_OUT_WRAP_EXT_MEMORY; 981}PVRSRV_BRIDGE_OUT_WRAP_EXT_MEMORY;
826 982
827
828typedef struct PVRSRV_BRIDGE_IN_UNWRAP_EXT_MEMORY_TAG 983typedef struct PVRSRV_BRIDGE_IN_UNWRAP_EXT_MEMORY_TAG
829{ 984{
830 IMG_UINT32 ui32BridgeFlags; 985 IMG_UINT32 ui32BridgeFlags;
986#if defined (SUPPORT_SID_INTERFACE)
987 IMG_SID hKernelMemInfo;
988#else
831 IMG_HANDLE hKernelMemInfo; 989 IMG_HANDLE hKernelMemInfo;
990#endif
832 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 991 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
833 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; 992 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo;
834 993
@@ -840,7 +999,6 @@ typedef struct PVRSRV_BRIDGE_IN_UNWRAP_EXT_MEMORY_TAG
840#define PVRSRV_MAX_DC_SWAPCHAIN_BUFFERS 4 999#define PVRSRV_MAX_DC_SWAPCHAIN_BUFFERS 4
841#define PVRSRV_MAX_DC_CLIP_RECTS 32 1000#define PVRSRV_MAX_DC_CLIP_RECTS 32
842 1001
843
844typedef struct PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_FORMATS_TAG 1002typedef struct PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_FORMATS_TAG
845{ 1003{
846 PVRSRV_ERROR eError; 1004 PVRSRV_ERROR eError;
@@ -850,17 +1008,19 @@ typedef struct PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_FORMATS_TAG
850}PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_FORMATS; 1008}PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_FORMATS;
851 1009
852 1010
853
854typedef struct PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_DIMS_TAG 1011typedef struct PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_DIMS_TAG
855{ 1012{
856 IMG_UINT32 ui32BridgeFlags; 1013 IMG_UINT32 ui32BridgeFlags;
1014#if defined (SUPPORT_SID_INTERFACE)
1015 IMG_SID hDeviceKM;
1016#else
857 IMG_HANDLE hDeviceKM; 1017 IMG_HANDLE hDeviceKM;
1018#endif
858 DISPLAY_FORMAT sFormat; 1019 DISPLAY_FORMAT sFormat;
859 1020
860}PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_DIMS; 1021}PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_DIMS;
861 1022
862 1023
863
864typedef struct PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_DIMS_TAG 1024typedef struct PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_DIMS_TAG
865{ 1025{
866 PVRSRV_ERROR eError; 1026 PVRSRV_ERROR eError;
@@ -870,7 +1030,6 @@ typedef struct PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_DIMS_TAG
870}PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_DIMS; 1030}PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_DIMS;
871 1031
872 1032
873
874typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_INFO_TAG 1033typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_INFO_TAG
875{ 1034{
876 PVRSRV_ERROR eError; 1035 PVRSRV_ERROR eError;
@@ -879,20 +1038,26 @@ typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_INFO_TAG
879}PVRSRV_BRIDGE_OUT_GET_DISPCLASS_INFO; 1038}PVRSRV_BRIDGE_OUT_GET_DISPCLASS_INFO;
880 1039
881 1040
882
883typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_SYSBUFFER_TAG 1041typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_SYSBUFFER_TAG
884{ 1042{
885 PVRSRV_ERROR eError; 1043 PVRSRV_ERROR eError;
1044#if defined (SUPPORT_SID_INTERFACE)
1045 IMG_SID hBuffer;
1046#else
886 IMG_HANDLE hBuffer; 1047 IMG_HANDLE hBuffer;
1048#endif
887 1049
888}PVRSRV_BRIDGE_OUT_GET_DISPCLASS_SYSBUFFER; 1050}PVRSRV_BRIDGE_OUT_GET_DISPCLASS_SYSBUFFER;
889 1051
890 1052
891
892typedef struct PVRSRV_BRIDGE_IN_CREATE_DISPCLASS_SWAPCHAIN_TAG 1053typedef struct PVRSRV_BRIDGE_IN_CREATE_DISPCLASS_SWAPCHAIN_TAG
893{ 1054{
894 IMG_UINT32 ui32BridgeFlags; 1055 IMG_UINT32 ui32BridgeFlags;
1056#if defined (SUPPORT_SID_INTERFACE)
1057 IMG_SID hDeviceKM;
1058#else
895 IMG_HANDLE hDeviceKM; 1059 IMG_HANDLE hDeviceKM;
1060#endif
896 IMG_UINT32 ui32Flags; 1061 IMG_UINT32 ui32Flags;
897 DISPLAY_SURF_ATTRIBUTES sDstSurfAttrib; 1062 DISPLAY_SURF_ATTRIBUTES sDstSurfAttrib;
898 DISPLAY_SURF_ATTRIBUTES sSrcSurfAttrib; 1063 DISPLAY_SURF_ATTRIBUTES sSrcSurfAttrib;
@@ -903,112 +1068,151 @@ typedef struct PVRSRV_BRIDGE_IN_CREATE_DISPCLASS_SWAPCHAIN_TAG
903} PVRSRV_BRIDGE_IN_CREATE_DISPCLASS_SWAPCHAIN; 1068} PVRSRV_BRIDGE_IN_CREATE_DISPCLASS_SWAPCHAIN;
904 1069
905 1070
906
907typedef struct PVRSRV_BRIDGE_OUT_CREATE_DISPCLASS_SWAPCHAIN_TAG 1071typedef struct PVRSRV_BRIDGE_OUT_CREATE_DISPCLASS_SWAPCHAIN_TAG
908{ 1072{
909 PVRSRV_ERROR eError; 1073 PVRSRV_ERROR eError;
1074#if defined (SUPPORT_SID_INTERFACE)
1075 IMG_SID hSwapChain;
1076#else
910 IMG_HANDLE hSwapChain; 1077 IMG_HANDLE hSwapChain;
1078#endif
911 IMG_UINT32 ui32SwapChainID; 1079 IMG_UINT32 ui32SwapChainID;
912 1080
913} PVRSRV_BRIDGE_OUT_CREATE_DISPCLASS_SWAPCHAIN; 1081} PVRSRV_BRIDGE_OUT_CREATE_DISPCLASS_SWAPCHAIN;
914 1082
915 1083
916
917typedef struct PVRSRV_BRIDGE_IN_DESTROY_DISPCLASS_SWAPCHAIN_TAG 1084typedef struct PVRSRV_BRIDGE_IN_DESTROY_DISPCLASS_SWAPCHAIN_TAG
918{ 1085{
919 IMG_UINT32 ui32BridgeFlags; 1086 IMG_UINT32 ui32BridgeFlags;
1087#if defined (SUPPORT_SID_INTERFACE)
1088 IMG_SID hDeviceKM;
1089 IMG_SID hSwapChain;
1090#else
920 IMG_HANDLE hDeviceKM; 1091 IMG_HANDLE hDeviceKM;
921 IMG_HANDLE hSwapChain; 1092 IMG_HANDLE hSwapChain;
1093#endif
922 1094
923} PVRSRV_BRIDGE_IN_DESTROY_DISPCLASS_SWAPCHAIN; 1095} PVRSRV_BRIDGE_IN_DESTROY_DISPCLASS_SWAPCHAIN;
924 1096
925 1097
926
927typedef struct PVRSRV_BRIDGE_IN_SET_DISPCLASS_RECT_TAG 1098typedef struct PVRSRV_BRIDGE_IN_SET_DISPCLASS_RECT_TAG
928{ 1099{
929 IMG_UINT32 ui32BridgeFlags; 1100 IMG_UINT32 ui32BridgeFlags;
1101#if defined (SUPPORT_SID_INTERFACE)
1102 IMG_SID hDeviceKM;
1103 IMG_SID hSwapChain;
1104#else
930 IMG_HANDLE hDeviceKM; 1105 IMG_HANDLE hDeviceKM;
931 IMG_HANDLE hSwapChain; 1106 IMG_HANDLE hSwapChain;
1107#endif
932 IMG_RECT sRect; 1108 IMG_RECT sRect;
933 1109
934} PVRSRV_BRIDGE_IN_SET_DISPCLASS_RECT; 1110} PVRSRV_BRIDGE_IN_SET_DISPCLASS_RECT;
935 1111
936 1112
937
938typedef struct PVRSRV_BRIDGE_IN_SET_DISPCLASS_COLOURKEY_TAG 1113typedef struct PVRSRV_BRIDGE_IN_SET_DISPCLASS_COLOURKEY_TAG
939{ 1114{
940 IMG_UINT32 ui32BridgeFlags; 1115 IMG_UINT32 ui32BridgeFlags;
1116#if defined (SUPPORT_SID_INTERFACE)
1117 IMG_SID hDeviceKM;
1118 IMG_SID hSwapChain;
1119#else
941 IMG_HANDLE hDeviceKM; 1120 IMG_HANDLE hDeviceKM;
942 IMG_HANDLE hSwapChain; 1121 IMG_HANDLE hSwapChain;
1122#endif
943 IMG_UINT32 ui32CKColour; 1123 IMG_UINT32 ui32CKColour;
944 1124
945} PVRSRV_BRIDGE_IN_SET_DISPCLASS_COLOURKEY; 1125} PVRSRV_BRIDGE_IN_SET_DISPCLASS_COLOURKEY;
946 1126
947 1127
948
949typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_BUFFERS_TAG 1128typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_BUFFERS_TAG
950{ 1129{
951 IMG_UINT32 ui32BridgeFlags; 1130 IMG_UINT32 ui32BridgeFlags;
1131#if defined (SUPPORT_SID_INTERFACE)
1132 IMG_SID hDeviceKM;
1133 IMG_SID hSwapChain;
1134#else
952 IMG_HANDLE hDeviceKM; 1135 IMG_HANDLE hDeviceKM;
953 IMG_HANDLE hSwapChain; 1136 IMG_HANDLE hSwapChain;
1137#endif
954 1138
955} PVRSRV_BRIDGE_IN_GET_DISPCLASS_BUFFERS; 1139} PVRSRV_BRIDGE_IN_GET_DISPCLASS_BUFFERS;
956 1140
957 1141
958
959typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_BUFFERS_TAG 1142typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_BUFFERS_TAG
960{ 1143{
961 PVRSRV_ERROR eError; 1144 PVRSRV_ERROR eError;
962 IMG_UINT32 ui32BufferCount; 1145 IMG_UINT32 ui32BufferCount;
1146#if defined (SUPPORT_SID_INTERFACE)
1147 IMG_SID ahBuffer[PVRSRV_MAX_DC_SWAPCHAIN_BUFFERS];
1148#else
963 IMG_HANDLE ahBuffer[PVRSRV_MAX_DC_SWAPCHAIN_BUFFERS]; 1149 IMG_HANDLE ahBuffer[PVRSRV_MAX_DC_SWAPCHAIN_BUFFERS];
1150#endif
964 1151
965} PVRSRV_BRIDGE_OUT_GET_DISPCLASS_BUFFERS; 1152} PVRSRV_BRIDGE_OUT_GET_DISPCLASS_BUFFERS;
966 1153
967 1154
968
969typedef struct PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_BUFFER_TAG 1155typedef struct PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_BUFFER_TAG
970{ 1156{
971 IMG_UINT32 ui32BridgeFlags; 1157 IMG_UINT32 ui32BridgeFlags;
1158#if defined (SUPPORT_SID_INTERFACE)
1159 IMG_SID hDeviceKM;
1160 IMG_SID hBuffer;
1161#else
972 IMG_HANDLE hDeviceKM; 1162 IMG_HANDLE hDeviceKM;
973 IMG_HANDLE hBuffer; 1163 IMG_HANDLE hBuffer;
1164#endif
974 IMG_UINT32 ui32SwapInterval; 1165 IMG_UINT32 ui32SwapInterval;
1166#if defined (SUPPORT_SID_INTERFACE)
1167 IMG_SID hPrivateTag;
1168#else
975 IMG_HANDLE hPrivateTag; 1169 IMG_HANDLE hPrivateTag;
1170#endif
976 IMG_UINT32 ui32ClipRectCount; 1171 IMG_UINT32 ui32ClipRectCount;
977 IMG_RECT sClipRect[PVRSRV_MAX_DC_CLIP_RECTS]; 1172 IMG_RECT sClipRect[PVRSRV_MAX_DC_CLIP_RECTS];
978 1173
979} PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_BUFFER; 1174} PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_BUFFER;
980 1175
981 1176
982
983typedef struct PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_SYSTEM_TAG 1177typedef struct PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_SYSTEM_TAG
984{ 1178{
985 IMG_UINT32 ui32BridgeFlags; 1179 IMG_UINT32 ui32BridgeFlags;
1180#if defined (SUPPORT_SID_INTERFACE)
1181 IMG_SID hDeviceKM;
1182 IMG_SID hSwapChain;
1183#else
986 IMG_HANDLE hDeviceKM; 1184 IMG_HANDLE hDeviceKM;
987 IMG_HANDLE hSwapChain; 1185 IMG_HANDLE hSwapChain;
1186#endif
988 1187
989} PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_SYSTEM; 1188} PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_SYSTEM;
990 1189
991 1190
992
993typedef struct PVRSRV_BRIDGE_IN_OPEN_BUFFERCLASS_DEVICE_TAG 1191typedef struct PVRSRV_BRIDGE_IN_OPEN_BUFFERCLASS_DEVICE_TAG
994{ 1192{
995 IMG_UINT32 ui32BridgeFlags; 1193 IMG_UINT32 ui32BridgeFlags;
996 IMG_UINT32 ui32DeviceID; 1194 IMG_UINT32 ui32DeviceID;
1195#if defined (SUPPORT_SID_INTERFACE)
1196 IMG_SID hDevCookie;
1197#else
997 IMG_HANDLE hDevCookie; 1198 IMG_HANDLE hDevCookie;
998 1199#endif
1200
999} PVRSRV_BRIDGE_IN_OPEN_BUFFERCLASS_DEVICE; 1201} PVRSRV_BRIDGE_IN_OPEN_BUFFERCLASS_DEVICE;
1000 1202
1001 1203
1002
1003typedef struct PVRSRV_BRIDGE_OUT_OPEN_BUFFERCLASS_DEVICE_TAG 1204typedef struct PVRSRV_BRIDGE_OUT_OPEN_BUFFERCLASS_DEVICE_TAG
1004{ 1205{
1005 PVRSRV_ERROR eError; 1206 PVRSRV_ERROR eError;
1207#if defined (SUPPORT_SID_INTERFACE)
1208 IMG_SID hDeviceKM;
1209#else
1006 IMG_HANDLE hDeviceKM; 1210 IMG_HANDLE hDeviceKM;
1211#endif
1007 1212
1008} PVRSRV_BRIDGE_OUT_OPEN_BUFFERCLASS_DEVICE; 1213} PVRSRV_BRIDGE_OUT_OPEN_BUFFERCLASS_DEVICE;
1009 1214
1010 1215
1011
1012typedef struct PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_INFO_TAG 1216typedef struct PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_INFO_TAG
1013{ 1217{
1014 PVRSRV_ERROR eError; 1218 PVRSRV_ERROR eError;
@@ -1017,26 +1221,31 @@ typedef struct PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_INFO_TAG
1017} PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_INFO; 1221} PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_INFO;
1018 1222
1019 1223
1020
1021typedef struct PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_BUFFER_TAG 1224typedef struct PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_BUFFER_TAG
1022{ 1225{
1023 IMG_UINT32 ui32BridgeFlags; 1226 IMG_UINT32 ui32BridgeFlags;
1227#if defined (SUPPORT_SID_INTERFACE)
1228 IMG_SID hDeviceKM;
1229#else
1024 IMG_HANDLE hDeviceKM; 1230 IMG_HANDLE hDeviceKM;
1025 IMG_UINT32 ui32BufferIndex; 1231#endif
1232 IMG_UINT32 ui32BufferIndex;
1026 1233
1027} PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_BUFFER; 1234} PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_BUFFER;
1028 1235
1029 1236
1030
1031typedef struct PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_BUFFER_TAG 1237typedef struct PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_BUFFER_TAG
1032{ 1238{
1033 PVRSRV_ERROR eError; 1239 PVRSRV_ERROR eError;
1240#if defined (SUPPORT_SID_INTERFACE)
1241 IMG_SID hBuffer;
1242#else
1034 IMG_HANDLE hBuffer; 1243 IMG_HANDLE hBuffer;
1244#endif
1035 1245
1036} PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_BUFFER; 1246} PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_BUFFER;
1037 1247
1038 1248
1039
1040typedef struct PVRSRV_BRIDGE_OUT_GET_DEVMEM_HEAPINFO_TAG 1249typedef struct PVRSRV_BRIDGE_OUT_GET_DEVMEM_HEAPINFO_TAG
1041{ 1250{
1042 PVRSRV_ERROR eError; 1251 PVRSRV_ERROR eError;
@@ -1046,42 +1255,54 @@ typedef struct PVRSRV_BRIDGE_OUT_GET_DEVMEM_HEAPINFO_TAG
1046} PVRSRV_BRIDGE_OUT_GET_DEVMEM_HEAPINFO; 1255} PVRSRV_BRIDGE_OUT_GET_DEVMEM_HEAPINFO;
1047 1256
1048 1257
1049
1050typedef struct PVRSRV_BRIDGE_OUT_CREATE_DEVMEMCONTEXT_TAG 1258typedef struct PVRSRV_BRIDGE_OUT_CREATE_DEVMEMCONTEXT_TAG
1051{ 1259{
1052 PVRSRV_ERROR eError; 1260 PVRSRV_ERROR eError;
1261#if defined (SUPPORT_SID_INTERFACE)
1262 IMG_SID hDevMemContext;
1263#else
1053 IMG_HANDLE hDevMemContext; 1264 IMG_HANDLE hDevMemContext;
1265#endif
1054 IMG_UINT32 ui32ClientHeapCount; 1266 IMG_UINT32 ui32ClientHeapCount;
1055 PVRSRV_HEAP_INFO sHeapInfo[PVRSRV_MAX_CLIENT_HEAPS]; 1267 PVRSRV_HEAP_INFO sHeapInfo[PVRSRV_MAX_CLIENT_HEAPS];
1056 1268
1057} PVRSRV_BRIDGE_OUT_CREATE_DEVMEMCONTEXT; 1269} PVRSRV_BRIDGE_OUT_CREATE_DEVMEMCONTEXT;
1058 1270
1059 1271
1060
1061typedef struct PVRSRV_BRIDGE_OUT_CREATE_DEVMEMHEAP_TAG 1272typedef struct PVRSRV_BRIDGE_OUT_CREATE_DEVMEMHEAP_TAG
1062{ 1273{
1063 PVRSRV_ERROR eError; 1274 PVRSRV_ERROR eError;
1275#if defined (SUPPORT_SID_INTERFACE)
1276 IMG_SID hDevMemHeap;
1277#else
1064 IMG_HANDLE hDevMemHeap; 1278 IMG_HANDLE hDevMemHeap;
1279#endif
1065 1280
1066} PVRSRV_BRIDGE_OUT_CREATE_DEVMEMHEAP; 1281} PVRSRV_BRIDGE_OUT_CREATE_DEVMEMHEAP;
1067 1282
1068 1283
1069
1070typedef struct PVRSRV_BRIDGE_OUT_ALLOCDEVICEMEM_TAG 1284typedef struct PVRSRV_BRIDGE_OUT_ALLOCDEVICEMEM_TAG
1071{ 1285{
1072 PVRSRV_ERROR eError; 1286 PVRSRV_ERROR eError;
1287#if defined (SUPPORT_SID_INTERFACE)
1288 IMG_SID hKernelMemInfo;
1289#else
1073 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 1290 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
1074 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 1291#endif
1075 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; 1292 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
1293 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo;
1076 1294
1077} PVRSRV_BRIDGE_OUT_ALLOCDEVICEMEM; 1295} PVRSRV_BRIDGE_OUT_ALLOCDEVICEMEM;
1078 1296
1079 1297
1080
1081typedef struct PVRSRV_BRIDGE_OUT_EXPORTDEVICEMEM_TAG 1298typedef struct PVRSRV_BRIDGE_OUT_EXPORTDEVICEMEM_TAG
1082{ 1299{
1083 PVRSRV_ERROR eError; 1300 PVRSRV_ERROR eError;
1301#if defined (SUPPORT_SID_INTERFACE)
1302 IMG_SID hMemInfo;
1303#else
1084 IMG_HANDLE hMemInfo; 1304 IMG_HANDLE hMemInfo;
1305#endif
1085#if defined(SUPPORT_MEMINFO_IDS) 1306#if defined(SUPPORT_MEMINFO_IDS)
1086 IMG_UINT64 ui64Stamp; 1307 IMG_UINT64 ui64Stamp;
1087#endif 1308#endif
@@ -1093,12 +1314,15 @@ typedef struct PVRSRV_BRIDGE_OUT_MAPMEMINFOTOUSER_TAG
1093{ 1314{
1094 PVRSRV_ERROR eError; 1315 PVRSRV_ERROR eError;
1095 IMG_PVOID pvLinAddr; 1316 IMG_PVOID pvLinAddr;
1317#if defined (SUPPORT_SID_INTERFACE)
1318 IMG_SID hMappingInfo;
1319#else
1096 IMG_HANDLE hMappingInfo; 1320 IMG_HANDLE hMappingInfo;
1321#endif
1097 1322
1098}PVRSRV_BRIDGE_OUT_MAPMEMINFOTOUSER; 1323}PVRSRV_BRIDGE_OUT_MAPMEMINFOTOUSER;
1099 1324
1100 1325
1101
1102typedef struct PVRSRV_BRIDGE_OUT_GETFREEDEVICEMEM_TAG 1326typedef struct PVRSRV_BRIDGE_OUT_GETFREEDEVICEMEM_TAG
1103{ 1327{
1104 PVRSRV_ERROR eError; 1328 PVRSRV_ERROR eError;
@@ -1113,7 +1337,7 @@ typedef struct PVRSRV_BRIDGE_OUT_GETFREEDEVICEMEM_TAG
1113typedef struct PVRSRV_BRIDGE_OUT_MHANDLE_TO_MMAP_DATA_TAG 1337typedef struct PVRSRV_BRIDGE_OUT_MHANDLE_TO_MMAP_DATA_TAG
1114{ 1338{
1115 PVRSRV_ERROR eError; 1339 PVRSRV_ERROR eError;
1116 1340
1117 1341
1118 IMG_UINT32 ui32MMapOffset; 1342 IMG_UINT32 ui32MMapOffset;
1119 1343
@@ -1131,7 +1355,7 @@ typedef struct PVRSRV_BRIDGE_OUT_MHANDLE_TO_MMAP_DATA_TAG
1131typedef struct PVRSRV_BRIDGE_OUT_RELEASE_MMAP_DATA_TAG 1355typedef struct PVRSRV_BRIDGE_OUT_RELEASE_MMAP_DATA_TAG
1132{ 1356{
1133 PVRSRV_ERROR eError; 1357 PVRSRV_ERROR eError;
1134 1358
1135 1359
1136 IMG_BOOL bMUnmap; 1360 IMG_BOOL bMUnmap;
1137 1361
@@ -1141,7 +1365,6 @@ typedef struct PVRSRV_BRIDGE_OUT_RELEASE_MMAP_DATA_TAG
1141 1365
1142 IMG_UINT32 ui32RealByteSize; 1366 IMG_UINT32 ui32RealByteSize;
1143} PVRSRV_BRIDGE_OUT_RELEASE_MMAP_DATA; 1367} PVRSRV_BRIDGE_OUT_RELEASE_MMAP_DATA;
1144
1145typedef struct PVRSRV_BRIDGE_IN_GET_MISC_INFO_TAG 1368typedef struct PVRSRV_BRIDGE_IN_GET_MISC_INFO_TAG
1146{ 1369{
1147 IMG_UINT32 ui32BridgeFlags; 1370 IMG_UINT32 ui32BridgeFlags;
@@ -1150,7 +1373,6 @@ typedef struct PVRSRV_BRIDGE_IN_GET_MISC_INFO_TAG
1150}PVRSRV_BRIDGE_IN_GET_MISC_INFO; 1373}PVRSRV_BRIDGE_IN_GET_MISC_INFO;
1151 1374
1152 1375
1153
1154typedef struct PVRSRV_BRIDGE_OUT_GET_MISC_INFO_TAG 1376typedef struct PVRSRV_BRIDGE_OUT_GET_MISC_INFO_TAG
1155{ 1377{
1156 PVRSRV_ERROR eError; 1378 PVRSRV_ERROR eError;
@@ -1159,7 +1381,6 @@ typedef struct PVRSRV_BRIDGE_OUT_GET_MISC_INFO_TAG
1159}PVRSRV_BRIDGE_OUT_GET_MISC_INFO; 1381}PVRSRV_BRIDGE_OUT_GET_MISC_INFO;
1160 1382
1161 1383
1162
1163typedef struct PVRSRV_BRIDGE_IN_RELEASE_MISC_INFO_TAG 1384typedef struct PVRSRV_BRIDGE_IN_RELEASE_MISC_INFO_TAG
1164{ 1385{
1165 IMG_UINT32 ui32BridgeFlags; 1386 IMG_UINT32 ui32BridgeFlags;
@@ -1168,7 +1389,6 @@ typedef struct PVRSRV_BRIDGE_IN_RELEASE_MISC_INFO_TAG
1168}PVRSRV_BRIDGE_IN_RELEASE_MISC_INFO; 1389}PVRSRV_BRIDGE_IN_RELEASE_MISC_INFO;
1169 1390
1170 1391
1171
1172typedef struct PVRSRV_BRIDGE_OUT_RELEASE_MISC_INFO_TAG 1392typedef struct PVRSRV_BRIDGE_OUT_RELEASE_MISC_INFO_TAG
1173{ 1393{
1174 PVRSRV_ERROR eError; 1394 PVRSRV_ERROR eError;
@@ -1177,8 +1397,6 @@ typedef struct PVRSRV_BRIDGE_OUT_RELEASE_MISC_INFO_TAG
1177}PVRSRV_BRIDGE_OUT_RELEASE_MISC_INFO; 1397}PVRSRV_BRIDGE_OUT_RELEASE_MISC_INFO;
1178 1398
1179 1399
1180
1181
1182typedef struct PVRSRV_BRIDGE_OUT_PDUMP_ISCAPTURING_TAG 1400typedef struct PVRSRV_BRIDGE_OUT_PDUMP_ISCAPTURING_TAG
1183{ 1401{
1184 PVRSRV_ERROR eError; 1402 PVRSRV_ERROR eError;
@@ -1186,8 +1404,7 @@ typedef struct PVRSRV_BRIDGE_OUT_PDUMP_ISCAPTURING_TAG
1186 1404
1187} PVRSRV_BRIDGE_OUT_PDUMP_ISCAPTURING; 1405} PVRSRV_BRIDGE_OUT_PDUMP_ISCAPTURING;
1188 1406
1189 1407typedef struct PVRSRV_BRIDGE_IN_GET_FB_STATS_TAG
1190typedef struct PVRSRV_BRIDGE_IN_GET_FB_STATS_TAG
1191{ 1408{
1192 IMG_UINT32 ui32BridgeFlags; 1409 IMG_UINT32 ui32BridgeFlags;
1193 IMG_SIZE_T ui32Total; 1410 IMG_SIZE_T ui32Total;
@@ -1196,18 +1413,20 @@ typedef struct PVRSRV_BRIDGE_IN_GET_FB_STATS_TAG
1196} PVRSRV_BRIDGE_IN_GET_FB_STATS; 1413} PVRSRV_BRIDGE_IN_GET_FB_STATS;
1197 1414
1198 1415
1199
1200typedef struct PVRSRV_BRIDGE_IN_MAPPHYSTOUSERSPACE_TAG 1416typedef struct PVRSRV_BRIDGE_IN_MAPPHYSTOUSERSPACE_TAG
1201{ 1417{
1202 IMG_UINT32 ui32BridgeFlags; 1418 IMG_UINT32 ui32BridgeFlags;
1419#if defined (SUPPORT_SID_INTERFACE)
1420 IMG_SID hDevCookie;
1421#else
1203 IMG_HANDLE hDevCookie; 1422 IMG_HANDLE hDevCookie;
1423#endif
1204 IMG_SYS_PHYADDR sSysPhysAddr; 1424 IMG_SYS_PHYADDR sSysPhysAddr;
1205 IMG_UINT32 uiSizeInBytes; 1425 IMG_UINT32 uiSizeInBytes;
1206 1426
1207} PVRSRV_BRIDGE_IN_MAPPHYSTOUSERSPACE; 1427} PVRSRV_BRIDGE_IN_MAPPHYSTOUSERSPACE;
1208 1428
1209 1429
1210
1211typedef struct PVRSRV_BRIDGE_OUT_MAPPHYSTOUSERSPACE_TAG 1430typedef struct PVRSRV_BRIDGE_OUT_MAPPHYSTOUSERSPACE_TAG
1212{ 1431{
1213 IMG_PVOID pvUserAddr; 1432 IMG_PVOID pvUserAddr;
@@ -1217,18 +1436,20 @@ typedef struct PVRSRV_BRIDGE_OUT_MAPPHYSTOUSERSPACE_TAG
1217} PVRSRV_BRIDGE_OUT_MAPPHYSTOUSERSPACE; 1436} PVRSRV_BRIDGE_OUT_MAPPHYSTOUSERSPACE;
1218 1437
1219 1438
1220
1221typedef struct PVRSRV_BRIDGE_IN_UNMAPPHYSTOUSERSPACE_TAG 1439typedef struct PVRSRV_BRIDGE_IN_UNMAPPHYSTOUSERSPACE_TAG
1222{ 1440{
1223 IMG_UINT32 ui32BridgeFlags; 1441 IMG_UINT32 ui32BridgeFlags;
1442#if defined (SUPPORT_SID_INTERFACE)
1443 IMG_SID hDevCookie;
1444#else
1224 IMG_HANDLE hDevCookie; 1445 IMG_HANDLE hDevCookie;
1446#endif
1225 IMG_PVOID pvUserAddr; 1447 IMG_PVOID pvUserAddr;
1226 IMG_PVOID pvProcess; 1448 IMG_PVOID pvProcess;
1227 1449
1228} PVRSRV_BRIDGE_IN_UNMAPPHYSTOUSERSPACE; 1450} PVRSRV_BRIDGE_IN_UNMAPPHYSTOUSERSPACE;
1229 1451
1230 1452
1231
1232typedef struct PVRSRV_BRIDGE_OUT_GETPHYSTOUSERSPACEMAP_TAG 1453typedef struct PVRSRV_BRIDGE_OUT_GETPHYSTOUSERSPACEMAP_TAG
1233{ 1454{
1234 IMG_PVOID *ppvTbl; 1455 IMG_PVOID *ppvTbl;
@@ -1237,7 +1458,7 @@ typedef struct PVRSRV_BRIDGE_OUT_GETPHYSTOUSERSPACEMAP_TAG
1237} PVRSRV_BRIDGE_OUT_GETPHYSTOUSERSPACEMAP; 1458} PVRSRV_BRIDGE_OUT_GETPHYSTOUSERSPACEMAP;
1238 1459
1239 1460
1240 1461#if !defined (SUPPORT_SID_INTERFACE)
1241typedef struct PVRSRV_BRIDGE_IN_REGISTER_SIM_PROCESS_TAG 1462typedef struct PVRSRV_BRIDGE_IN_REGISTER_SIM_PROCESS_TAG
1242{ 1463{
1243 IMG_UINT32 ui32BridgeFlags; 1464 IMG_UINT32 ui32BridgeFlags;
@@ -1275,6 +1496,7 @@ typedef struct PVRSRV_BRIDGE_IN_PROCESS_SIMISR_EVENT_TAG
1275 PVRSRV_ERROR eError; 1496 PVRSRV_ERROR eError;
1276 1497
1277} PVRSRV_BRIDGE_IN_PROCESS_SIMISR_EVENT; 1498} PVRSRV_BRIDGE_IN_PROCESS_SIMISR_EVENT;
1499#endif
1278 1500
1279typedef struct PVRSRV_BRIDGE_IN_INITSRV_DISCONNECT_TAG 1501typedef struct PVRSRV_BRIDGE_IN_INITSRV_DISCONNECT_TAG
1280{ 1502{
@@ -1292,16 +1514,24 @@ typedef struct PVRSRV_BRIDGE_IN_ALLOC_SHARED_SYS_MEM_TAG
1292 1514
1293typedef struct PVRSRV_BRIDGE_OUT_ALLOC_SHARED_SYS_MEM_TAG 1515typedef struct PVRSRV_BRIDGE_OUT_ALLOC_SHARED_SYS_MEM_TAG
1294{ 1516{
1295 PVRSRV_ERROR eError; 1517 PVRSRV_ERROR eError;
1518#if defined (SUPPORT_SID_INTERFACE)
1519#else
1296 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 1520 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
1297 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 1521#endif
1522 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
1298}PVRSRV_BRIDGE_OUT_ALLOC_SHARED_SYS_MEM; 1523}PVRSRV_BRIDGE_OUT_ALLOC_SHARED_SYS_MEM;
1299 1524
1300typedef struct PVRSRV_BRIDGE_IN_FREE_SHARED_SYS_MEM_TAG 1525typedef struct PVRSRV_BRIDGE_IN_FREE_SHARED_SYS_MEM_TAG
1301{ 1526{
1302 IMG_UINT32 ui32BridgeFlags; 1527#if defined (SUPPORT_SID_INTERFACE)
1528 IMG_SID hKernelMemInfo;
1529 IMG_SID hMappingInfo;
1530#else
1531 IMG_UINT32 ui32BridgeFlags;
1303 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 1532 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
1304 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 1533#endif
1534 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
1305}PVRSRV_BRIDGE_IN_FREE_SHARED_SYS_MEM; 1535}PVRSRV_BRIDGE_IN_FREE_SHARED_SYS_MEM;
1306 1536
1307typedef struct PVRSRV_BRIDGE_OUT_FREE_SHARED_SYS_MEM_TAG 1537typedef struct PVRSRV_BRIDGE_OUT_FREE_SHARED_SYS_MEM_TAG
@@ -1312,14 +1542,22 @@ typedef struct PVRSRV_BRIDGE_OUT_FREE_SHARED_SYS_MEM_TAG
1312typedef struct PVRSRV_BRIDGE_IN_MAP_MEMINFO_MEM_TAG 1542typedef struct PVRSRV_BRIDGE_IN_MAP_MEMINFO_MEM_TAG
1313{ 1543{
1314 IMG_UINT32 ui32BridgeFlags; 1544 IMG_UINT32 ui32BridgeFlags;
1545#if defined (SUPPORT_SID_INTERFACE)
1546 IMG_SID hKernelMemInfo;
1547#else
1315 IMG_HANDLE hKernelMemInfo; 1548 IMG_HANDLE hKernelMemInfo;
1549#endif
1316}PVRSRV_BRIDGE_IN_MAP_MEMINFO_MEM; 1550}PVRSRV_BRIDGE_IN_MAP_MEMINFO_MEM;
1317 1551
1318typedef struct PVRSRV_BRIDGE_OUT_MAP_MEMINFO_MEM_TAG 1552typedef struct PVRSRV_BRIDGE_OUT_MAP_MEMINFO_MEM_TAG
1319{ 1553{
1320 PVRSRV_CLIENT_MEM_INFO sClientMemInfo; 1554 PVRSRV_CLIENT_MEM_INFO sClientMemInfo;
1321 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; 1555 PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo;
1556#if defined (SUPPORT_SID_INTERFACE)
1557 IMG_SID hKernelMemInfo;
1558#else
1322 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; 1559 PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo;
1560#endif
1323 PVRSRV_ERROR eError; 1561 PVRSRV_ERROR eError;
1324}PVRSRV_BRIDGE_OUT_MAP_MEMINFO_MEM; 1562}PVRSRV_BRIDGE_OUT_MAP_MEMINFO_MEM;
1325 1563
@@ -1337,7 +1575,11 @@ typedef struct PVRSRV_BRIDGE_OUT_UNMAP_MEMINFO_MEM_TAG
1337typedef struct PVRSRV_BRIDGE_IN_GETMMU_PD_DEVPADDR_TAG 1575typedef struct PVRSRV_BRIDGE_IN_GETMMU_PD_DEVPADDR_TAG
1338{ 1576{
1339 IMG_UINT32 ui32BridgeFlags; 1577 IMG_UINT32 ui32BridgeFlags;
1578#if defined (SUPPORT_SID_INTERFACE)
1579 IMG_SID hDevMemContext;
1580#else
1340 IMG_HANDLE hDevMemContext; 1581 IMG_HANDLE hDevMemContext;
1582#endif
1341}PVRSRV_BRIDGE_IN_GETMMU_PD_DEVPADDR; 1583}PVRSRV_BRIDGE_IN_GETMMU_PD_DEVPADDR;
1342 1584
1343typedef struct PVRSRV_BRIDGE_OUT_GETMMU_PD_DEVPADDR_TAG 1585typedef struct PVRSRV_BRIDGE_OUT_GETMMU_PD_DEVPADDR_TAG
@@ -1349,7 +1591,11 @@ typedef struct PVRSRV_BRIDGE_OUT_GETMMU_PD_DEVPADDR_TAG
1349typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_WAI_TAG 1591typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_WAI_TAG
1350{ 1592{
1351 IMG_UINT32 ui32BridgeFlags; 1593 IMG_UINT32 ui32BridgeFlags;
1594#if defined (SUPPORT_SID_INTERFACE)
1595 IMG_SID hOSEventKM;
1596#else
1352 IMG_HANDLE hOSEventKM; 1597 IMG_HANDLE hOSEventKM;
1598#endif
1353} PVRSRV_BRIDGE_IN_EVENT_OBJECT_WAIT; 1599} PVRSRV_BRIDGE_IN_EVENT_OBJECT_WAIT;
1354 1600
1355typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_OPEN_TAG 1601typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_OPEN_TAG
@@ -1359,35 +1605,56 @@ typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_OPEN_TAG
1359 1605
1360typedef struct PVRSRV_BRIDGE_OUT_EVENT_OBJECT_OPEN_TAG 1606typedef struct PVRSRV_BRIDGE_OUT_EVENT_OBJECT_OPEN_TAG
1361{ 1607{
1608#if defined (SUPPORT_SID_INTERFACE)
1609 IMG_UINT32 hOSEvent;
1610#else
1362 IMG_HANDLE hOSEvent; 1611 IMG_HANDLE hOSEvent;
1612#endif
1363 PVRSRV_ERROR eError; 1613 PVRSRV_ERROR eError;
1364} PVRSRV_BRIDGE_OUT_EVENT_OBJECT_OPEN; 1614} PVRSRV_BRIDGE_OUT_EVENT_OBJECT_OPEN;
1365 1615
1366typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_CLOSE_TAG 1616typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_CLOSE_TAG
1367{ 1617{
1368 PVRSRV_EVENTOBJECT sEventObject; 1618 PVRSRV_EVENTOBJECT sEventObject;
1619#if defined (SUPPORT_SID_INTERFACE)
1620 IMG_SID hOSEventKM;
1621#else
1369 IMG_HANDLE hOSEventKM; 1622 IMG_HANDLE hOSEventKM;
1623#endif
1370} PVRSRV_BRIDGE_IN_EVENT_OBJECT_CLOSE; 1624} PVRSRV_BRIDGE_IN_EVENT_OBJECT_CLOSE;
1371 1625
1372typedef struct PVRSRV_BRIDGE_OUT_CREATE_SYNC_INFO_MOD_OBJ_TAG 1626typedef struct PVRSRV_BRIDGE_OUT_CREATE_SYNC_INFO_MOD_OBJ_TAG
1373{ 1627{
1374 PVRSRV_ERROR eError; 1628 PVRSRV_ERROR eError;
1375 1629
1630#if defined (SUPPORT_SID_INTERFACE)
1631 IMG_SID hKernelSyncInfoModObj;
1632#else
1376 IMG_HANDLE hKernelSyncInfoModObj; 1633 IMG_HANDLE hKernelSyncInfoModObj;
1634#endif
1377 1635
1378} PVRSRV_BRIDGE_OUT_CREATE_SYNC_INFO_MOD_OBJ; 1636} PVRSRV_BRIDGE_OUT_CREATE_SYNC_INFO_MOD_OBJ;
1379 1637
1380typedef struct PVRSRV_BRIDGE_IN_DESTROY_SYNC_INFO_MOD_OBJ 1638typedef struct PVRSRV_BRIDGE_IN_DESTROY_SYNC_INFO_MOD_OBJ
1381{ 1639{
1382 IMG_UINT32 ui32BridgeFlags; 1640 IMG_UINT32 ui32BridgeFlags;
1641#if defined (SUPPORT_SID_INTERFACE)
1642 IMG_SID hKernelSyncInfoModObj;
1643#else
1383 IMG_HANDLE hKernelSyncInfoModObj; 1644 IMG_HANDLE hKernelSyncInfoModObj;
1645#endif
1384} PVRSRV_BRIDGE_IN_DESTROY_SYNC_INFO_MOD_OBJ; 1646} PVRSRV_BRIDGE_IN_DESTROY_SYNC_INFO_MOD_OBJ;
1385 1647
1386typedef struct PVRSRV_BRIDGE_IN_MODIFY_PENDING_SYNC_OPS_TAG 1648typedef struct PVRSRV_BRIDGE_IN_MODIFY_PENDING_SYNC_OPS_TAG
1387{ 1649{
1388 IMG_UINT32 ui32BridgeFlags; 1650 IMG_UINT32 ui32BridgeFlags;
1651#if defined (SUPPORT_SID_INTERFACE)
1652 IMG_SID hKernelSyncInfoModObj;
1653 IMG_SID hKernelSyncInfo;
1654#else
1389 IMG_HANDLE hKernelSyncInfoModObj; 1655 IMG_HANDLE hKernelSyncInfoModObj;
1390 IMG_HANDLE hKernelSyncInfo; 1656 IMG_HANDLE hKernelSyncInfo;
1657#endif
1391 IMG_UINT32 ui32ModifyFlags; 1658 IMG_UINT32 ui32ModifyFlags;
1392 1659
1393} PVRSRV_BRIDGE_IN_MODIFY_PENDING_SYNC_OPS; 1660} PVRSRV_BRIDGE_IN_MODIFY_PENDING_SYNC_OPS;
@@ -1395,7 +1662,11 @@ typedef struct PVRSRV_BRIDGE_IN_MODIFY_PENDING_SYNC_OPS_TAG
1395typedef struct PVRSRV_BRIDGE_IN_MODIFY_COMPLETE_SYNC_OPS_TAG 1662typedef struct PVRSRV_BRIDGE_IN_MODIFY_COMPLETE_SYNC_OPS_TAG
1396{ 1663{
1397 IMG_UINT32 ui32BridgeFlags; 1664 IMG_UINT32 ui32BridgeFlags;
1665#if defined (SUPPORT_SID_INTERFACE)
1666 IMG_SID hKernelSyncInfoModObj;
1667#else
1398 IMG_HANDLE hKernelSyncInfoModObj; 1668 IMG_HANDLE hKernelSyncInfoModObj;
1669#endif
1399} PVRSRV_BRIDGE_IN_MODIFY_COMPLETE_SYNC_OPS; 1670} PVRSRV_BRIDGE_IN_MODIFY_COMPLETE_SYNC_OPS;
1400 1671
1401typedef struct PVRSRV_BRIDGE_OUT_MODIFY_PENDING_SYNC_OPS_TAG 1672typedef struct PVRSRV_BRIDGE_OUT_MODIFY_PENDING_SYNC_OPS_TAG
@@ -1408,16 +1679,56 @@ typedef struct PVRSRV_BRIDGE_OUT_MODIFY_PENDING_SYNC_OPS_TAG
1408 1679
1409} PVRSRV_BRIDGE_OUT_MODIFY_PENDING_SYNC_OPS; 1680} PVRSRV_BRIDGE_OUT_MODIFY_PENDING_SYNC_OPS;
1410 1681
1682typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_TAKE_TOKEN_TAG
1683{
1684 IMG_UINT32 ui32BridgeFlags;
1685#if defined (SUPPORT_SID_INTERFACE)
1686 IMG_SID hKernelSyncInfo;
1687#else
1688 IMG_HANDLE hKernelSyncInfo;
1689#endif
1690
1691} PVRSRV_BRIDGE_IN_SYNC_OPS_TAKE_TOKEN;
1692
1693typedef struct PVRSRV_BRIDGE_OUT_SYNC_OPS_TAKE_TOKEN_TAG
1694{
1695 PVRSRV_ERROR eError;
1696
1697 IMG_UINT32 ui32ReadOpsPending;
1698 IMG_UINT32 ui32WriteOpsPending;
1699
1700} PVRSRV_BRIDGE_OUT_SYNC_OPS_TAKE_TOKEN;
1701
1702typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_TOKEN_TAG
1703{
1704 IMG_UINT32 ui32BridgeFlags;
1705#if defined (SUPPORT_SID_INTERFACE)
1706 IMG_SID hKernelSyncInfo;
1707#else
1708 IMG_HANDLE hKernelSyncInfo;
1709#endif
1710 IMG_UINT32 ui32ReadOpsPendingSnapshot;
1711 IMG_UINT32 ui32WriteOpsPendingSnapshot;
1712} PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_TOKEN;
1713
1411typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_MOD_OBJ_TAG 1714typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_MOD_OBJ_TAG
1412{ 1715{
1413 IMG_UINT32 ui32BridgeFlags; 1716 IMG_UINT32 ui32BridgeFlags;
1717#if defined (SUPPORT_SID_INTERFACE)
1718 IMG_SID hKernelSyncInfoModObj;
1719#else
1414 IMG_HANDLE hKernelSyncInfoModObj; 1720 IMG_HANDLE hKernelSyncInfoModObj;
1721#endif
1415} PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_MOD_OBJ; 1722} PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_MOD_OBJ;
1416 1723
1417typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_DELTA_TAG 1724typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_DELTA_TAG
1418{ 1725{
1419 IMG_UINT32 ui32BridgeFlags; 1726 IMG_UINT32 ui32BridgeFlags;
1727#if defined (SUPPORT_SID_INTERFACE)
1728 IMG_SID hKernelSyncInfo;
1729#else
1420 IMG_HANDLE hKernelSyncInfo; 1730 IMG_HANDLE hKernelSyncInfo;
1731#endif
1421 IMG_UINT32 ui32Delta; 1732 IMG_UINT32 ui32Delta;
1422} PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_DELTA; 1733} PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_DELTA;
1423 1734
@@ -1425,23 +1736,41 @@ typedef struct PVRSRV_BRIDGE_IN_ALLOC_SYNC_INFO_TAG
1425{ 1736{
1426 IMG_UINT32 ui32BridgeFlags; 1737 IMG_UINT32 ui32BridgeFlags;
1427 1738
1739#if defined (SUPPORT_SID_INTERFACE)
1740 IMG_SID hDevCookie;
1741#else
1428 IMG_HANDLE hDevCookie; 1742 IMG_HANDLE hDevCookie;
1743#endif
1429} PVRSRV_BRIDGE_IN_ALLOC_SYNC_INFO; 1744} PVRSRV_BRIDGE_IN_ALLOC_SYNC_INFO;
1430 1745
1431typedef struct PVRSRV_BRIDGE_OUT_ALLOC_SYNC_INFO_TAG 1746typedef struct PVRSRV_BRIDGE_OUT_ALLOC_SYNC_INFO_TAG
1432{ 1747{
1433 PVRSRV_ERROR eError; 1748 PVRSRV_ERROR eError;
1434 1749
1750#if defined (SUPPORT_SID_INTERFACE)
1751 IMG_SID hKernelSyncInfo;
1752#else
1435 IMG_HANDLE hKernelSyncInfo; 1753 IMG_HANDLE hKernelSyncInfo;
1754#endif
1436} PVRSRV_BRIDGE_OUT_ALLOC_SYNC_INFO; 1755} PVRSRV_BRIDGE_OUT_ALLOC_SYNC_INFO;
1437 1756
1438typedef struct PVRSRV_BRIDGE_IN_FREE_SYNC_INFO_TAG 1757typedef struct PVRSRV_BRIDGE_IN_FREE_SYNC_INFO_TAG
1439{ 1758{
1440 IMG_UINT32 ui32BridgeFlags; 1759 IMG_UINT32 ui32BridgeFlags;
1441 1760
1761#if defined (SUPPORT_SID_INTERFACE)
1762 IMG_SID hKernelSyncInfo;
1763#else
1442 IMG_HANDLE hKernelSyncInfo; 1764 IMG_HANDLE hKernelSyncInfo;
1765#endif
1443} PVRSRV_BRIDGE_IN_FREE_SYNC_INFO; 1766} PVRSRV_BRIDGE_IN_FREE_SYNC_INFO;
1444 1767
1768typedef struct PVRSRV_BRIDGE_IN_CHG_DEV_MEM_ATTRIBS_TAG
1769{
1770 IMG_SID hKernelMemInfo;
1771 IMG_UINT32 ui32Attribs;
1772} PVRSRV_BRIDGE_IN_CHG_DEV_MEM_ATTRIBS;
1773
1445 1774
1446#if defined (__cplusplus) 1775#if defined (__cplusplus)
1447} 1776}