0003-eglwsegl-use-system.patch 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802
  1. Patch to remove obsolete powervr headers and instead use the headers provided
  2. on the system.
  3. Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
  4. ---
  5. Index: qt-4.8.5/src/3rdparty/powervr/pvr2d.h
  6. ===================================================================
  7. --- qt-4.8.5.orig/src/3rdparty/powervr/pvr2d.h 2013-07-08 11:24:33.010516867 -0500
  8. +++ /dev/null 1970-01-01 00:00:00.000000000 +0000
  9. @@ -1,502 +0,0 @@
  10. -/*!****************************************************************************
  11. -@File pvr2d.h
  12. -@Title PVR2D external header file
  13. -@Author Imagination Technologies
  14. -@Copyright Copyright (c) by Imagination Technologies Limited.
  15. - This specification is protected by copyright laws and contains
  16. - material proprietary to Imagination Technologies Limited.
  17. - You may use and distribute this specification free of charge for implementing
  18. - the functionality therein, without altering or removing any trademark, copyright,
  19. - or other notice from the specification.
  20. -@Platform Generic
  21. -@Description PVR2D definitions for PVR2D clients
  22. -******************************************************************************/
  23. -
  24. -
  25. -/******************************************************************************
  26. -Modifications :-
  27. -$Log: pvr2d.h $
  28. -******************************************************************************/
  29. -
  30. -#ifndef _PVR2D_H_
  31. -#define _PVR2D_H_
  32. -
  33. -#ifdef __cplusplus
  34. -extern "C" {
  35. -#endif
  36. -
  37. -/* PVR2D Platform-specific definitions */
  38. -#define PVR2D_EXPORT
  39. -#define PVR2D_IMPORT
  40. -
  41. -
  42. -#define PVR2D_REV_MAJOR 2
  43. -#define PVR2D_REV_MINOR 1
  44. -
  45. -typedef enum
  46. -{
  47. - PVR2D_FALSE = 0,
  48. - PVR2D_TRUE
  49. -} PVR2D_BOOL;
  50. -
  51. -
  52. -/* error codes */
  53. -typedef enum
  54. -{
  55. - PVR2D_OK = 0,
  56. - PVR2DERROR_INVALID_PARAMETER = -1,
  57. - PVR2DERROR_DEVICE_UNAVAILABLE = -2,
  58. - PVR2DERROR_INVALID_CONTEXT = -3,
  59. - PVR2DERROR_MEMORY_UNAVAILABLE = -4,
  60. - PVR2DERROR_DEVICE_NOT_PRESENT = -5,
  61. - PVR2DERROR_IOCTL_ERROR = -6,
  62. - PVR2DERROR_GENERIC_ERROR = -7,
  63. - PVR2DERROR_BLT_NOTCOMPLETE = -8,
  64. - PVR2DERROR_HW_FEATURE_NOT_SUPPORTED = -9,
  65. - PVR2DERROR_NOT_YET_IMPLEMENTED = -10,
  66. - PVR2DERROR_MAPPING_FAILED = -11
  67. -}PVR2DERROR;
  68. -
  69. -
  70. -/* pixel formats */
  71. -typedef enum
  72. -{
  73. - PVR2D_1BPP = 0,
  74. - PVR2D_RGB565,
  75. - PVR2D_ARGB4444,
  76. - PVR2D_RGB888,
  77. - PVR2D_ARGB8888,
  78. - PVR2D_ARGB1555,
  79. - PVR2D_ALPHA8,
  80. - PVR2D_ALPHA4,
  81. - PVR2D_PAL2,
  82. - PVR2D_PAL4,
  83. - PVR2D_PAL8,
  84. - PVR2D_VGAEMU
  85. -
  86. -}PVR2DFORMAT;
  87. -
  88. -
  89. -/* wrap surface type */
  90. -typedef enum
  91. -{
  92. - PVR2D_WRAPFLAG_NONCONTIGUOUS = 0,
  93. - PVR2D_WRAPFLAG_CONTIGUOUS = 1,
  94. -
  95. -}PVR2DWRAPFLAGS;
  96. -
  97. -/* flags for control information of additional blits */
  98. -typedef enum
  99. -{
  100. - PVR2D_BLIT_DISABLE_ALL = 0x0000, /* disable all additional controls */
  101. - PVR2D_BLIT_CK_ENABLE = 0x0001, /* enable colour key */
  102. - PVR2D_BLIT_GLOBAL_ALPHA_ENABLE = 0x0002, /* enable standard global alpha */
  103. - PVR2D_BLIT_PERPIXEL_ALPHABLEND_ENABLE = 0x0004, /* enable per-pixel alpha bleding */
  104. - PVR2D_BLIT_PAT_SURFACE_ENABLE = 0x0008, /* enable pattern surf (disable fill) */
  105. - PVR2D_BLIT_FULLY_SPECIFIED_ALPHA_ENABLE = 0x0010, /* enable fully specified alpha */
  106. - PVR2D_BLIT_ROT_90 = 0x0020, /* apply 90 degree rotation to the blt */
  107. - PVR2D_BLIT_ROT_180 = 0x0040, /* apply 180 degree rotation to the blt */
  108. - PVR2D_BLIT_ROT_270 = 0x0080, /* apply 270 degree rotation to the blt */
  109. - PVR2D_BLIT_COPYORDER_TL2BR = 0x0100, /* copy order overrides */
  110. - PVR2D_BLIT_COPYORDER_BR2TL = 0x0200,
  111. - PVR2D_BLIT_COPYORDER_TR2BL = 0x0400,
  112. - PVR2D_BLIT_COPYORDER_BL2TR = 0x0800,
  113. - PVR2D_BLIT_COLKEY_SOURCE = 0x1000, /* Key colour is on the source surface */
  114. - PVR2D_BLIT_COLKEY_DEST = 0x2000 /* Key colour is on the destination surface */
  115. -
  116. -} PVR2DBLITFLAGS;
  117. -
  118. -/* standard alpha-blending functions, AlphaBlendingFunc field of PVR2DBLTINFO */
  119. -typedef enum
  120. -{
  121. - PVR2D_ALPHA_OP_SRC_DSTINV = 1, /* source alpha : Cdst = Csrc*Asrc + Cdst*(1-Asrc) */
  122. - PVR2D_ALPHA_OP_SRCP_DSTINV = 2 /* premultiplied source alpha : Cdst = Csrc + Cdst*(1-Asrc) */
  123. -} PVR2D_ALPHABLENDFUNC;
  124. -
  125. -/* blend ops for fully specified alpha */
  126. -typedef enum
  127. -{
  128. - PVR2D_BLEND_OP_ZERO = 0,
  129. - PVR2D_BLEND_OP_ONE = 1,
  130. - PVR2D_BLEND_OP_SRC = 2,
  131. - PVR2D_BLEND_OP_DST = 3,
  132. - PVR2D_BLEND_OP_GLOBAL = 4,
  133. - PVR2D_BLEND_OP_SRC_PLUS_GLOBAL = 5,
  134. - PVR2D_BLEND_OP_DST_PLUS_GLOBAL = 6
  135. -}PVR2D_BLEND_OP;
  136. -
  137. -
  138. -typedef void* PVR2D_HANDLE;
  139. -
  140. -
  141. -/* Fully specified alpha blend : pAlpha field of PVR2DBLTINFO structure */
  142. -/* a fully specified Alpha Blend operation is defined as */
  143. -/* DST (ALPHA) = (ALPHA_1 * SRC (ALPHA)) + (ALPHA_3 * DST (ALPHA)) */
  144. -/* DST (RGB) = (ALPHA_2 * SRC (RGB)) + (ALPHA_4 * DST (RGB)) */
  145. -/* if the pre-multiplication stage is enabled then the equations become the following: */
  146. -/* PRE_MUL = ((SRC(A)) * (Global Alpha Value)) */
  147. -/* DST (ALPHA) = (ALPHA_1 * SRC (ALPHA)) + (PRE_MUL * DST (ALPHA)) */
  148. -/* DST (RGB) = (ALPHA_2 * SRC (RGB)) + (PRE_MUL * DST (RGB)) */
  149. -/* if the transparent source alpha stage is enabled then a source alpha of zero forces the */
  150. -/* source to be transparent for that pixel regardless of the blend equation being used. */
  151. -typedef struct _PVR2D_ALPHABLT
  152. -{
  153. - PVR2D_BLEND_OP eAlpha1;
  154. - PVR2D_BOOL bAlpha1Invert;
  155. - PVR2D_BLEND_OP eAlpha2;
  156. - PVR2D_BOOL bAlpha2Invert;
  157. - PVR2D_BLEND_OP eAlpha3;
  158. - PVR2D_BOOL bAlpha3Invert;
  159. - PVR2D_BLEND_OP eAlpha4;
  160. - PVR2D_BOOL bAlpha4Invert;
  161. - PVR2D_BOOL bPremulAlpha; /* enable pre-multiplication stage */
  162. - PVR2D_BOOL bTransAlpha; /* enable transparent source alpha stage */
  163. - PVR2D_BOOL bUpdateAlphaLookup; /* enable and update the 1555-Lookup alpha table */
  164. - unsigned char uAlphaLookup0; /* 8 bit alpha when A=0 in a 1555-Lookup surface */
  165. - unsigned char uAlphaLookup1; /* 8 bit alpha when A=1 in a 1555-Lookup surface */
  166. - unsigned char uGlobalRGB; /* Global Alpha Value for RGB, 0=transparent 255=opaque */
  167. - unsigned char uGlobalA; /* Global Alpha Value for Alpha */
  168. -
  169. -} PVR2D_ALPHABLT, *PPVR2D_ALPHABLT;
  170. -
  171. -
  172. -/* surface memory info structure */
  173. -typedef struct _PVR2DMEMINFO
  174. -{
  175. - void *pBase;
  176. - unsigned long ui32MemSize;
  177. - unsigned long ui32DevAddr;
  178. - unsigned long ulFlags;
  179. - void *hPrivateData;
  180. - void *hPrivateMapData;
  181. -
  182. -}PVR2DMEMINFO, *PPVR2DMEMINFO;
  183. -
  184. -
  185. -#define PVR2D_MAX_DEVICE_NAME 20
  186. -
  187. -typedef struct _PVR2DDEVICEINFO
  188. -{
  189. - unsigned long ulDevID;
  190. - char szDeviceName[PVR2D_MAX_DEVICE_NAME];
  191. -}PVR2DDEVICEINFO;
  192. -
  193. -
  194. -typedef struct _PVR2DISPLAYINFO
  195. -{
  196. - unsigned long ulMaxFlipChains;
  197. - unsigned long ulMaxBuffersInChain;
  198. - PVR2DFORMAT eFormat;
  199. - unsigned long ulWidth;
  200. - unsigned long ulHeight;
  201. - long lStride;
  202. - unsigned long ulMinFlipInterval;
  203. - unsigned long ulMaxFlipInterval;
  204. -
  205. -}PVR2DDISPLAYINFO;
  206. -
  207. -
  208. -typedef struct _PVR2DBLTINFO
  209. -{
  210. - unsigned long CopyCode; /* rop code */
  211. - unsigned long Colour; /* fill colour */
  212. - unsigned long ColourKey; /* colour key */
  213. - unsigned char GlobalAlphaValue; /* global alpha blending */
  214. - unsigned char AlphaBlendingFunc; /* per-pixel alpha-blending function */
  215. -
  216. - PVR2DBLITFLAGS BlitFlags; /* additional blit control information */
  217. -
  218. - PVR2DMEMINFO *pDstMemInfo; /* destination memory */
  219. - unsigned long DstOffset; /* byte offset from start of allocation to destination surface pixel 0,0 */
  220. - long DstStride; /* signed stride, the number of bytes from pixel 0,0 to 0,1 */
  221. - long DstX, DstY; /* pixel offset from start of dest surface to start of blt rectangle */
  222. - long DSizeX,DSizeY; /* blt size */
  223. - PVR2DFORMAT DstFormat; /* dest format */
  224. - unsigned long DstSurfWidth; /* size of dest surface in pixels */
  225. - unsigned long DstSurfHeight; /* size of dest surface in pixels */
  226. -
  227. - PVR2DMEMINFO *pSrcMemInfo; /* source mem, (source fields are also used for patterns) */
  228. - unsigned long SrcOffset; /* byte offset from start of allocation to src/pat surface pixel 0,0 */
  229. - long SrcStride; /* signed stride, the number of bytes from pixel 0,0 to 0,1 */
  230. - long SrcX, SrcY; /* pixel offset from start of surface to start of source rectangle */
  231. - /* for patterns this is the start offset within the pattern */
  232. - long SizeX,SizeY; /* source rectangle size or pattern size in pixels */
  233. - PVR2DFORMAT SrcFormat; /* source/pattern format */
  234. - PVR2DMEMINFO *pPalMemInfo; /* source/pattern palette memory containing argb8888 colour table */
  235. - unsigned long PalOffset; /* byte offset from start of allocation to start of palette */
  236. - unsigned long SrcSurfWidth; /* size of source surface in pixels */
  237. - unsigned long SrcSurfHeight; /* size of source surface in pixels */
  238. -
  239. - PVR2DMEMINFO *pMaskMemInfo; /* mask memory, 1bpp format implied */
  240. - unsigned long MaskOffset; /* byte offset from start of allocation to mask surface pixel 0,0 */
  241. - long MaskStride; /* signed stride, the number of bytes from pixel 0,0 to 0,1 */
  242. - long MaskX, MaskY; /* mask rect top left (mask size = blt size) */
  243. - unsigned long MaskSurfWidth; /* size of mask surface in pixels */
  244. - unsigned long MaskSurfHeight; /* size of mask surface in pixels */
  245. -
  246. - PPVR2D_ALPHABLT pAlpha; /* fully specified alpha blend */
  247. -
  248. -}PVR2DBLTINFO, *PPVR2DBLTINFO;
  249. -
  250. -typedef struct _PVR2DRECT
  251. -{
  252. - long left, top;
  253. - long right, bottom;
  254. -} PVR2DRECT;
  255. -
  256. -typedef struct
  257. -{
  258. - PVR2DMEMINFO *pSurfMemInfo; /* surface memory */
  259. - unsigned long SurfOffset; /* byte offset from start of allocation to destination surface pixel 0,0 */
  260. - long Stride; /* signed stride */
  261. - PVR2DFORMAT Format;
  262. - unsigned long SurfWidth; /* surface size in pixels */
  263. - unsigned long SurfHeight;
  264. -
  265. -} PVR2D_SURFACE, *PPVR2D_SURFACE;
  266. -
  267. -typedef struct
  268. -{
  269. - unsigned long *pUseCode; /* USSE code */
  270. - unsigned long UseCodeSize; /* usse code size in bytes */
  271. -
  272. -} PVR2D_USECODE, *PPVR2D_USECODE;
  273. -
  274. -typedef struct
  275. -{
  276. - PVR2D_SURFACE sDst; /* destination surface */
  277. - PVR2D_SURFACE sSrc; /* source surface */
  278. - PVR2DRECT rcDest; /* destination rectangle */
  279. - PVR2DRECT rcSource; /* source rectangle */
  280. - PVR2D_HANDLE hUseCode; /* custom USE code (NULL implies source copy) */
  281. - unsigned long UseParams[2]; /* per-blt params for use code */
  282. -
  283. -} PVR2D_3DBLT, *PPVR2D_3DBLT;
  284. -
  285. -
  286. -#define MAKE_COPY_BLIT(src,soff,dest,doff,sx,sy,dx,dy,sz)
  287. -
  288. -typedef void* PVR2DCONTEXTHANDLE;
  289. -typedef void* PVR2DFLIPCHAINHANDLE;
  290. -
  291. -
  292. -// CopyCode field of PVR2DBLTINFO structure:
  293. -// the CopyCode field of the PVR2DBLTINFO structure should contain a rop3 or rop4 code.
  294. -// a rop3 is an 8 bit code that describes a blt with three inputs : source dest and pattern
  295. -// rop4 is a 16 bit code that describes a blt with four inputs : source dest pattern and mask
  296. -// common rop3 codes are defined below
  297. -// a colour fill blt is processed in the pattern channel as a constant colour with a rop code of 0xF0
  298. -// PVR2D_BLIT_PAT_SURFACE_ENABLE defines whether the pattern channel is a surface or a fill colour.
  299. -// a rop4 is defined by two rop3 codes, and the 1 bit-per-pixel mask surface defines which is used.
  300. -// a common rop4 is 0xAAF0 which is the mask copy blt used for text glyphs.
  301. -// CopyCode is taken to be a rop4 when pMaskMemInfo is non zero, otherwise it is assumed to be a rop3
  302. -// use the PVR2DMASKROP4 macro below to construct a rop4 from two rop3's
  303. -// rop3a is the rop used when mask pixel = 1, and rop3b when mask = 0
  304. -#define PVR2DROP4(rop3b, rop3a) ((rop3b<<8)|rop3a)
  305. -
  306. -/* common rop codes */
  307. -#define PVR2DROPclear 0x00 /* 0 (whiteness) */
  308. -#define PVR2DROPset 0xFF /* 1 (blackness) */
  309. -#define PVR2DROPnoop 0xAA /* dst (used for masked blts) */
  310. -
  311. -/* source and dest rop codes */
  312. -#define PVR2DROPand 0x88 /* src AND dst */
  313. -#define PVR2DROPandReverse 0x44 /* src AND NOT dst */
  314. -#define PVR2DROPcopy 0xCC /* src (used for source copy and alpha blts) */
  315. -#define PVR2DROPandInverted 0x22 /* NOT src AND dst */
  316. -#define PVR2DROPxor 0x66 /* src XOR dst */
  317. -#define PVR2DROPor 0xEE /* src OR dst */
  318. -#define PVR2DROPnor 0x11 /* NOT src AND NOT dst */
  319. -#define PVR2DROPequiv 0x99 /* NOT src XOR dst */
  320. -#define PVR2DROPinvert 0x55 /* NOT dst */
  321. -#define PVR2DROPorReverse 0xDD /* src OR NOT dst */
  322. -#define PVR2DROPcopyInverted 0x33 /* NOT src */
  323. -#define PVR2DROPorInverted 0xBB /* NOT src OR dst */
  324. -#define PVR2DROPnand 0x77 /* NOT src OR NOT dst */
  325. -
  326. -/* pattern rop codes */
  327. -#define PVR2DPATROPand 0xA0 /* pat AND dst */
  328. -#define PVR2DPATROPandReverse 0x50 /* pat AND NOT dst */
  329. -#define PVR2DPATROPcopy 0xF0 /* pat (used for solid color fills and pattern blts) */
  330. -#define PVR2DPATROPandInverted 0x0A /* NOT pat AND dst */
  331. -#define PVR2DPATROPxor 0x5A /* pat XOR dst */
  332. -#define PVR2DPATROPor 0xFA /* pat OR dst */
  333. -#define PVR2DPATROPnor 0x05 /* NOT pat AND NOT dst */
  334. -#define PVR2DPATROPequiv 0xA5 /* NOT pat XOR dst */
  335. -#define PVR2DPATROPinvert 0x55 /* NOT dst */
  336. -#define PVR2DPATROPorReverse 0xF5 /* pat OR NOT dst */
  337. -#define PVR2DPATROPcopyInverted 0x0F /* NOT pat */
  338. -#define PVR2DPATROPorInverted 0xAF /* NOT pat OR dst */
  339. -#define PVR2DPATROPnand 0x5F /* NOT pat OR NOT dst */
  340. -
  341. -/* common rop4 codes */
  342. -#define PVR2DROP4MaskedCopy PVR2DROP4(PVR2DROPnoop,PVR2DROPcopy) /* masked source copy blt (used for rounded window corners etc) */
  343. -#define PVR2DROP4MaskedFill PVR2DROP4(PVR2DROPnoop,PVR2DPATROPcopy) /* masked colour fill blt (used for text) */
  344. -
  345. -/* Legacy support */
  346. -#define PVR2DROP3_PATMASK PVR2DPATROPcopy
  347. -#define PVR2DROP3_SRCMASK PVR2DROPcopy
  348. -
  349. -/* pixmap memory alignment */
  350. -#define PVR2D_ALIGNMENT_4 4 /* DWORD alignment */
  351. -#define PVR2D_ALIGNMENT_ANY 0 /* no alignment */
  352. -#define PVR2D_ALIGNMENT_PALETTE 16 /* 16 byte alignment is required for palettes */
  353. -
  354. -/* Heap number for PVR2DGetFrameBuffer */
  355. -#define PVR2D_FB_PRIMARY_SURFACE 0
  356. -
  357. -#define PVR2D_PRESENT_PROPERTY_SRCSTRIDE (1 << 0)
  358. -#define PVR2D_PRESENT_PROPERTY_DSTSIZE (1 << 1)
  359. -#define PVR2D_PRESENT_PROPERTY_DSTPOS (1 << 2)
  360. -#define PVR2D_PRESENT_PROPERTY_CLIPRECTS (1 << 3)
  361. -#define PVR2D_PRESENT_PROPERTY_INTERVAL (1 << 4)
  362. -
  363. -
  364. -#define PVR2D_CREATE_FLIPCHAIN_SHARED (1 << 0)
  365. -#define PVR2D_CREATE_FLIPCHAIN_QUERY (1 << 1)
  366. -
  367. -/* Functions that the library exports */
  368. -
  369. -PVR2D_IMPORT
  370. -int PVR2DEnumerateDevices(PVR2DDEVICEINFO *pDevInfo);
  371. -
  372. -PVR2D_IMPORT
  373. -PVR2DERROR PVR2DCreateDeviceContext(unsigned long ulDevID,
  374. - PVR2DCONTEXTHANDLE* phContext,
  375. - unsigned long ulFlags);
  376. -
  377. -PVR2D_IMPORT
  378. -PVR2DERROR PVR2DDestroyDeviceContext(PVR2DCONTEXTHANDLE hContext);
  379. -
  380. -PVR2D_IMPORT
  381. -PVR2DERROR PVR2DGetDeviceInfo(PVR2DCONTEXTHANDLE hContext,
  382. - PVR2DDISPLAYINFO *pDisplayInfo);
  383. -
  384. -PVR2D_IMPORT
  385. -PVR2DERROR PVR2DGetScreenMode(PVR2DCONTEXTHANDLE hContext,
  386. - PVR2DFORMAT *pFormat,
  387. - long *plWidth,
  388. - long *plHeight,
  389. - long *plStride,
  390. - int *piRefreshRate);
  391. -
  392. -PVR2D_IMPORT
  393. -PVR2DERROR PVR2DGetFrameBuffer(PVR2DCONTEXTHANDLE hContext,
  394. - int nHeap,
  395. - PVR2DMEMINFO **ppsMemInfo);
  396. -
  397. -PVR2D_IMPORT
  398. -PVR2DERROR PVR2DMemAlloc(PVR2DCONTEXTHANDLE hContext,
  399. - unsigned long ulBytes,
  400. - unsigned long ulAlign,
  401. - unsigned long ulFlags,
  402. - PVR2DMEMINFO **ppsMemInfo);
  403. -
  404. -PVR2D_IMPORT
  405. -PVR2DERROR PVR2DMemWrap(PVR2DCONTEXTHANDLE hContext,
  406. - void *pMem,
  407. - unsigned long ulFlags,
  408. - unsigned long ulBytes,
  409. - unsigned long alPageAddress[],
  410. - PVR2DMEMINFO **ppsMemInfo);
  411. -
  412. -PVR2D_IMPORT
  413. -PVR2DERROR PVR2DMemMap(PVR2DCONTEXTHANDLE hContext,
  414. - unsigned long ulFlags,
  415. - void *hPrivateMapData,
  416. - PVR2DMEMINFO **ppsDstMem);
  417. -
  418. -PVR2D_IMPORT
  419. -PVR2DERROR PVR2DMemFree(PVR2DCONTEXTHANDLE hContext,
  420. - PVR2DMEMINFO *psMemInfo);
  421. -
  422. -PVR2D_IMPORT
  423. -PVR2DERROR PVR2DBlt(PVR2DCONTEXTHANDLE hContext,
  424. - PVR2DBLTINFO *pBltInfo);
  425. -
  426. -PVR2D_IMPORT
  427. -PVR2DERROR PVR2DBltClipped(PVR2DCONTEXTHANDLE hContext,
  428. - PVR2DBLTINFO *pBltInfo,
  429. - unsigned long ulNumClipRects,
  430. - PVR2DRECT *pClipRects);
  431. -
  432. -PVR2D_IMPORT
  433. -PVR2DERROR PVR2DQueryBlitsComplete(PVR2DCONTEXTHANDLE hContext,
  434. - PVR2DMEMINFO *pMemInfo,
  435. - unsigned int uiWaitForComplete);
  436. -
  437. -PVR2D_IMPORT
  438. -PVR2DERROR PVR2DSetPresentBltProperties(PVR2DCONTEXTHANDLE hContext,
  439. - unsigned long ulPropertyMask,
  440. - long lSrcStride,
  441. - unsigned long ulDstWidth,
  442. - unsigned long ulDstHeight,
  443. - long lDstXPos,
  444. - long lDstYPos,
  445. - unsigned long ulNumClipRects,
  446. - PVR2DRECT *pClipRects,
  447. - unsigned long ulSwapInterval);
  448. -
  449. -PVR2D_IMPORT
  450. -PVR2DERROR PVR2DPresentBlt(PVR2DCONTEXTHANDLE hContext,
  451. - PVR2DMEMINFO *pMemInfo,
  452. - long lRenderID);
  453. -
  454. -PVR2D_IMPORT
  455. -PVR2DERROR PVR2DCreateFlipChain(PVR2DCONTEXTHANDLE hContext,
  456. - unsigned long ulFlags,
  457. - unsigned long ulNumBuffers,
  458. - unsigned long ulWidth,
  459. - unsigned long ulHeight,
  460. - PVR2DFORMAT eFormat,
  461. - long *plStride,
  462. - unsigned long *pulFlipChainID,
  463. - PVR2DFLIPCHAINHANDLE *phFlipChain);
  464. -
  465. -PVR2D_IMPORT
  466. -PVR2DERROR PVR2DDestroyFlipChain(PVR2DCONTEXTHANDLE hContext,
  467. - PVR2DFLIPCHAINHANDLE hFlipChain);
  468. -
  469. -PVR2D_IMPORT
  470. -PVR2DERROR PVR2DGetFlipChainBuffers(PVR2DCONTEXTHANDLE hContext,
  471. - PVR2DFLIPCHAINHANDLE hFlipChain,
  472. - unsigned long *pulNumBuffers,
  473. - PVR2DMEMINFO *psMemInfo[]);
  474. -
  475. -PVR2D_IMPORT
  476. -PVR2DERROR PVR2DSetPresentFlipProperties(PVR2DCONTEXTHANDLE hContext,
  477. - PVR2DFLIPCHAINHANDLE hFlipChain,
  478. - unsigned long ulPropertyMask,
  479. - long lDstXPos,
  480. - long lDstYPos,
  481. - unsigned long ulNumClipRects,
  482. - PVR2DRECT *pClipRects,
  483. - unsigned long ulSwapInterval);
  484. -
  485. -PVR2D_IMPORT
  486. -PVR2DERROR PVR2DPresentFlip(PVR2DCONTEXTHANDLE hContext,
  487. - PVR2DFLIPCHAINHANDLE hFlipChain,
  488. - PVR2DMEMINFO *psMemInfo,
  489. - long lRenderID);
  490. -
  491. -PVR2D_IMPORT
  492. -PVR2DERROR PVR2DGetAPIRev(long *lRevMajor, long *lRevMinor);
  493. -
  494. -PVR2D_IMPORT
  495. -PVR2DERROR PVR2DLoadUseCode (const PVR2DCONTEXTHANDLE hContext, const unsigned char *pUseCode,
  496. - const unsigned long UseCodeSize, PVR2D_HANDLE *pUseCodeHandle);
  497. -PVR2D_IMPORT
  498. -PVR2DERROR PVR2DFreeUseCode (const PVR2DCONTEXTHANDLE hContext, const PVR2D_HANDLE hUseCodeHandle);
  499. -
  500. -PVR2D_IMPORT
  501. -PVR2DERROR PVR2DBlt3D (const PVR2DCONTEXTHANDLE hContext, const PPVR2D_3DBLT pBlt3D);
  502. -
  503. -#ifdef __cplusplus
  504. -}
  505. -#endif
  506. -
  507. -#endif /* _PVR2D_H_ */
  508. -
  509. -/******************************************************************************
  510. - End of file (pvr2d.h)
  511. -******************************************************************************/
  512. Index: qt-4.8.5/src/3rdparty/powervr/wsegl.h
  513. ===================================================================
  514. --- qt-4.8.5.orig/src/3rdparty/powervr/wsegl.h 2013-07-08 11:24:33.010516867 -0500
  515. +++ /dev/null 1970-01-01 00:00:00.000000000 +0000
  516. @@ -1,240 +0,0 @@
  517. -/******************************************************************************
  518. - Name : wsegl.h
  519. - Copyright : Copyright (c) Imagination Technologies Limited.
  520. - This specification is protected by copyright laws and contains
  521. - material proprietary to Imagination Technologies Limited.
  522. - You may use and distribute this specification free of charge for implementing
  523. - the functionality therein, without altering or removing any trademark, copyright,
  524. - or other notice from the specification.
  525. - Platform : ANSI
  526. -*****************************************************************************/
  527. -
  528. -
  529. -#if !defined(__WSEGL_H__)
  530. -#define __WSEGL_H__
  531. -
  532. -#ifdef __cplusplus
  533. -extern "C" {
  534. -#endif
  535. -
  536. -/*
  537. -// WSEGL Platform-specific definitions
  538. -*/
  539. -#define WSEGL_EXPORT
  540. -#define WSEGL_IMPORT
  541. -
  542. -/*
  543. -// WSEGL API Version Number
  544. -*/
  545. -
  546. -#define WSEGL_VERSION 1
  547. -#define WSEGL_DEFAULT_DISPLAY 0
  548. -#define WSEGL_DEFAULT_NATIVE_ENGINE 0
  549. -
  550. -#define WSEGL_FALSE 0
  551. -#define WSEGL_TRUE 1
  552. -#define WSEGL_NULL 0
  553. -
  554. -#define WSEGL_UNREFERENCED_PARAMETER(param) (param) = (param)
  555. -
  556. -/*
  557. -// WSEGL handles
  558. -*/
  559. -typedef void *WSEGLDisplayHandle;
  560. -typedef void *WSEGLDrawableHandle;
  561. -
  562. -/*
  563. -// Display capability type
  564. -*/
  565. -typedef enum WSEGLCapsType_TAG
  566. -{
  567. - WSEGL_NO_CAPS = 0,
  568. - WSEGL_CAP_MIN_SWAP_INTERVAL = 1, /* System default value = 1 */
  569. - WSEGL_CAP_MAX_SWAP_INTERVAL = 2, /* System default value = 1 */
  570. - WSEGL_CAP_WINDOWS_USE_HW_SYNC = 3, /* System default value = 0 (FALSE) */
  571. - WSEGL_CAP_PIXMAPS_USE_HW_SYNC = 4, /* System default value = 0 (FALSE) */
  572. -
  573. -} WSEGLCapsType;
  574. -
  575. -/*
  576. -// Display capability
  577. -*/
  578. -typedef struct WSEGLCaps_TAG
  579. -{
  580. - WSEGLCapsType eCapsType;
  581. - unsigned long ui32CapsValue;
  582. -
  583. -} WSEGLCaps;
  584. -
  585. -/*
  586. -// Drawable type
  587. -*/
  588. -#define WSEGL_NO_DRAWABLE 0x0
  589. -#define WSEGL_DRAWABLE_WINDOW 0x1
  590. -#define WSEGL_DRAWABLE_PIXMAP 0x2
  591. -
  592. -
  593. -/*
  594. -// Pixel format of display/drawable
  595. -*/
  596. -typedef enum WSEGLPixelFormat_TAG
  597. -{
  598. - WSEGL_PIXELFORMAT_565 = 0,
  599. - WSEGL_PIXELFORMAT_4444 = 1,
  600. - WSEGL_PIXELFORMAT_8888 = 2,
  601. - WSEGL_PIXELFORMAT_1555 = 3
  602. -
  603. -} WSEGLPixelFormat;
  604. -
  605. -/*
  606. -// Transparent of display/drawable
  607. -*/
  608. -typedef enum WSEGLTransparentType_TAG
  609. -{
  610. - WSEGL_OPAQUE = 0,
  611. - WSEGL_COLOR_KEY = 1,
  612. -
  613. -} WSEGLTransparentType;
  614. -
  615. -/*
  616. -// Display/drawable configuration
  617. -*/
  618. -typedef struct WSEGLConfig_TAG
  619. -{
  620. - /*
  621. - // Type of drawables this configuration applies to -
  622. - // OR'd values of drawable types.
  623. - */
  624. - unsigned long ui32DrawableType;
  625. -
  626. - /* Pixel format */
  627. - WSEGLPixelFormat ePixelFormat;
  628. -
  629. - /* Native Renderable - set to WSEGL_TRUE if native renderable */
  630. - unsigned long ulNativeRenderable;
  631. -
  632. - /* FrameBuffer Level Parameter */
  633. - unsigned long ulFrameBufferLevel;
  634. -
  635. - /* Native Visual ID */
  636. - unsigned long ulNativeVisualID;
  637. -
  638. - /* Native Visual */
  639. - void *hNativeVisual;
  640. -
  641. - /* Transparent Type */
  642. - WSEGLTransparentType eTransparentType;
  643. -
  644. - /* Transparent Color - only used if transparent type is COLOR_KEY */
  645. - unsigned long ulTransparentColor; /* packed as 0x00RRGGBB */
  646. -
  647. -
  648. -} WSEGLConfig;
  649. -
  650. -/*
  651. -// WSEGL errors
  652. -*/
  653. -typedef enum WSEGLError_TAG
  654. -{
  655. - WSEGL_SUCCESS = 0,
  656. - WSEGL_CANNOT_INITIALISE = 1,
  657. - WSEGL_BAD_NATIVE_DISPLAY = 2,
  658. - WSEGL_BAD_NATIVE_WINDOW = 3,
  659. - WSEGL_BAD_NATIVE_PIXMAP = 4,
  660. - WSEGL_BAD_NATIVE_ENGINE = 5,
  661. - WSEGL_BAD_DRAWABLE = 6,
  662. - WSEGL_BAD_CONFIG = 7,
  663. - WSEGL_OUT_OF_MEMORY = 8
  664. -
  665. -} WSEGLError;
  666. -
  667. -/*
  668. -// Drawable orientation (in degrees anti-clockwise)
  669. -*/
  670. -typedef enum WSEGLRotationAngle_TAG
  671. -{
  672. - WSEGL_ROTATE_0 = 0,
  673. - WSEGL_ROTATE_90 = 1,
  674. - WSEGL_ROTATE_180 = 2,
  675. - WSEGL_ROTATE_270 = 3
  676. -
  677. -} WSEGLRotationAngle;
  678. -
  679. -/*
  680. -// Drawable information required by OpenGL-ES driver
  681. -*/
  682. -typedef struct WSEGLDrawableParams_TAG
  683. -{
  684. - /* Width in pixels of the drawable */
  685. - unsigned long ui32Width;
  686. -
  687. - /* Height in pixels of the drawable */
  688. - unsigned long ui32Height;
  689. -
  690. - /* Stride in pixels of the drawable */
  691. - unsigned long ui32Stride;
  692. -
  693. - /* Pixel format of the drawable */
  694. - WSEGLPixelFormat ePixelFormat;
  695. -
  696. - /* User space cpu virtual address of the drawable */
  697. - void *pvLinearAddress;
  698. -
  699. - /* HW address of the drawable */
  700. - unsigned long ui32HWAddress;
  701. -
  702. - /* Private data for the drawable */
  703. - void *hPrivateData;
  704. -
  705. -} WSEGLDrawableParams;
  706. -
  707. -
  708. -/*
  709. -// Table of function pointers that is returned by WSEGL_GetFunctionTablePointer()
  710. -//
  711. -// The first entry in the table is the version number of the wsegl.h header file that
  712. -// the module has been written against, and should therefore be set to WSEGL_VERSION
  713. -*/
  714. -typedef struct WSEGL_FunctionTable_TAG
  715. -{
  716. - unsigned long ui32WSEGLVersion;
  717. -
  718. - WSEGLError (*pfnWSEGL_IsDisplayValid)(NativeDisplayType);
  719. -
  720. - WSEGLError (*pfnWSEGL_InitialiseDisplay)(NativeDisplayType, WSEGLDisplayHandle *, const WSEGLCaps **, WSEGLConfig **);
  721. -
  722. - WSEGLError (*pfnWSEGL_CloseDisplay)(WSEGLDisplayHandle);
  723. -
  724. - WSEGLError (*pfnWSEGL_CreateWindowDrawable)(WSEGLDisplayHandle, WSEGLConfig *, WSEGLDrawableHandle *, NativeWindowType, WSEGLRotationAngle *);
  725. -
  726. - WSEGLError (*pfnWSEGL_CreatePixmapDrawable)(WSEGLDisplayHandle, WSEGLConfig *, WSEGLDrawableHandle *, NativePixmapType, WSEGLRotationAngle *);
  727. -
  728. - WSEGLError (*pfnWSEGL_DeleteDrawable)(WSEGLDrawableHandle);
  729. -
  730. - WSEGLError (*pfnWSEGL_SwapDrawable)(WSEGLDrawableHandle, unsigned long);
  731. -
  732. - WSEGLError (*pfnWSEGL_SwapControlInterval)(WSEGLDrawableHandle, unsigned long);
  733. -
  734. - WSEGLError (*pfnWSEGL_WaitNative)(WSEGLDrawableHandle, unsigned long);
  735. -
  736. - WSEGLError (*pfnWSEGL_CopyFromDrawable)(WSEGLDrawableHandle, NativePixmapType);
  737. -
  738. - WSEGLError (*pfnWSEGL_CopyFromPBuffer)(void *, unsigned long, unsigned long, unsigned long, WSEGLPixelFormat, NativePixmapType);
  739. -
  740. - WSEGLError (*pfnWSEGL_GetDrawableParameters)(WSEGLDrawableHandle, WSEGLDrawableParams *, WSEGLDrawableParams *);
  741. -
  742. -
  743. -} WSEGL_FunctionTable;
  744. -
  745. -
  746. -WSEGL_IMPORT const WSEGL_FunctionTable *WSEGL_GetFunctionTablePointer(void);
  747. -
  748. -#ifdef __cplusplus
  749. -}
  750. -#endif
  751. -
  752. -#endif /* __WSEGL_H__ */
  753. -
  754. -/******************************************************************************
  755. - End of file (wsegl.h)
  756. -******************************************************************************/
  757. Index: qt-4.8.5/src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c
  758. ===================================================================
  759. --- qt-4.8.5.orig/src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c 2013-07-08 11:24:33.010516867 -0500
  760. +++ qt-4.8.5/src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c 2013-07-08 11:28:26.142521123 -0500
  761. @@ -39,7 +39,7 @@
  762. **
  763. ****************************************************************************/
  764. -#include <GLES/eglplatform.h>
  765. +#include <EGL/eglplatform.h>
  766. #include <wsegl.h>
  767. #include <pvr2d.h>
  768. #include <string.h>
  769. @@ -379,6 +379,20 @@
  770. return WSEGL_SUCCESS;
  771. }
  772. +/* Function stub for ConnectDrawable() */
  773. +static WSEGLError wseglConnectDrawable(WSEGLDrawableHandle hDrawable)
  774. +{
  775. + WSEGL_UNREFERENCED_PARAMETER(hDrawable);
  776. + return WSEGL_SUCCESS;
  777. +}
  778. +
  779. +/* Function stub for DisconnectDrawable() */
  780. +static WSEGLError wseglDisconnectDrawable(WSEGLDrawableHandle hDrawable)
  781. +{
  782. + WSEGL_UNREFERENCED_PARAMETER(hDrawable);
  783. + return WSEGL_SUCCESS;
  784. +}
  785. +
  786. static WSEGL_FunctionTable const wseglFunctions = {
  787. WSEGL_VERSION,
  788. wseglIsDisplayValid,
  789. @@ -392,7 +406,9 @@
  790. wseglWaitNative,
  791. wseglCopyFromDrawable,
  792. wseglCopyFromPBuffer,
  793. - wseglGetDrawableParameters
  794. + wseglGetDrawableParameters,
  795. + wseglConnectDrawable,
  796. + wseglDisconnectDrawable
  797. };
  798. /* Return the table of WSEGL functions to the EGL implementation */