diff options
Diffstat (limited to 'drivers/gpu/pvr/services4/include/pvr_bridge.h')
| -rwxr-xr-x[-rw-r--r--] | drivers/gpu/pvr/services4/include/pvr_bridge.h | 531 |
1 files changed, 70 insertions, 461 deletions
diff --git a/drivers/gpu/pvr/services4/include/pvr_bridge.h b/drivers/gpu/pvr/services4/include/pvr_bridge.h index 71813c47e2d..cf84f76082f 100644..100755 --- a/drivers/gpu/pvr/services4/include/pvr_bridge.h +++ b/drivers/gpu/pvr/services4/include/pvr_bridge.h @@ -84,9 +84,14 @@ extern "C" { /* * Note *REMEMBER* to update PVRSRV_BRIDGE_LAST_CMD (below) if you add any new * bridge commands! + * The command number of PVRSRV_BRIDGE_UM_KM_COMPAT_CHECK needs to be maintained as 0 across previous ddks, for compatibility check command to execute successfully */ -#define PVRSRV_BRIDGE_CORE_CMD_FIRST 0UL +#define PVRSRV_BRIDGE_UMKM_CMD_FIRST 0UL +#define PVRSRV_BRIDGE_UM_KM_COMPAT_CHECK PVRSRV_IOWR(0) +#define PVRSRV_BRIDGE_UMKM_CMD_LAST (0) + +#define PVRSRV_BRIDGE_CORE_CMD_FIRST (PVRSRV_BRIDGE_UMKM_CMD_LAST + 1) #define PVRSRV_BRIDGE_ENUM_DEVICES PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+0) /*!< enumerate device bridge index */ #define PVRSRV_BRIDGE_ACQUIRE_DEVICEINFO PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+1) /*!< acquire device data bridge index */ #define PVRSRV_BRIDGE_RELEASE_DEVICEINFO PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+2) /*!< release device data bridge index */ @@ -109,27 +114,19 @@ extern "C" { #define PVRSRV_BRIDGE_UNMAP_EXT_MEMORY PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+19) #define PVRSRV_BRIDGE_MAP_DEV_MEMORY PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+20) #define PVRSRV_BRIDGE_UNMAP_DEV_MEMORY PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+21) -#define PVRSRV_BRIDGE_MAP_DEVICECLASS_MEMORY PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+22) -#define PVRSRV_BRIDGE_UNMAP_DEVICECLASS_MEMORY PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+23) -#define PVRSRV_BRIDGE_MAP_MEM_INFO_TO_USER PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+24) -#define PVRSRV_BRIDGE_UNMAP_MEM_INFO_FROM_USER PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+25) -#define PVRSRV_BRIDGE_EXPORT_DEVICEMEM PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+26) -#define PVRSRV_BRIDGE_RELEASE_MMAP_DATA PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+27) -#define PVRSRV_BRIDGE_CHG_DEV_MEM_ATTRIBS PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+28) -#define PVRSRV_BRIDGE_MAP_DEV_MEMORY_2 PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+29) -#define PVRSRV_BRIDGE_EXPORT_DEVICEMEM_2 PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+30) - -#define PVRSRV_BRIDGE_MULTI_MANAGE_DEV_MEM PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+31) -#define PVRSRV_BRIDGE_CORE_CMD_RESERVED_1 PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+32) -#define PVRSRV_BRIDGE_CORE_CMD_RESERVED_2 PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+33) -#define PVRSRV_BRIDGE_CORE_CMD_RESERVED_3 PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+34) - +#define PVRSRV_BRIDGE_MAP_MEM_INFO_TO_USER PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+22) +#define PVRSRV_BRIDGE_UNMAP_MEM_INFO_FROM_USER PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+23) +#define PVRSRV_BRIDGE_EXPORT_DEVICEMEM PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+24) +#define PVRSRV_BRIDGE_RELEASE_MMAP_DATA PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+25) +#define PVRSRV_BRIDGE_CHG_DEV_MEM_ATTRIBS PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+26) +#define PVRSRV_BRIDGE_MAP_DEV_MEMORY_2 PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+27) +#define PVRSRV_BRIDGE_EXPORT_DEVICEMEM_2 PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+28) #if defined (SUPPORT_ION) -#define PVRSRV_BRIDGE_MAP_ION_HANDLE PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+35) -#define PVRSRV_BRIDGE_UNMAP_ION_HANDLE PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+36) -#define PVRSRV_BRIDGE_CORE_CMD_LAST (PVRSRV_BRIDGE_CORE_CMD_FIRST+37) +#define PVRSRV_BRIDGE_MAP_ION_HANDLE PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+29) +#define PVRSRV_BRIDGE_UNMAP_ION_HANDLE PVRSRV_IOWR(PVRSRV_BRIDGE_CORE_CMD_FIRST+30) +#define PVRSRV_BRIDGE_CORE_CMD_LAST (PVRSRV_BRIDGE_CORE_CMD_FIRST+30) #else -#define PVRSRV_BRIDGE_CORE_CMD_LAST (PVRSRV_BRIDGE_CORE_CMD_FIRST+34) +#define PVRSRV_BRIDGE_CORE_CMD_LAST (PVRSRV_BRIDGE_CORE_CMD_FIRST+28) #endif /* SIM */ #define PVRSRV_BRIDGE_SIM_CMD_FIRST (PVRSRV_BRIDGE_CORE_CMD_LAST+1) @@ -202,8 +199,10 @@ extern "C" { /* device class enum */ #define PVRSRV_BRIDGE_DEVCLASS_CMD_FIRST (PVRSRV_BRIDGE_OEM_CMD_LAST+1) -#define PVRSRV_BRIDGE_ENUM_CLASS PVRSRV_IOWR(PVRSRV_BRIDGE_DEVCLASS_CMD_FIRST+0) -#define PVRSRV_BRIDGE_DEVCLASS_CMD_LAST (PVRSRV_BRIDGE_DEVCLASS_CMD_FIRST+0) +#define PVRSRV_BRIDGE_MAP_DEVICECLASS_MEMORY PVRSRV_IOWR(PVRSRV_BRIDGE_DEVCLASS_CMD_FIRST+0) +#define PVRSRV_BRIDGE_UNMAP_DEVICECLASS_MEMORY PVRSRV_IOWR(PVRSRV_BRIDGE_DEVCLASS_CMD_FIRST+1) +#define PVRSRV_BRIDGE_ENUM_CLASS PVRSRV_IOWR(PVRSRV_BRIDGE_DEVCLASS_CMD_FIRST+2) +#define PVRSRV_BRIDGE_DEVCLASS_CMD_LAST (PVRSRV_BRIDGE_DEVCLASS_CMD_FIRST+2) /* display class API */ #define PVRSRV_BRIDGE_DISPCLASS_CMD_FIRST (PVRSRV_BRIDGE_DEVCLASS_CMD_LAST+1) @@ -310,11 +309,7 @@ typedef struct PVRSRV_BRIDGE_PACKAGE_TAG IMG_VOID *pvParamOut; /*!< output data buffer */ IMG_UINT32 ui32OutBufferSize; /*!< size of output data buffer */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelServices; /*!< kernel servcies handle */ -#else IMG_HANDLE hKernelServices; /*!< kernel servcies handle */ -#endif }PVRSRV_BRIDGE_PACKAGE; @@ -360,11 +355,7 @@ typedef struct PVRSRV_BRIDGE_IN_ENUMCLASS_TAG typedef struct PVRSRV_BRIDGE_IN_CLOSE_DISPCLASS_DEVICE_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif } PVRSRV_BRIDGE_IN_CLOSE_DISPCLASS_DEVICE; @@ -374,11 +365,7 @@ typedef struct PVRSRV_BRIDGE_IN_CLOSE_DISPCLASS_DEVICE_TAG typedef struct PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_FORMATS_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif } PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_FORMATS; @@ -388,11 +375,7 @@ typedef struct PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_FORMATS_TAG typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_SYSBUFFER_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif } PVRSRV_BRIDGE_IN_GET_DISPCLASS_SYSBUFFER; @@ -402,11 +385,7 @@ typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_SYSBUFFER_TAG typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_INFO_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif } PVRSRV_BRIDGE_IN_GET_DISPCLASS_INFO; @@ -416,11 +395,7 @@ typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_INFO_TAG typedef struct PVRSRV_BRIDGE_IN_CLOSE_BUFFERCLASS_DEVICE_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif } PVRSRV_BRIDGE_IN_CLOSE_BUFFERCLASS_DEVICE; @@ -430,11 +405,7 @@ typedef struct PVRSRV_BRIDGE_IN_CLOSE_BUFFERCLASS_DEVICE_TAG typedef struct PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_INFO_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif } PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_INFO; @@ -444,11 +415,7 @@ typedef struct PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_INFO_TAG typedef struct PVRSRV_BRIDGE_IN_RELEASE_DEVICEINFO_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif } PVRSRV_BRIDGE_IN_RELEASE_DEVICEINFO; @@ -471,13 +438,8 @@ typedef struct PVRSRV_BRIDGE_IN_FREE_CLASSDEVICEINFO_TAG typedef struct PVRSRV_BRIDGE_IN_GET_DEVMEM_HEAPINFO_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; - IMG_SID hDevMemContext; -#else IMG_HANDLE hDevCookie; IMG_HANDLE hDevMemContext; -#endif }PVRSRV_BRIDGE_IN_GET_DEVMEM_HEAPINFO; @@ -488,11 +450,7 @@ typedef struct PVRSRV_BRIDGE_IN_GET_DEVMEM_HEAPINFO_TAG typedef struct PVRSRV_BRIDGE_IN_CREATE_DEVMEMCONTEXT_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif }PVRSRV_BRIDGE_IN_CREATE_DEVMEMCONTEXT; @@ -503,13 +461,8 @@ typedef struct PVRSRV_BRIDGE_IN_CREATE_DEVMEMCONTEXT_TAG typedef struct PVRSRV_BRIDGE_IN_DESTROY_DEVMEMCONTEXT_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; - IMG_SID hDevMemContext; -#else IMG_HANDLE hDevCookie; IMG_HANDLE hDevMemContext; -#endif }PVRSRV_BRIDGE_IN_DESTROY_DEVMEMCONTEXT; @@ -520,16 +473,11 @@ typedef struct PVRSRV_BRIDGE_IN_DESTROY_DEVMEMCONTEXT_TAG typedef struct PVRSRV_BRIDGE_IN_ALLOCDEVICEMEM_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; - IMG_SID hDevMemHeap; -#else IMG_HANDLE hDevCookie; IMG_HANDLE hDevMemHeap; -#endif IMG_UINT32 ui32Attribs; - IMG_SIZE_T ui32Size; - IMG_SIZE_T ui32Alignment; + IMG_SIZE_T uSize; + IMG_SIZE_T uAlignment; IMG_PVOID pvPrivData; IMG_UINT32 ui32PrivDataLength; @@ -545,11 +493,7 @@ typedef struct PVRSRV_BRIDGE_IN_ALLOCDEVICEMEM_TAG typedef struct PVRSRV_BRIDGE_IN_MAPMEMINFOTOUSER_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif }PVRSRV_BRIDGE_IN_MAPMEMINFOTOUSER; @@ -559,17 +503,9 @@ typedef struct PVRSRV_BRIDGE_IN_MAPMEMINFOTOUSER_TAG typedef struct PVRSRV_BRIDGE_IN_UNMAPMEMINFOFROMUSER_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif IMG_PVOID pvLinAddr; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hMappingInfo; -#else IMG_HANDLE hMappingInfo; -#endif }PVRSRV_BRIDGE_IN_UNMAPMEMINFOFROMUSER; @@ -579,13 +515,8 @@ typedef struct PVRSRV_BRIDGE_IN_UNMAPMEMINFOFROMUSER_TAG typedef struct PVRSRV_BRIDGE_IN_FREEDEVICEMEM_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; - IMG_SID hKernelMemInfo; -#else IMG_HANDLE hDevCookie; PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif PVRSRV_CLIENT_MEM_INFO sClientMemInfo; }PVRSRV_BRIDGE_IN_FREEDEVICEMEM; @@ -596,32 +527,27 @@ typedef struct PVRSRV_BRIDGE_IN_FREEDEVICEMEM_TAG typedef struct PVRSRV_BRIDGE_IN_EXPORTDEVICEMEM_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; - IMG_SID hKernelMemInfo; -#else IMG_HANDLE hDevCookie; PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif }PVRSRV_BRIDGE_IN_EXPORTDEVICEMEM; /****************************************************************************** * 'bridge in' map ion handle *****************************************************************************/ +#define ION_IMPORT_MAX_FDS 3 +#define ION_IMPORT_MAX_CHUNK_COUNT 3 typedef struct _PVRSRV_BRIDGE_IN_MAP_ION_HANDLE_ { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ - IMG_HANDLE handle; + IMG_UINT32 ui32NumFDs; + IMG_INT32 ai32BufferFDs[ION_IMPORT_MAX_FDS]; IMG_UINT32 ui32Attribs; - IMG_SIZE_T ui32Size; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; - IMG_SID hDevMemContext; -#else + IMG_UINT32 ui32ChunkCount; + IMG_SIZE_T auiOffset[ION_IMPORT_MAX_CHUNK_COUNT]; + IMG_SIZE_T auiSize[ION_IMPORT_MAX_CHUNK_COUNT]; IMG_HANDLE hDevCookie; - IMG_HANDLE hDevMemContext; -#endif + IMG_HANDLE hDevMemHeap; } PVRSRV_BRIDGE_IN_MAP_ION_HANDLE; /****************************************************************************** @@ -630,11 +556,7 @@ typedef struct _PVRSRV_BRIDGE_IN_MAP_ION_HANDLE_ typedef struct PVRSRV_BRIDGE_IN_UNMAP_ION_HANDLE_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif }PVRSRV_BRIDGE_IN_UNMAP_ION_HANDLE; /****************************************************************************** @@ -653,12 +575,8 @@ typedef struct PVRSRV_BRIDGE_IN_GETFREEDEVICEMEM_TAG typedef struct PVRSRV_BRIDGE_IN_CREATECOMMANDQUEUE_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif - IMG_SIZE_T ui32QueueSize; + IMG_SIZE_T uQueueSize; }PVRSRV_BRIDGE_IN_CREATECOMMANDQUEUE; @@ -669,11 +587,7 @@ typedef struct PVRSRV_BRIDGE_IN_CREATECOMMANDQUEUE_TAG typedef struct PVRSRV_BRIDGE_IN_DESTROYCOMMANDQUEUE_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif PVRSRV_QUEUE_INFO *psQueueInfo; }PVRSRV_BRIDGE_IN_DESTROYCOMMANDQUEUE; @@ -685,11 +599,7 @@ typedef struct PVRSRV_BRIDGE_IN_DESTROYCOMMANDQUEUE_TAG typedef struct PVRSRV_BRIDGE_IN_MHANDLE_TO_MMAP_DATA_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hMHandle; /* Handle associated with the memory that needs to be mapped */ -#else IMG_HANDLE hMHandle; /* Handle associated with the memory that needs to be mapped */ -#endif } PVRSRV_BRIDGE_IN_MHANDLE_TO_MMAP_DATA; @@ -699,11 +609,7 @@ typedef struct PVRSRV_BRIDGE_IN_MHANDLE_TO_MMAP_DATA_TAG typedef struct PVRSRV_BRIDGE_IN_RELEASE_MMAP_DATA_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hMHandle; /* Handle associated with the memory that needs to be mapped */ -#else IMG_HANDLE hMHandle; /* Handle associated with the memory that needs to be mapped */ -#endif } PVRSRV_BRIDGE_IN_RELEASE_MMAP_DATA; @@ -713,14 +619,10 @@ typedef struct PVRSRV_BRIDGE_IN_RELEASE_MMAP_DATA_TAG typedef struct PVRSRV_BRIDGE_IN_RESERVE_DEV_VIRTMEM_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevMemHeap; -#else IMG_HANDLE hDevMemHeap; -#endif IMG_DEV_VIRTADDR *psDevVAddr; - IMG_SIZE_T ui32Size; - IMG_SIZE_T ui32Alignment; + IMG_SIZE_T uSize; + IMG_SIZE_T uAlignment; }PVRSRV_BRIDGE_IN_RESERVE_DEV_VIRTMEM; @@ -730,11 +632,7 @@ typedef struct PVRSRV_BRIDGE_IN_RESERVE_DEV_VIRTMEM_TAG typedef struct PVRSRV_BRIDGE_OUT_CONNECT_SERVICES_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelServices; -#else IMG_HANDLE hKernelServices; -#endif }PVRSRV_BRIDGE_OUT_CONNECT_SERVICES; /****************************************************************************** @@ -743,13 +641,8 @@ typedef struct PVRSRV_BRIDGE_OUT_CONNECT_SERVICES_TAG typedef struct PVRSRV_BRIDGE_OUT_RESERVE_DEV_VIRTMEM_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; - IMG_SID hKernelSyncInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; PVRSRV_KERNEL_SYNC_INFO *psKernelSyncInfo; -#endif PVRSRV_CLIENT_MEM_INFO sClientMemInfo; PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; @@ -762,11 +655,7 @@ typedef struct PVRSRV_BRIDGE_OUT_RESERVE_DEV_VIRTMEM_TAG typedef struct PVRSRV_BRIDGE_IN_FREE_DEV_VIRTMEM_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif PVRSRV_CLIENT_MEM_INFO sClientMemInfo; PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; @@ -779,13 +668,8 @@ typedef struct PVRSRV_BRIDGE_IN_FREE_DEV_VIRTMEM_TAG typedef struct PVRSRV_BRIDGE_IN_MAP_DEV_MEMORY_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; - IMG_SID hDstDevMemHeap; -#else IMG_HANDLE hKernelMemInfo; IMG_HANDLE hDstDevMemHeap; -#endif }PVRSRV_BRIDGE_IN_MAP_DEV_MEMORY; @@ -796,11 +680,7 @@ typedef struct PVRSRV_BRIDGE_IN_MAP_DEV_MEMORY_TAG typedef struct PVRSRV_BRIDGE_OUT_MAP_DEV_MEMORY_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDstKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psDstKernelMemInfo; -#endif PVRSRV_CLIENT_MEM_INFO sDstClientMemInfo; PVRSRV_CLIENT_SYNC_INFO sDstClientSyncInfo; @@ -813,11 +693,7 @@ typedef struct PVRSRV_BRIDGE_OUT_MAP_DEV_MEMORY_TAG typedef struct PVRSRV_BRIDGE_IN_UNMAP_DEV_MEMORY_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif PVRSRV_CLIENT_MEM_INFO sClientMemInfo; PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; @@ -830,11 +706,7 @@ typedef struct PVRSRV_BRIDGE_IN_UNMAP_DEV_MEMORY_TAG typedef struct PVRSRV_BRIDGE_IN_MAP_EXT_MEMORY_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif IMG_SYS_PHYADDR *psSysPAddr; IMG_UINT32 ui32Flags; @@ -858,13 +730,8 @@ typedef struct PVRSRV_BRIDGE_IN_UNMAP_EXT_MEMORY_TAG typedef struct PVRSRV_BRIDGE_IN_MAP_DEVICECLASS_MEMORY_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceClassBuffer; - IMG_SID hDevMemContext; -#else IMG_HANDLE hDeviceClassBuffer; IMG_HANDLE hDevMemContext; -#endif }PVRSRV_BRIDGE_IN_MAP_DEVICECLASS_MEMORY; @@ -877,13 +744,8 @@ typedef struct PVRSRV_BRIDGE_OUT_MAP_DEVICECLASS_MEMORY_TAG PVRSRV_ERROR eError; PVRSRV_CLIENT_MEM_INFO sClientMemInfo; PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; - IMG_SID hMappingInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; IMG_HANDLE hMappingInfo; -#endif }PVRSRV_BRIDGE_OUT_MAP_DEVICECLASS_MEMORY; @@ -894,11 +756,7 @@ typedef struct PVRSRV_BRIDGE_OUT_MAP_DEVICECLASS_MEMORY_TAG typedef struct PVRSRV_BRIDGE_IN_UNMAP_DEVICECLASS_MEMORY_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif PVRSRV_CLIENT_MEM_INFO sClientMemInfo; PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; @@ -911,11 +769,7 @@ typedef struct PVRSRV_BRIDGE_IN_UNMAP_DEVICECLASS_MEMORY_TAG typedef struct PVRSRV_BRIDGE_IN_PDUMP_MEMPOL_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif IMG_UINT32 ui32Offset; IMG_UINT32 ui32Value; IMG_UINT32 ui32Mask; @@ -930,11 +784,7 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_MEMPOL_TAG typedef struct PVRSRV_BRIDGE_IN_PDUMP_SYNCPOL_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfo; -#else PVRSRV_KERNEL_SYNC_INFO *psKernelSyncInfo; -#endif IMG_BOOL bIsRead; IMG_BOOL bUseLastOpDumpVal; IMG_UINT32 ui32Value; @@ -951,11 +801,7 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPMEM_TAG IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ IMG_PVOID pvLinAddr; IMG_PVOID pvAltLinAddr; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif IMG_UINT32 ui32Offset; IMG_UINT32 ui32Bytes; IMG_UINT32 ui32Flags; @@ -970,11 +816,7 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPSYNC_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ IMG_PVOID pvAltLinAddr; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfo; -#else PVRSRV_KERNEL_SYNC_INFO *psKernelSyncInfo; -#endif IMG_UINT32 ui32Offset; IMG_UINT32 ui32Bytes; @@ -987,11 +829,7 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPSYNC_TAG typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPREG_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif PVRSRV_HWREG sHWReg; IMG_UINT32 ui32Flags; IMG_CHAR szRegRegion[32]; @@ -1004,11 +842,7 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPREG_TAG typedef struct PVRSRV_BRIDGE_IN_PDUMP_REGPOL_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif PVRSRV_HWREG sHWReg; IMG_UINT32 ui32Mask; IMG_UINT32 ui32Flags; @@ -1032,13 +866,8 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPPDREG_TAG typedef struct PVRSRV_BRIDGE_IN_PDUMP_MEMPAGES_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; - IMG_SID hKernelMemInfo; -#else IMG_HANDLE hDevCookie; IMG_HANDLE hKernelMemInfo; -#endif IMG_DEV_PHYADDR *pPages; IMG_UINT32 ui32NumPages; IMG_DEV_VIRTADDR sDevVAddr; @@ -1078,22 +907,14 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_SETFRAME_TAG typedef struct PVRSRV_BRIDGE_IN_PDUMP_BITMAP_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif IMG_CHAR szFileName[PVRSRV_PDUMP_MAX_FILENAME_SIZE]; IMG_UINT32 ui32FileOffset; IMG_UINT32 ui32Width; IMG_UINT32 ui32Height; IMG_UINT32 ui32StrideInBytes; IMG_DEV_VIRTADDR sDevBaseAddr; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevMemContext; -#else IMG_HANDLE hDevMemContext; -#endif IMG_UINT32 ui32Size; PDUMP_PIXEL_FORMAT ePixelFormat; PDUMP_MEM_FORMAT eMemFormat; @@ -1108,11 +929,7 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_BITMAP_TAG typedef struct PVRSRV_BRIDGE_IN_PDUMP_READREG_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif IMG_CHAR szFileName[PVRSRV_PDUMP_MAX_FILENAME_SIZE]; IMG_UINT32 ui32FileOffset; IMG_UINT32 ui32Address; @@ -1136,11 +953,7 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_DRIVERINFO_TAG typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPPDDEVPADDR_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else IMG_HANDLE hKernelMemInfo; -#endif IMG_UINT32 ui32Offset; IMG_DEV_PHYADDR sPDDevPAddr; }PVRSRV_BRIDGE_IN_PDUMP_DUMPPDDEVPADDR; @@ -1151,11 +964,7 @@ typedef struct PVRSRV_BRIDGE_IN_PDUMP_DUMPPDDEVPADDR_TAG typedef struct PVRSRV_BRIDGE_PDUM_IN_CYCLE_COUNT_REG_READ_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif IMG_UINT32 ui32RegOffset; IMG_BOOL bLastFrame; }PVRSRV_BRIDGE_IN_PDUMP_CYCLE_COUNT_REG_READ; @@ -1183,11 +992,7 @@ typedef struct PVRSRV_BRIDGE_OUT_ACQUIRE_DEVICEINFO_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif } PVRSRV_BRIDGE_OUT_ACQUIRE_DEVICEINFO; @@ -1211,11 +1016,7 @@ typedef struct PVRSRV_BRIDGE_IN_OPEN_DISPCLASS_DEVICE_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ IMG_UINT32 ui32DeviceID; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif }PVRSRV_BRIDGE_IN_OPEN_DISPCLASS_DEVICE; @@ -1225,11 +1026,7 @@ typedef struct PVRSRV_BRIDGE_IN_OPEN_DISPCLASS_DEVICE_TAG typedef struct PVRSRV_BRIDGE_OUT_OPEN_DISPCLASS_DEVICE_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif }PVRSRV_BRIDGE_OUT_OPEN_DISPCLASS_DEVICE; @@ -1240,16 +1037,11 @@ typedef struct PVRSRV_BRIDGE_OUT_OPEN_DISPCLASS_DEVICE_TAG typedef struct PVRSRV_BRIDGE_IN_WRAP_EXT_MEMORY_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; - IMG_SID hDevMemContext; -#else IMG_HANDLE hDevCookie; IMG_HANDLE hDevMemContext; -#endif IMG_VOID *pvLinAddr; - IMG_SIZE_T ui32ByteSize; - IMG_SIZE_T ui32PageOffset; + IMG_SIZE_T uByteSize; + IMG_SIZE_T uPageOffset; IMG_BOOL bPhysContig; IMG_UINT32 ui32NumPageTableEntries; IMG_SYS_PHYADDR *psSysPAddr; @@ -1274,11 +1066,7 @@ typedef struct PVRSRV_BRIDGE_OUT_WRAP_EXT_MEMORY_TAG typedef struct PVRSRV_BRIDGE_IN_UNWRAP_EXT_MEMORY_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else IMG_HANDLE hKernelMemInfo; -#endif PVRSRV_CLIENT_MEM_INFO sClientMemInfo; PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; @@ -1308,11 +1096,7 @@ typedef struct PVRSRV_BRIDGE_OUT_ENUM_DISPCLASS_FORMATS_TAG typedef struct PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_DIMS_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif DISPLAY_FORMAT sFormat; }PVRSRV_BRIDGE_IN_ENUM_DISPCLASS_DIMS; @@ -1347,11 +1131,7 @@ typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_INFO_TAG typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_SYSBUFFER_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hBuffer; -#else IMG_HANDLE hBuffer; -#endif }PVRSRV_BRIDGE_OUT_GET_DISPCLASS_SYSBUFFER; @@ -1362,11 +1142,7 @@ typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_SYSBUFFER_TAG typedef struct PVRSRV_BRIDGE_IN_CREATE_DISPCLASS_SWAPCHAIN_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif IMG_UINT32 ui32Flags; DISPLAY_SURF_ATTRIBUTES sDstSurfAttrib; DISPLAY_SURF_ATTRIBUTES sSrcSurfAttrib; @@ -1383,11 +1159,7 @@ typedef struct PVRSRV_BRIDGE_IN_CREATE_DISPCLASS_SWAPCHAIN_TAG typedef struct PVRSRV_BRIDGE_OUT_CREATE_DISPCLASS_SWAPCHAIN_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hSwapChain; -#else IMG_HANDLE hSwapChain; -#endif IMG_UINT32 ui32SwapChainID; } PVRSRV_BRIDGE_OUT_CREATE_DISPCLASS_SWAPCHAIN; @@ -1399,13 +1171,8 @@ typedef struct PVRSRV_BRIDGE_OUT_CREATE_DISPCLASS_SWAPCHAIN_TAG typedef struct PVRSRV_BRIDGE_IN_DESTROY_DISPCLASS_SWAPCHAIN_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; - IMG_SID hSwapChain; -#else IMG_HANDLE hDeviceKM; IMG_HANDLE hSwapChain; -#endif } PVRSRV_BRIDGE_IN_DESTROY_DISPCLASS_SWAPCHAIN; @@ -1416,13 +1183,8 @@ typedef struct PVRSRV_BRIDGE_IN_DESTROY_DISPCLASS_SWAPCHAIN_TAG typedef struct PVRSRV_BRIDGE_IN_SET_DISPCLASS_RECT_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; - IMG_SID hSwapChain; -#else IMG_HANDLE hDeviceKM; IMG_HANDLE hSwapChain; -#endif IMG_RECT sRect; } PVRSRV_BRIDGE_IN_SET_DISPCLASS_RECT; @@ -1434,13 +1196,8 @@ typedef struct PVRSRV_BRIDGE_IN_SET_DISPCLASS_RECT_TAG typedef struct PVRSRV_BRIDGE_IN_SET_DISPCLASS_COLOURKEY_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; - IMG_SID hSwapChain; -#else IMG_HANDLE hDeviceKM; IMG_HANDLE hSwapChain; -#endif IMG_UINT32 ui32CKColour; } PVRSRV_BRIDGE_IN_SET_DISPCLASS_COLOURKEY; @@ -1452,13 +1209,8 @@ typedef struct PVRSRV_BRIDGE_IN_SET_DISPCLASS_COLOURKEY_TAG typedef struct PVRSRV_BRIDGE_IN_GET_DISPCLASS_BUFFERS_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; - IMG_SID hSwapChain; -#else IMG_HANDLE hDeviceKM; IMG_HANDLE hSwapChain; -#endif } PVRSRV_BRIDGE_IN_GET_DISPCLASS_BUFFERS; @@ -1470,11 +1222,7 @@ typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_BUFFERS_TAG { PVRSRV_ERROR eError; IMG_UINT32 ui32BufferCount; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID ahBuffer[PVRSRV_MAX_DC_SWAPCHAIN_BUFFERS]; -#else IMG_HANDLE ahBuffer[PVRSRV_MAX_DC_SWAPCHAIN_BUFFERS]; -#endif IMG_SYS_PHYADDR asPhyAddr[PVRSRV_MAX_DC_SWAPCHAIN_BUFFERS]; } PVRSRV_BRIDGE_OUT_GET_DISPCLASS_BUFFERS; @@ -1485,37 +1233,24 @@ typedef struct PVRSRV_BRIDGE_OUT_GET_DISPCLASS_BUFFERS_TAG typedef struct PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_BUFFER_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; - IMG_SID hBuffer; -#else IMG_HANDLE hDeviceKM; IMG_HANDLE hBuffer; -#endif IMG_UINT32 ui32SwapInterval; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hPrivateTag; -#else IMG_HANDLE hPrivateTag; -#endif IMG_UINT32 ui32ClipRectCount; IMG_RECT sClipRect[PVRSRV_MAX_DC_CLIP_RECTS]; } PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_BUFFER; + /****************************************************************************** - * 'bridge in' swap to buffer + * 'bridge in' swap to buffer 2 *****************************************************************************/ typedef struct PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_BUFFER2_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; - IMG_SID hSwapChain; -#else IMG_HANDLE hDeviceKM; IMG_HANDLE hSwapChain; -#endif IMG_UINT32 ui32SwapInterval; IMG_UINT32 ui32NumMemInfos; @@ -1527,19 +1262,26 @@ typedef struct PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_BUFFER2_TAG } PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_BUFFER2; + +/****************************************************************************** + * 'bridge out' swap to buffer 2 + *****************************************************************************/ +typedef struct PVRSRV_BRIDGE_OUT_SWAP_DISPCLASS_TO_BUFFER2_TAG +{ + PVRSRV_ERROR eError; + IMG_HANDLE hFence; + +} PVRSRV_BRIDGE_OUT_SWAP_DISPCLASS_TO_BUFFER2; + + /****************************************************************************** * 'bridge in' swap to system buffer (primary) *****************************************************************************/ typedef struct PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_SYSTEM_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; - IMG_SID hSwapChain; -#else IMG_HANDLE hDeviceKM; IMG_HANDLE hSwapChain; -#endif } PVRSRV_BRIDGE_IN_SWAP_DISPCLASS_TO_SYSTEM; @@ -1551,11 +1293,7 @@ typedef struct PVRSRV_BRIDGE_IN_OPEN_BUFFERCLASS_DEVICE_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ IMG_UINT32 ui32DeviceID; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif } PVRSRV_BRIDGE_IN_OPEN_BUFFERCLASS_DEVICE; @@ -1566,11 +1304,7 @@ typedef struct PVRSRV_BRIDGE_IN_OPEN_BUFFERCLASS_DEVICE_TAG typedef struct PVRSRV_BRIDGE_OUT_OPEN_BUFFERCLASS_DEVICE_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif } PVRSRV_BRIDGE_OUT_OPEN_BUFFERCLASS_DEVICE; @@ -1592,11 +1326,7 @@ typedef struct PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_INFO_TAG typedef struct PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_BUFFER_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDeviceKM; -#else IMG_HANDLE hDeviceKM; -#endif IMG_UINT32 ui32BufferIndex; } PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_BUFFER; @@ -1608,11 +1338,7 @@ typedef struct PVRSRV_BRIDGE_IN_GET_BUFFERCLASS_BUFFER_TAG typedef struct PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_BUFFER_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hBuffer; -#else IMG_HANDLE hBuffer; -#endif } PVRSRV_BRIDGE_OUT_GET_BUFFERCLASS_BUFFER; @@ -1635,11 +1361,7 @@ typedef struct PVRSRV_BRIDGE_OUT_GET_DEVMEM_HEAPINFO_TAG typedef struct PVRSRV_BRIDGE_OUT_CREATE_DEVMEMCONTEXT_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevMemContext; -#else IMG_HANDLE hDevMemContext; -#endif IMG_UINT32 ui32ClientHeapCount; PVRSRV_HEAP_INFO sHeapInfo[PVRSRV_MAX_CLIENT_HEAPS]; @@ -1652,11 +1374,7 @@ typedef struct PVRSRV_BRIDGE_OUT_CREATE_DEVMEMCONTEXT_TAG typedef struct PVRSRV_BRIDGE_OUT_CREATE_DEVMEMHEAP_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevMemHeap; -#else IMG_HANDLE hDevMemHeap; -#endif } PVRSRV_BRIDGE_OUT_CREATE_DEVMEMHEAP; @@ -1667,11 +1385,7 @@ typedef struct PVRSRV_BRIDGE_OUT_CREATE_DEVMEMHEAP_TAG typedef struct PVRSRV_BRIDGE_OUT_ALLOCDEVICEMEM_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif PVRSRV_CLIENT_MEM_INFO sClientMemInfo; PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; @@ -1684,11 +1398,7 @@ typedef struct PVRSRV_BRIDGE_OUT_ALLOCDEVICEMEM_TAG typedef struct PVRSRV_BRIDGE_OUT_EXPORTDEVICEMEM_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hMemInfo; -#else IMG_HANDLE hMemInfo; -#endif #if defined(SUPPORT_MEMINFO_IDS) IMG_UINT64 ui64Stamp; #endif @@ -1702,13 +1412,10 @@ typedef struct PVRSRV_BRIDGE_OUT_EXPORTDEVICEMEM_TAG typedef struct _PVRSRV_BRIDGE_OUT_MAP_ION_HANDLE_ { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif PVRSRV_CLIENT_MEM_INFO sClientMemInfo; PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; + IMG_SIZE_T uiIonBufferSize; } PVRSRV_BRIDGE_OUT_MAP_ION_HANDLE; @@ -1720,11 +1427,7 @@ typedef struct PVRSRV_BRIDGE_OUT_MAPMEMINFOTOUSER_TAG { PVRSRV_ERROR eError; IMG_PVOID pvLinAddr; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hMappingInfo; -#else IMG_HANDLE hMappingInfo; -#endif }PVRSRV_BRIDGE_OUT_MAPMEMINFOTOUSER; @@ -1735,9 +1438,9 @@ typedef struct PVRSRV_BRIDGE_OUT_MAPMEMINFOTOUSER_TAG typedef struct PVRSRV_BRIDGE_OUT_GETFREEDEVICEMEM_TAG { PVRSRV_ERROR eError; - IMG_SIZE_T ui32Total; - IMG_SIZE_T ui32Free; - IMG_SIZE_T ui32LargestBlock; + IMG_SIZE_T uTotal; + IMG_SIZE_T uFree; + IMG_SIZE_T uLargestBlock; } PVRSRV_BRIDGE_OUT_GETFREEDEVICEMEM; @@ -1754,18 +1457,18 @@ typedef struct PVRSRV_BRIDGE_OUT_MHANDLE_TO_MMAP_DATA_TAG /* This is a the offset you should pass to mmap(2) so that * the driver can look up the full details for the mapping * request. */ - IMG_UINT32 ui32MMapOffset; + IMG_UINTPTR_T uiMMapOffset; /* This is the byte offset you should add to the mapping you * get from mmap */ - IMG_UINT32 ui32ByteOffset; + IMG_UINTPTR_T uiByteOffset; /* This is the real size of the mapping that will be created * which should be passed to mmap _and_ munmap. */ - IMG_UINT32 ui32RealByteSize; + IMG_SIZE_T uiRealByteSize; /* User mode address associated with mapping */ - IMG_UINT32 ui32UserVAddr; + IMG_UINTPTR_T uiUserVAddr; } PVRSRV_BRIDGE_OUT_MHANDLE_TO_MMAP_DATA; @@ -1777,13 +1480,20 @@ typedef struct PVRSRV_BRIDGE_OUT_RELEASE_MMAP_DATA_TAG IMG_BOOL bMUnmap; /* User mode address associated with mapping */ - IMG_UINT32 ui32UserVAddr; + IMG_UINTPTR_T uiUserVAddr; /* Size of mapping */ - IMG_UINT32 ui32RealByteSize; + IMG_SIZE_T uiRealByteSize; } PVRSRV_BRIDGE_OUT_RELEASE_MMAP_DATA; //#endif +typedef struct PVRSRV_BRIDGE_IN_COMPAT_CHECK +{ + IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ + IMG_UINT32 ui32DDKVersion; + IMG_UINT32 ui32DDKBuild; + +} PVRSRV_BRIDGE_IN_COMPAT_CHECK; /****************************************************************************** * 'bridge in' get misc info @@ -1846,8 +1556,8 @@ typedef struct PVRSRV_BRIDGE_OUT_PDUMP_ISCAPTURING_TAG typedef struct PVRSRV_BRIDGE_IN_GET_FB_STATS_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ - IMG_SIZE_T ui32Total; - IMG_SIZE_T ui32Available; + IMG_SIZE_T uTotal; + IMG_SIZE_T uAvailable; } PVRSRV_BRIDGE_IN_GET_FB_STATS; @@ -1858,11 +1568,7 @@ typedef struct PVRSRV_BRIDGE_IN_GET_FB_STATS_TAG typedef struct PVRSRV_BRIDGE_IN_MAPPHYSTOUSERSPACE_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif IMG_SYS_PHYADDR sSysPhysAddr; IMG_UINT32 uiSizeInBytes; @@ -1887,11 +1593,7 @@ typedef struct PVRSRV_BRIDGE_OUT_MAPPHYSTOUSERSPACE_TAG typedef struct PVRSRV_BRIDGE_IN_UNMAPPHYSTOUSERSPACE_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif IMG_PVOID pvUserAddr; IMG_PVOID pvProcess; @@ -1909,7 +1611,6 @@ typedef struct PVRSRV_BRIDGE_OUT_GETPHYSTOUSERSPACEMAP_TAG } PVRSRV_BRIDGE_OUT_GETPHYSTOUSERSPACEMAP; -#if !defined (SUPPORT_SID_INTERFACE) /****************************************************************************** * 'bridge in' Register RTSIM process thread *****************************************************************************/ @@ -1959,7 +1660,6 @@ typedef struct PVRSRV_BRIDGE_IN_PROCESS_SIMISR_EVENT_TAG PVRSRV_ERROR eError; } PVRSRV_BRIDGE_IN_PROCESS_SIMISR_EVENT; -#endif /* #if !defined (SUPPORT_SID_INTERFACE) */ /****************************************************************************** * 'bridge in' initialisation server disconnect @@ -1975,28 +1675,20 @@ typedef struct PVRSRV_BRIDGE_IN_ALLOC_SHARED_SYS_MEM_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ IMG_UINT32 ui32Flags; - IMG_SIZE_T ui32Size; + IMG_SIZE_T uSize; }PVRSRV_BRIDGE_IN_ALLOC_SHARED_SYS_MEM; typedef struct PVRSRV_BRIDGE_OUT_ALLOC_SHARED_SYS_MEM_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif PVRSRV_CLIENT_MEM_INFO sClientMemInfo; }PVRSRV_BRIDGE_OUT_ALLOC_SHARED_SYS_MEM; typedef struct PVRSRV_BRIDGE_IN_FREE_SHARED_SYS_MEM_TAG { -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; - IMG_SID hMappingInfo; -#else IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif PVRSRV_CLIENT_MEM_INFO sClientMemInfo; }PVRSRV_BRIDGE_IN_FREE_SHARED_SYS_MEM; @@ -2008,22 +1700,14 @@ typedef struct PVRSRV_BRIDGE_OUT_FREE_SHARED_SYS_MEM_TAG typedef struct PVRSRV_BRIDGE_IN_MAP_MEMINFO_MEM_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else IMG_HANDLE hKernelMemInfo; -#endif }PVRSRV_BRIDGE_IN_MAP_MEMINFO_MEM; typedef struct PVRSRV_BRIDGE_OUT_MAP_MEMINFO_MEM_TAG { PVRSRV_CLIENT_MEM_INFO sClientMemInfo; PVRSRV_CLIENT_SYNC_INFO sClientSyncInfo; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelMemInfo; -#else PVRSRV_KERNEL_MEM_INFO *psKernelMemInfo; -#endif PVRSRV_ERROR eError; }PVRSRV_BRIDGE_OUT_MAP_MEMINFO_MEM; @@ -2041,11 +1725,7 @@ typedef struct PVRSRV_BRIDGE_OUT_UNMAP_MEMINFO_MEM_TAG typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_WAI_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hOSEventKM; -#else IMG_HANDLE hOSEventKM; -#endif } PVRSRV_BRIDGE_IN_EVENT_OBJECT_WAIT; typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_OPEN_TAG @@ -2055,56 +1735,35 @@ typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_OPEN_TAG typedef struct PVRSRV_BRIDGE_OUT_EVENT_OBJECT_OPEN_TAG { -#if defined (SUPPORT_SID_INTERFACE) - IMG_UINT32 hOSEvent; -#else IMG_HANDLE hOSEvent; -#endif PVRSRV_ERROR eError; } PVRSRV_BRIDGE_OUT_EVENT_OBJECT_OPEN; typedef struct PVRSRV_BRIDGE_IN_EVENT_OBJECT_CLOSE_TAG { PVRSRV_EVENTOBJECT sEventObject; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hOSEventKM; -#else IMG_HANDLE hOSEventKM; -#endif } PVRSRV_BRIDGE_IN_EVENT_OBJECT_CLOSE; typedef struct PVRSRV_BRIDGE_OUT_CREATE_SYNC_INFO_MOD_OBJ_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfoModObj; -#else IMG_HANDLE hKernelSyncInfoModObj; -#endif } PVRSRV_BRIDGE_OUT_CREATE_SYNC_INFO_MOD_OBJ; typedef struct PVRSRV_BRIDGE_IN_DESTROY_SYNC_INFO_MOD_OBJ { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfoModObj; -#else IMG_HANDLE hKernelSyncInfoModObj; -#endif } PVRSRV_BRIDGE_IN_DESTROY_SYNC_INFO_MOD_OBJ; typedef struct PVRSRV_BRIDGE_IN_MODIFY_PENDING_SYNC_OPS_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfoModObj; - IMG_SID hKernelSyncInfo; -#else IMG_HANDLE hKernelSyncInfoModObj; IMG_HANDLE hKernelSyncInfo; -#endif IMG_UINT32 ui32ModifyFlags; } PVRSRV_BRIDGE_IN_MODIFY_PENDING_SYNC_OPS; @@ -2112,11 +1771,7 @@ typedef struct PVRSRV_BRIDGE_IN_MODIFY_PENDING_SYNC_OPS_TAG typedef struct PVRSRV_BRIDGE_IN_MODIFY_COMPLETE_SYNC_OPS_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfoModObj; -#else IMG_HANDLE hKernelSyncInfoModObj; -#endif } PVRSRV_BRIDGE_IN_MODIFY_COMPLETE_SYNC_OPS; typedef struct PVRSRV_BRIDGE_OUT_MODIFY_PENDING_SYNC_OPS_TAG @@ -2133,11 +1788,7 @@ typedef struct PVRSRV_BRIDGE_OUT_MODIFY_PENDING_SYNC_OPS_TAG typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_TAKE_TOKEN_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfo; -#else IMG_HANDLE hKernelSyncInfo; -#endif } PVRSRV_BRIDGE_IN_SYNC_OPS_TAKE_TOKEN; @@ -2154,11 +1805,7 @@ typedef struct PVRSRV_BRIDGE_OUT_SYNC_OPS_TAKE_TOKEN_TAG typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_TOKEN_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfo; -#else IMG_HANDLE hKernelSyncInfo; -#endif IMG_UINT32 ui32ReadOpsPendingSnapshot; IMG_UINT32 ui32WriteOpsPendingSnapshot; IMG_UINT32 ui32ReadOps2PendingSnapshot; @@ -2167,21 +1814,13 @@ typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_TOKEN_TAG typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_MOD_OBJ_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfoModObj; -#else IMG_HANDLE hKernelSyncInfoModObj; -#endif } PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_MOD_OBJ; typedef struct PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_DELTA_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfo; -#else IMG_HANDLE hKernelSyncInfo; -#endif IMG_UINT32 ui32Delta; } PVRSRV_BRIDGE_IN_SYNC_OPS_FLUSH_TO_DELTA; @@ -2189,33 +1828,21 @@ typedef struct PVRSRV_BRIDGE_IN_ALLOC_SYNC_INFO_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hDevCookie; -#else IMG_HANDLE hDevCookie; -#endif } PVRSRV_BRIDGE_IN_ALLOC_SYNC_INFO; typedef struct PVRSRV_BRIDGE_OUT_ALLOC_SYNC_INFO_TAG { PVRSRV_ERROR eError; -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfo; -#else IMG_HANDLE hKernelSyncInfo; -#endif } PVRSRV_BRIDGE_OUT_ALLOC_SYNC_INFO; typedef struct PVRSRV_BRIDGE_IN_FREE_SYNC_INFO_TAG { IMG_UINT32 ui32BridgeFlags; /* Must be first member of structure */ -#if defined (SUPPORT_SID_INTERFACE) - IMG_SID hKernelSyncInfo; -#else IMG_HANDLE hKernelSyncInfo; -#endif } PVRSRV_BRIDGE_IN_FREE_SYNC_INFO; typedef struct PVRSRV_BRIDGE_IN_CHG_DEV_MEM_ATTRIBS_TAG @@ -2224,24 +1851,6 @@ typedef struct PVRSRV_BRIDGE_IN_CHG_DEV_MEM_ATTRIBS_TAG IMG_UINT32 ui32Attribs; } PVRSRV_BRIDGE_IN_CHG_DEV_MEM_ATTRIBS; -/****************************************************************************** - * 'bridge in' multi manage device memory - *****************************************************************************/ -typedef PVRSRV_MULTI_MANAGE_DEV_MEM_REQUESTS PVRSRV_BRIDGE_IN_MULTI_MANAGE_DEV_MEM; - -/****************************************************************************** - * 'bridge out' multi manage device memory - *****************************************************************************/ -typedef struct PVRSRV_BRIDGE_OUT_MULTI_MANAGE_DEV_MEM_TAG -{ - IMG_UINT32 ui32NumberOfRequestsProcessed; - IMG_UINT32 ui32CtrlFlags; - IMG_UINT32 ui32StatusFlags; - IMG_UINT32 ui32IndexError; - PVRSRV_ERROR eError; - /* Memory Requests Array - used only with direct (not memory shared( mode */ - PVRSRV_MANAGE_DEV_MEM_RESPONSE sMemResponse[PVRSRV_MULTI_MANAGE_DEV_MEM_MAX_DIRECT_SIZE]; -}PVRSRV_BRIDGE_OUT_MULTI_MANAGE_DEV_MEM; #if defined (__cplusplus) } |