123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249 |
- /*************************************************************************/ /*!
- @File
- @Title PDUMP definitions header
- @Copyright Copyright (c) Imagination Technologies Ltd. All Rights Reserved
- @Description PDUMP definitions header
- @License Dual MIT/GPLv2
- The contents of this file are subject to the MIT license as set out below.
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
- Alternatively, the contents of this file may be used under the terms of
- the GNU General Public License Version 2 ("GPL") in which case the provisions
- of GPL are applicable instead of those above.
- If you wish to allow use of your version of this file only under the terms of
- GPL, and not to allow others to use your version of this file under the terms
- of the MIT license, indicate your decision by deleting the provisions above
- and replace them with the notice and other provisions required by GPL as set
- out in the file called "GPL-COPYING" included in this distribution. If you do
- not delete the provisions above, a recipient may use your version of this file
- under the terms of either the MIT license or GPL.
- This License is also included in this distribution in the file called
- "MIT-COPYING".
- EXCEPT AS OTHERWISE STATED IN A NEGOTIATED AGREEMENT: (A) THE SOFTWARE IS
- PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
- BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
- PURPOSE AND NONINFRINGEMENT; AND (B) IN NO EVENT SHALL THE AUTHORS OR
- COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
- IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */ /**************************************************************************/
- #ifndef PDUMPDEFS_H
- #define PDUMPDEFS_H
- /*! PDump Pixel Format Enumeration */
- typedef enum _PDUMP_PIXEL_FORMAT_
- {
- PVRSRV_PDUMP_PIXEL_FORMAT_UNSUPPORTED = 0,
- PVRSRV_PDUMP_PIXEL_FORMAT_RGB8 = 1,
- PVRSRV_PDUMP_PIXEL_FORMAT_RGB332 = 2,
- PVRSRV_PDUMP_PIXEL_FORMAT_KRGB555 = 3,
- PVRSRV_PDUMP_PIXEL_FORMAT_RGB565 = 4,
- PVRSRV_PDUMP_PIXEL_FORMAT_ARGB4444 = 5,
- PVRSRV_PDUMP_PIXEL_FORMAT_ARGB1555 = 6,
- PVRSRV_PDUMP_PIXEL_FORMAT_RGB888 = 7,
- PVRSRV_PDUMP_PIXEL_FORMAT_ARGB8888 = 8,
- PVRSRV_PDUMP_PIXEL_FORMAT_YUV8 = 9,
- /* PVRSRV_PDUMP_PIXEL_FORMAT_AYUV4444 = 10, */
- PVRSRV_PDUMP_PIXEL_FORMAT_VY0UY1_8888 = 11,
- PVRSRV_PDUMP_PIXEL_FORMAT_UY0VY1_8888 = 12,
- PVRSRV_PDUMP_PIXEL_FORMAT_Y0UY1V_8888 = 13,
- PVRSRV_PDUMP_PIXEL_FORMAT_Y0VY1U_8888 = 14,
- PVRSRV_PDUMP_PIXEL_FORMAT_YUV888 = 15,
- PVRSRV_PDUMP_PIXEL_FORMAT_UYVY10101010 = 16,
- PVRSRV_PDUMP_PIXEL_FORMAT_VYAUYA8888 = 17,
- PVRSRV_PDUMP_PIXEL_FORMAT_AYUV8888 = 18,
- PVRSRV_PDUMP_PIXEL_FORMAT_AYUV2101010 = 19,
- PVRSRV_PDUMP_PIXEL_FORMAT_YUV101010 = 20,
- PVRSRV_PDUMP_PIXEL_FORMAT_PL12Y8 = 21,
- PVRSRV_PDUMP_PIXEL_FORMAT_YUV_IMC2 = 22,
- PVRSRV_PDUMP_PIXEL_FORMAT_YUV_YV12 = 23,
- PVRSRV_PDUMP_PIXEL_FORMAT_YUV_PL8 = 24,
- PVRSRV_PDUMP_PIXEL_FORMAT_YUV_PL12 = 25,
- PVRSRV_PDUMP_PIXEL_FORMAT_422PL12YUV8 = 26,
- PVRSRV_PDUMP_PIXEL_FORMAT_420PL12YUV8 = 27,
- PVRSRV_PDUMP_PIXEL_FORMAT_PL12Y10 = 28,
- PVRSRV_PDUMP_PIXEL_FORMAT_422PL12YUV10 = 29,
- PVRSRV_PDUMP_PIXEL_FORMAT_420PL12YUV10 = 30,
- PVRSRV_PDUMP_PIXEL_FORMAT_ABGR8888 = 31,
- PVRSRV_PDUMP_PIXEL_FORMAT_BGRA8888 = 32,
- PVRSRV_PDUMP_PIXEL_FORMAT_ARGB8332 = 33,
- PVRSRV_PDUMP_PIXEL_FORMAT_RGB555 = 34,
- PVRSRV_PDUMP_PIXEL_FORMAT_F16 = 35,
- PVRSRV_PDUMP_PIXEL_FORMAT_F32 = 36,
- PVRSRV_PDUMP_PIXEL_FORMAT_L16 = 37,
- PVRSRV_PDUMP_PIXEL_FORMAT_L32 = 38,
- PVRSRV_PDUMP_PIXEL_FORMAT_RGBA8888 = 39,
- PVRSRV_PDUMP_PIXEL_FORMAT_ABGR4444 = 40,
- PVRSRV_PDUMP_PIXEL_FORMAT_RGBA4444 = 41,
- PVRSRV_PDUMP_PIXEL_FORMAT_BGRA4444 = 42,
- PVRSRV_PDUMP_PIXEL_FORMAT_ABGR1555 = 43,
- PVRSRV_PDUMP_PIXEL_FORMAT_RGBA5551 = 44,
- PVRSRV_PDUMP_PIXEL_FORMAT_BGRA5551 = 45,
- PVRSRV_PDUMP_PIXEL_FORMAT_BGR565 = 46,
- PVRSRV_PDUMP_PIXEL_FORMAT_A8 = 47,
- PVRSRV_PDUMP_PIXEL_FORMAT_F16F16F16F16 = 49,
- PVRSRV_PDUMP_PIXEL_FORMAT_A4 = 50,
- PVRSRV_PDUMP_PIXEL_FORMAT_ARGB2101010 = 51,
- PVRSRV_PDUMP_PIXEL_FORMAT_RSGSBS888 = 52,
- PVRSRV_PDUMP_PIXEL_FORMAT_F32F32F32F32 = 53,
- PVRSRV_PDUMP_PIXEL_FORMAT_F16F16 = 54,
- PVRSRV_PDUMP_PIXEL_FORMAT_F32F32 = 55,
- PVRSRV_PDUMP_PIXEL_FORMAT_F16F16F16 = 56,
- PVRSRV_PDUMP_PIXEL_FORMAT_F32F32F32 = 57,
- PVRSRV_PDUMP_PIXEL_FORMAT_U8 = 58,
- PVRSRV_PDUMP_PIXEL_FORMAT_U8U8 = 59,
- PVRSRV_PDUMP_PIXEL_FORMAT_U16 = 60,
- PVRSRV_PDUMP_PIXEL_FORMAT_U16U16 = 61,
- PVRSRV_PDUMP_PIXEL_FORMAT_U16U16U16U16 = 62,
- PVRSRV_PDUMP_PIXEL_FORMAT_U32 = 63,
- PVRSRV_PDUMP_PIXEL_FORMAT_U32U32 = 64,
- PVRSRV_PDUMP_PIXEL_FORMAT_U32U32U32U32 = 65,
- PVRSRV_PDUMP_PIXEL_FORMAT_YUV_YV32 = 66,
- PVRSRV_PDUMP_PIXEL_FORMAT_FORCE_I32 = 0x7fffffff
- } PDUMP_PIXEL_FORMAT;
- typedef enum _PDUMP_FBC_SWIZZLE_
- {
- PVRSRV_PDUMP_FBC_SWIZZLE_ARGB = 0x0,
- PVRSRV_PDUMP_FBC_SWIZZLE_ARBG = 0x1,
- PVRSRV_PDUMP_FBC_SWIZZLE_AGRB = 0x2,
- PVRSRV_PDUMP_FBC_SWIZZLE_AGBR = 0x3,
- PVRSRV_PDUMP_FBC_SWIZZLE_ABGR = 0x4,
- PVRSRV_PDUMP_FBC_SWIZZLE_ABRG = 0x5,
- PVRSRV_PDUMP_FBC_SWIZZLE_RGBA = 0x8,
- PVRSRV_PDUMP_FBC_SWIZZLE_RBGA = 0x9,
- PVRSRV_PDUMP_FBC_SWIZZLE_GRBA = 0xA,
- PVRSRV_PDUMP_FBC_SWIZZLE_GBRA = 0xB,
- PVRSRV_PDUMP_FBC_SWIZZLE_BGRA = 0xC,
- PVRSRV_PDUMP_FBC_SWIZZLE_BRGA = 0xD,
- } PDUMP_FBC_SWIZZLE;
- /*! PDump addrmode */
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT 0
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_MASK 0x000000FF
- #define PVRSRV_PDUMP_ADDRMODE_STRIDESENSE_SHIFT 8
- #define PVRSRV_PDUMP_ADDRMODE_STRIDESENSE_NEGATIVE (1U << PVRSRV_PDUMP_ADDRMODE_STRIDESENSE_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_BIFTILE_MODE_SHIFT 12
- #define PVRSRV_PDUMP_ADDRMODE_BIFTILE_MODE_MASK 0x000FF000
- #define PVRSRV_PDUMP_ADDRMODE_FBCMODE_SHIFT 20
- #define PVRSRV_PDUMP_ADDRMODE_FBCMODE_MASK 0x00F00000
- #define PVRSRV_PDUMP_ADDRMODE_FBCDECOR_SHIFT 24
- #define PVRSRV_PDUMP_ADDRMODE_FBCLOSSY_SHIFT 25
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT 28
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_MASK 0xF0000000
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_STRIDE (0U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_BIFTILE_STRIDE1 (1U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_BIFTILE_STRIDE2 (2U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_BIFTILE_STRIDE3 (3U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_BIFTILE_STRIDE4 (4U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_BIFTILE_STRIDE5 (5U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_BIFTILE_STRIDE6 (6U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_BIFTILE_STRIDE7 (7U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_TWIDDLED (9U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_PAGETILED (11U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_ZTWIDDLED (12U << PVRSRV_PDUMP_ADDRMODE_MEMFORMAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCMODE_NONE (0U << PVRSRV_PDUMP_ADDRMODE_FBCMODE_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCMODE_8X8_DIRECT (1U << PVRSRV_PDUMP_ADDRMODE_FBCMODE_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCMODE_16X4_DIRECT (2U << PVRSRV_PDUMP_ADDRMODE_FBCMODE_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCMODE_32X2_DIRECT (3U << PVRSRV_PDUMP_ADDRMODE_FBCMODE_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCMODE_8X8_INDIRECT (4U << PVRSRV_PDUMP_ADDRMODE_FBCMODE_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCMODE_16X4_INDIRECT (5U << PVRSRV_PDUMP_ADDRMODE_FBCMODE_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCMODE_8X8_INDIRECT_4TILE (6U << PVRSRV_PDUMP_ADDRMODE_FBCMODE_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCMODE_16X4_INDIRECT_4TILE (7U << PVRSRV_PDUMP_ADDRMODE_FBCMODE_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBC_DECOR (1U << PVRSRV_PDUMP_ADDRMODE_FBCDECOR_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBC_LOSSY (1U << PVRSRV_PDUMP_ADDRMODE_FBCLOSSY_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_BASE (1U << PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_ENHANCED (2U << PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_V2 (3U << PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_V3_SURFACE (4U << PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_V3_RESOURCE (5U << PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_V3_1_SURFACE (6U << PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_V3_1_RESOURCE (7U << PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_V4 (8U << PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_V4PLUS (9U << PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT)
- #define PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_TFBCDC (10U << PVRSRV_PDUMP_ADDRMODE_FBCCOMPAT_SHIFT)
- /*! PDump Poll Operator */
- typedef enum _PDUMP_POLL_OPERATOR
- {
- PDUMP_POLL_OPERATOR_EQUAL = 0,
- PDUMP_POLL_OPERATOR_LESS = 1,
- PDUMP_POLL_OPERATOR_LESSEQUAL = 2,
- PDUMP_POLL_OPERATOR_GREATER = 3,
- PDUMP_POLL_OPERATOR_GREATEREQUAL = 4,
- PDUMP_POLL_OPERATOR_NOTEQUAL = 5,
- } PDUMP_POLL_OPERATOR;
- #define PVRSRV_PDUMP_MAX_FILENAME_SIZE 75 /*!< Max length of a pdump log file name */
- #define PVRSRV_PDUMP_MAX_COMMENT_SIZE 350 /*!< Max length of a pdump comment */
- /*!
- PDump MMU type
- (Maps to values listed in "PowerVR Tools.Pdump2 Script Functions.doc" Sec 2.13)
- */
- typedef enum
- {
- PDUMP_MMU_TYPE_4KPAGE_32BIT_STDTILE = 1,
- PDUMP_MMU_TYPE_VARPAGE_32BIT_STDTILE = 2,
- PDUMP_MMU_TYPE_4KPAGE_36BIT_EXTTILE = 3,
- PDUMP_MMU_TYPE_4KPAGE_32BIT_EXTTILE = 4,
- PDUMP_MMU_TYPE_4KPAGE_36BIT_STDTILE = 5,
- PDUMP_MMU_TYPE_VARPAGE_40BIT = 6,
- PDUMP_MMU_TYPE_VIDEO_40BIT_STDTILE = 7,
- PDUMP_MMU_TYPE_VIDEO_40BIT_EXTTILE = 8,
- PDUMP_MMU_TYPE_MIPS_MICROAPTIV = 9,
- PDUMP_MMU_TYPE_LAST
- } PDUMP_MMU_TYPE;
- /*!
- PDump states
- These values are used by the bridge call PVRSRVPDumpGetState
- */
- #define PDUMP_STATE_CAPTURE_FRAME (1U) /*!< Flag represents the PDump being in capture range or not*/
- #define PDUMP_STATE_CONNECTED (2U) /*!< Flag represents the PDump Client App being connected on not */
- #define PDUMP_STATE_SUSPENDED (4U) /*!< Flag represents the PDump being suspended or not */
- #define PDUMP_STATE_CAPTURE_IN_INTERVAL (8U) /*!< Flag represents the PDump being in a capture range interval */
- /*!
- PDump Capture modes
- Values used with calls to PVRSRVPDumpSetDefaultCaptureParams
- */
- #define PDUMP_CAPMODE_UNSET 0x00000000UL
- #define PDUMP_CAPMODE_FRAMED 0x00000001UL
- #define PDUMP_CAPMODE_CONTINUOUS 0x00000002UL
- #define PDUMP_CAPMODE_BLOCKED 0x00000003UL
- #define PDUMP_CAPMODE_MAX PDUMP_CAPMODE_BLOCKED
- #endif /* PDUMPDEFS_H */
- /*****************************************************************************
- End of file (pdumpdefs.h)
- *****************************************************************************/
|