1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531 |
- #ifndef _BLT_IOCTL_H_
- #define _BLT_IOCTL_H_
- #include <linux/ioctl.h>
- #include "drv_types.h"
- #define BLT_CMD_TEXP 0x01 //Text Expansion
- #define BLT_CMD_GEXP 0x02 //Graphic Expansion
- #define BLT_CMD_CFILL 0x04 //Color Fill
- #define BLT_CMD_CLUT 0x08 //CLUT DMA Update
- #define BLT_CMD_SCL 0x10 //Stretch/Shrink
- #define BLT_CMD_CP 0x20 //Source Copy
- #define BLT_CMD_BLD 0x40 //Blending
- #define BLT_CMD_SWINT 0x80 //SW Interrupt
- #define BLT_CMD_LINE 0x00800004 //Line draw
- #define BLT_CMD_ELLIPSE 0x00400004 //
- #define BLT_CMD_ANTI_ALIAS 0x00000010
- #define BLT_CMD_POLYGON_FILL 0x00040040
- #define BLT_CMD_GRADIENT_FILL 0x00200004
- #define BITS_PER_PIXEL_1 1
- #define BITS_PER_PIXEL_2 2
- #define BITS_PER_PIXEL_4 4
- #define BITS_PER_PIXEL_8 8
- #define BITS_PER_PIXEL_16 16
- #define BITS_PER_PIXEL_24 24
- #define BITS_PER_PIXEL_32 32
- #define BYTE_PER_PIXEL_8 1
- #define BYTE_PER_PIXEL_24 3
- #define DRV_BITS_PER_PIXEL_1 1
- #define DRV_BITS_PER_PIXEL_2 0
- #define DRV_BITS_PER_PIXEL_4 2
- #define DRV_BITS_PER_PIXEL_8 3
- #define DRV_BITS_PER_PIXEL_16 4
- #define DRV_BITS_PER_PIXEL_24 5
- #define DRV_BITS_PER_PIXEL_32 6
- //********* Ioctl Blt Rotation AP use //x16 version define
- #define ROT_DIRECTION_CLOCKWISE 1
- #define ROT_DIRECTION_COUNTERCLOCKWISE 2
- #define ROT_DIRECTION_HFLIP 3
- #define ROT_DIRECTION_VFLIP 4
- #define ROT_180_ANGLE 5
- //********* x26 will let AP to use
- #define MODE_2ROT_NORMAL 0x70000000//copy //add 0x200 for check only
- #define MODE_2ROT_V_FLIP 0x70100000
- #define MODE_2ROT_H_FLIP 0x70200000
- #define MODE_2ROT_180_ANGLE 0x70300000
- #define MODE_2ROT_90_ANGLE_H_FLIP 0x70400000
- #define MODE_2ROT_270_ANGLE 0x70500000
- #define MODE_2ROT_90_ANGLE 0x70600000
- #define MODE_2ROT_90_ANGLE_V_FLIP 0x70700000
- #define MODE_ALPHA_INVERT 0xE0100000
- #define MODE_BILINEAR_ENABLE 0xE0200000
- //******** 368
- //------ 0x 1 1 8 =>
- #define BLT_CPE_ALPHA_REPLACE_BSHIFT 8
- #define BLT_CPE_ALPHA_CHANGE_BSHIFT 16
- #define BLT_CPE_ROTE_BSHIFT 17
- #define BLT_CPE_ALPHA_REPLACE_ENABLED_BSHIFT 23
- #define BLT_CPE_ALPHA_INVERSE_BSHIFT 24
- #define BLT_CPE_DITHER_ENABLED_BSHIFT 25
- #define BLT_CPE_FUN_SHIFT 20 //22:20
- #define BLT_CPE_FUN_CP 0
- #define BLT_CPE_FUN_COMPRE 1
- #define BLT_CPE_FUN_DE_COM 2
- #define BLT_CPE_FUN_MERGE 3
- #define BLT_CPE_FUN_ROP 4
- //******** COMPRESS
- #define BLT_CP_COMPRESS_16A 0x00
- #define BLT_CP_FUNC_MASK 0x07 //22:20
- #define BLT_CP_COMPRESS_EN 0x01 //22:20 001b
- #define BLT_CP_COMPRESS_DE 0x02 //22:20 010b
- #define BLT_CP_COMPRESS_INVERSE_EN 0x05 //22:20 101b
- #define BLT_CP_COMPRESS_EN_NEW 0x06 //22:20 110b
- #define BLT_CP_COMPRESS_INVERSE_EN_NEW 0x07 //22:20 111b
- #define BLT_COMP_SATRT_ADDR 13 //13
- //------ 0x 1 3 0 =>
- #define BLT_CPE_TYPE_SHIFT 8 //12:8
- #define BLT_CPE_TYPE_ARGB8565_ARGB8565 0x00
- #define BLT_CPE_TYPE_ARGB8565_ARGB4444 0x01
- #define BLT_CPE_TYPE_8565_2222 0x02
- #define BLT_CPE_TYPE_ARGB8565_RGB565 0x03
- #define BLT_CPE_TYPE_MERGE_NORMAL 0x04
- #define BLT_CPE_TYPE_MERGE_420_YUV 0x05
- #define BLT_CPE_TYPE_MERGE_422_YUV 0x25 //13 12:8
- #define BLT_CPE_TYPE_MERGE_444_YUV 0x06
- #define BLT_CPE_TYPE_MERGE_420_VIP 0x07
- #define BLT_CPE_TYPE_MERGE_422_VIP 0x27 //13 12:8
- #define BLT_CPE_TYPE_MERGE_444_VIP 0x107 //16 12:8
- #define BLT_CPE_TYPE_MERGE_Gray_VIP 0x207 //17
- #define BLT_CPE_TYPE_RGBA8888_ARGB8565 0x08
- #define BLT_CPE_TYPE_RGB888_ARGB8565 0x09
- #define BLT_CPE_TYPE_RGBA5551_ARGB8565 0x0a
- #define BLT_CPE_TYPE_RGBA4444_ARGB8565 0x0b
- #define BLT_CPE_TYPE_RGB565_ARGB8565 0x0c
- #define BLT_CPE_TYPE_LA88_ARGB8565 0x0d
- #define BLT_CPE_TYPE_L8_ARGB8565 0x0e
- #define BLT_CPE_TYPE_A8_ARGB8565 0x0f
- #define BLT_CPE_TYPE_ARGB8888_ARGB8565 0x10
- #define BLT_CPE_TYPE_ARGB4444_ARGB8565 0x11
- #define BLT_CPE_TYPE_ARGB8565_A8 0x12
- #define BLT_CPE_TYPE_ARGB8565_L8 0x13
- #define BLT_CPE_TYPE_ARGB8565_L8_Gray 0x14
- #define BLT_CPE_TYPE_ABGR8888_ARGB8565 0x15
- #define BLT_CPE_TYPE_A8Y8_ARGB8565 0x16
- #define BLT_CPE_TYPE_L8_ARGB8555 0x17
- #define BLT_CPE_TYPE_ARGB8888_ARGB8888 0x19
- #define BLT_CPE_TYPE_ABGR8888_ARGB8888 0x1a
- #define BLT_CPE_TYPE_RGB888_ARGB8888 0x1b
- #define BLT_CPE_TYPE_RGB565_ARGB8888 0x1c
- #define BLT_CPE_TYPE_ARGB8888_RGB565 0x1d
- #define BLT_CPE_TYPE_ARGB8888_ARGB1555 0x1e
- #define BLT_CPE_TYPE_ARGB8565_ARGB1555 0x1f
- //Enable format mode for scaling, blending, scaling&blending, and compress after 331
- #define BLT_CPE_MODE_SHIFT 6 //7:6
- #define BLT_CPE_MODE_ARGB1555 0x1
- #define BLT_CPE_MODE_ARGB4444 0x2
- #define BLT_COMPARE_ARGB8565_ARGB8888 0x80000000 //
- #define BLT_COMPARE_ARGB4444_ARGB8565 (0x80000000 +BLT_CPE_TYPE_ARGB4444_ARGB8565)
- #define BLT_COMPARE_ARGB8565_ARGB4444 (0x80000000 +BLT_CPE_TYPE_ARGB8565_ARGB4444)\
- //******** 358
- #define BLT_H264MERGE_NORMAL 0x00180000 //not change OSD has use
- #define BLT_H264MERGE_420_YUV 0x001a0000 //not change OSD has use
- #define BLT_H264MERGE_422_YUV 0x001b0000 //not change OSD has use
- #define BLT_H264MERGE_444_YUV 0x001c0000 //not change OSD has use
- #define BLT_H264MERGE_420_VIP 0x001d0000 // 368
- #define BLT_H264MERGE_422_VIP 0x001e0000 // 368
- #define BLT_H264MERGE_444_VIP 0x00190000 // 368
- #define BLT_H264MERGE_Gray_VIP 0x00200000
- #define BLT_CURSOR_DATA_SW_SIZE (64 * 64 * 3) // 8 5 6 5 //12288 0x3000
- #define BLT_CURSOR_DATA_HW_SIZE (64 * 0x100) // It must 2 5 6 alig_ment //16384 0x4000
- //Androi_d Virtual Screen Width/Height
- //taco [ocean blue]
- #ifdef CONFIG_FB1366_768
- #define PS_AND_WIDTH 1366
- #define PS_AND_HEIGHT 768
- #endif
- #ifdef CONFIG_FB720
- #define PS_AND_WIDTH 1280
- #define PS_AND_HEIGHT 720
- #endif
- #ifdef CONFIG_FB1080
- #define PS_AND_WIDTH 1920
- #define PS_AND_HEIGHT 1080
- #endif
- #ifdef CONFIG_FB768
- #define PS_AND_WIDTH 1024
- #define PS_AND_HEIGHT 768
- #endif
- #if !defined(PS_AND_WIDTH) || !defined(PS_AND_HEIGHT)
- #define PS_AND_WIDTH 1920
- #define PS_AND_HEIGHT 1080
- #endif
- //~taco [ocean blue]
- //CC Virtual Screen Width/Height
- #define PS_CC_WIDTH 16*34//16*32//720
- #define PS_CC_HEIGHT 26*15//576
- //Subtitle Virtual Screen Width/Height
- #define PS_SUBTITLE_WIDTH 720
- #define PS_SUBTITLE_HEIGHT 576
- //Teletex Virtual Screen Width/Height
- #define PS_TT_WIDTH 12*40//720
- #define PS_TT_HEIGHT 10*25//576
- //Menu Virtual Screen Width/Height
- #define PS_MENU_WIDTH 683//600//720
- #define PS_MENU_HEIGHT 384//300//576
- #define PS_MEDIA_WIDTH 1366
- #define PS_MEDIA_HEIGHT 768
- //OSDGAME Virtual Sceen Width/Height
- #define PS_GAME_WIDTH 640
- #define PS_GAME_HEIGHT 480
- #define OSD_PIXEL_DEPTH 24 // bits per pixel(RGB(5:6:5) + 8-bit Alpha
- #define OSD_PIXEL_DEPTH_IN_BYTE 3 //(OSD_PIXEL_DEPTH / 8)
- #define OSD_FAILURE 0
- #define OSD_SUCCESS 1
- //for update opton Show effect mode
- #define UPDATE_NOW 0x01
- #define UPDATE_FADE_IN 0x02
- #define UPDATE_FADE_OUT 0x04
- #define UPDATE_FADE_MOV 0x08
- #define UPDATE_PULL_DOWN_IN 0x10
- #define UPDATE_PULL_DOWN_OUT 0x20
- #define UPDATE_PULL_UP_IN 0x40
- #define UPDATE_PULL_UP_OUT 0x80
- #if 1//ENABLE_BLT_FADE_IN_OUT
- //pull I_O => hide mov_in + dis_play mov_out
- #define UPDATE_PULL_I_O_2DOWN 0x0100
- #define UPDATE_PULL_I_O_2UP 0x0200
- #define UPDATE_PULL_I_O_2LEFT 0x0400
- #define UPDATE_PULL_I_O_2RIGHT 0x0800
- #define UPDATE_PULL_I_O_DIR_MASK (UPDATE_PULL_I_O_2DOWN|UPDATE_PULL_I_O_2UP|UPDATE_PULL_I_O_2LEFT|UPDATE_PULL_I_O_2RIGHT) //driver only
- #endif
- #define TEXT_MODE_ITALIC 0x00000001
- #define TEXT_MODE_UNDERLINE 0x00000002
- #define TEXT_MODE_DOUBLE_WIDTH 0x00000004
- #define TEXT_MODE_DOUBLE_HEIGHT 0x00000008
- #define TEXT_MODE_FLASH 0x00000010 //Don't set FLASH directly, Set the following flash mode instead
- #define TEXT_MODE_FLASH_FG_TO_BG (0x00000020 | TEXT_MODE_FLASH)
- #define TEXT_MODE_FLASH_FG_INVERT (0x00000040 | TEXT_MODE_FLASH)
- #define TEXT_MODE_FLASH_FG_BG_INVERT (0x00000080 | TEXT_MODE_FLASH)
- #define TEXT_MODE_SCROLL 0x00000100 //Don't set SCROLL directly, set the following scroll mode instead
- #define TEXT_MODE_SCROLL_UP (0x00000200 | TEXT_MODE_SCROLL)
- #define TEXT_MODE_SCROLL_DOWN (0x00000400 | TEXT_MODE_SCROLL)
- #define TEXT_MODE_SCROLL_LEFT (0x00000800 | TEXT_MODE_SCROLL)
- #define TEXT_MODE_SCROLL_RIGHT (0x00001000 | TEXT_MODE_SCROLL)
- #define TEXT_MODE_LARGE_FONT 0x00002000
- #define TEXT_MODE_SMALL_FONT 0x00004000
- #define TEXT_MODE_ITALIC_HEAD (0x00008000 | TEXT_MODE_ITALIC)
- #define TEXT_MODE_ITALIC_TAIL (0x00010000 | TEXT_MODE_ITALIC)
- #define TEXT_MODE_FORCE_COVER 0x00020000 // for C_C will trans_patent window
- #define TEXT_MODE_FLASH_FG_TO_BG_PHASE_INVERT (0x00040000 | TEXT_MODE_FLASH)
- #define TEXT_MODE_FLASH_FG_TO_USERDEF (0x00080000 | TEXT_MODE_FLASH)
- #define TEXT_MODE_FLASH_RATE_SLOW 0
- #define TEXT_MODE_FLASH_RATE_FAST_PHASE_1 0x00100000
- #define TEXT_MODE_FLASH_RATE_FAST_PHASE_2 0x00200000
- #define TEXT_MODE_FLASH_RATE_FAST_PHASE_3 0x00300000
- #define TEXT_MODE_FLASH_RATE_MASK 0x00300000
- #define TEXT_MODE_EDGE_RIGHT_DROP 0x01000000 // S/W mode only
- #define TEXT_MODE_EDGE_RAISED 0x02000000 // S/W mode only
- #define TEXT_MODE_EDGE_DEPRESSED 0x04000000 // S/W mode only
- #define TEXT_MODE_EDGE_UNIFORM 0x08000000 // S/W mode only
- #define TEXT_MODE_EDGE_LEFT_DROP 0x10000000 // S/W mode only
- #define TEXT_MODE_EDGE_BY_HW 0x20000000 // should set by OSD_lib
- #define TEXT_MODE_EDGE_SW_ENABLE (TEXT_MODE_EDGE_RIGHT_DROP|TEXT_MODE_EDGE_RAISED|TEXT_MODE_EDGE_DEPRESSED|TEXT_MODE_EDGE_UNIFORM|TEXT_MODE_EDGE_LEFT_DROP) // for blt driver only
- #define TEXT_FOREGROUND 0
- #define TEXT_BACKGROUND 1
- #define TEXT_EDGE 2
- #define TEXT_SHADOW 3
- //special use in TEXT_MODE_FLAHS_FG_TO_USERDEF to define customize flash color
- #define TEXT_USERDEF_FOREGROUND 2
- #define TEXT_USERDEF_BACKGROUND 3
- #define TEXT_MODE_2ROT_NORMAL 0x40000000
- #define TEXT_MODE_2ROT_V_FLIP 0x40100000
- #define TEXT_MODE_2ROT_H_FLIP 0x40200000
- #define TEXT_MODE_2ROT_180_ANGLE 0x40300000
- #define TEXT_MODE_2ROT_90_ANGLE_H_FLIP 0x40400000
- #define TEXT_MODE_2ROT_270_ANGLE 0x40500000
- #define TEXT_MODE_2ROT_90_ANGLE 0x40600000
- #define TEXT_MODE_2ROT_90_ANGLE_V_FLIP 0x40700000
- #define BLT_MAX_PRIORITY_NUM 8
- //---------------------------------------------------------------------------------------
- typedef enum
- {
- PS_BOTTOM =0,
- PS_ANDROID,
- PS_CC,
- PS_SUBTITLE,
- PS_TT,
- PS_EX_TT,
- PS_OSD_GAME,
- PS_ESTICKER,
- PS_MEDIA,
- PS_MENU,
- PS_KEYPAD,
- PS_BLTAP,
- PS_PLANE_NUM,
- PS_REDO,
- PS_FLASH,
- PS_IOCTL
- }PLANE_STYLE;
- typedef enum
- {
- MODE_ORIGINAL =0,
- MODE_EBOOK,
- MODE_GAME,
- MODE_NUM
- }MEMORY_MODE;
- ///////////////////////Color Look Up Table///////////////////////////////////
- typedef enum
- {
- CR_ALPHA,
- CR_RED,
- CR_GREEN,
- CR_BLUE
- }COLOR_STYLE;
- typedef enum
- {
- CLUT_TYPE_ARGB,
- CLUT_TYPE_AYCC
- }CLUT_TYPE;
- enum //IOCTL MULTI FUNC
- {
- IMF_CUR_DATA_CHANGE_BY_BLT = 1, //should not use
- IMF_CUR_DATA_CHANGE_BY_AP , // size = 64 x 64 *3
- IMF_CUR_DATA_CHANGE_BY_BLT_HALF_W ,
- IMF_CUR_DATA_CHANGE_BY_BLT_HALF_H,
- IMF_PDP_CHNAGE_SIT
- };
- typedef enum
- {
- OSD_SSE_MOVE_FROM_LAST = 0, // not change use last value
- OSD_SSE_MOVE_FROM_LEFT = 0x1, //notice:: depend on iotcl.h
- OSD_SSE_MOVE_FROM_UP = 0x2,
- OSD_SSE_MOVE_FROM_RIGHT = 0x3,
- OSD_SSE_MOVE_FROM_DOWN = 0x4,
- OSD_SSE_MOVE_FROM_LEFT_UP = 0x5,
- OSD_SSE_MOVE_FROM_RIGHT_UP = 0x6,
- OSD_SSE_MOVE_FROM_LEFT_DOWN = 0x7,
- OSD_SSE_MOVE_FROM_RIGHT_DOWN = 0x8,
- OSD_SSE_MOVE_FROM_XY = 0x9, //selt set
- }OSD_SSE_MOVE_IN_DIRECTION; // Show Special Effect
- typedef enum
- {
- OSD_SSE_MOVE_TO_LAST = 0x0, // not change use last value
- OSD_SSE_MOVE_TO_LEFT = 0x11,
- OSD_SSE_MOVE_TO_UP = 0x12,
- OSD_SSE_MOVE_TO_RIGHT = 0x13,
- OSD_SSE_MOVE_TO_DOWN = 0x14,
- OSD_SSE_MOVE_TO_LEFT_UP = 0x15,
- OSD_SSE_MOVE_TO_RIGHT_UP = 0x16,
- OSD_SSE_MOVE_TO_LEFT_DOWN = 0x17,
- OSD_SSE_MOVE_TO_RIGHT_DOWN = 0x18,
- OSD_SSE_MOVE_TO_XY = 0x19, //selt set
- }OSD_SSE_MOVE_OUT_DIRECTION; // Show Special Effect
- typedef enum
- { //For use to recognize the font type, used to translate the index between unicode and font table
- FONT_TT = 1,
- FONT_TT_ITALIC, // 2
- FONT_CAPTION, // 3
- FONT_CAPTION_ITALIC, // 4
- FONT_SYSTEM, // 5
- FONT_EPG = FONT_SYSTEM, // 5
- FONT_CHINESE, // 6
- FONT_CCSTYLE, // 7
- FONT_CUSTOM, // 8
- FONT_MULTI_LANG0 // 9 //2081126
- }FONT_TYPE;
- //---------------------------------------------------------------------------------------
- typedef struct
- {
- UINT8 crBlue;
- UINT8 crGreen;
- UINT8 crRed;
- UINT8 crAlpha;
- }COLOR_ARGB, *PCOLOR_ARGB;
- typedef enum
- {
- RGB_888=0,
- BGR_888,
- YUV_888,
- }DATA_FORMAT;
- typedef struct
- {
- union
- {
- ULONG argb;
- ULONG aycc;
- COLOR_ARGB argb_byte;
- };
- }COLOR_ENTRY, *PCOLOR_ENTRY;
- typedef struct
- {
- ULONG ClutType:8; //CLUT_TYPE_ARGB: ARGB(8,8,8,8), CLUT_TYPE_AYCC: AYCC(8,8,8,8)
- ULONG StartEntry:8;
- ULONG EntryNums:16; // 1 ~ 255
- COLOR_ENTRY Entry[1];
- }CLU_TABLE, *PCLU_TABLE;
- typedef struct
- {
- ULONG a565:24;
- ULONG Reserved_1:8;
- }COLOR_A565, *PCOLOR_A565;
- typedef struct
- {
- ULONG blue:5;
- ULONG green:6;
- ULONG red:5;
- ULONG alpha:8;
- ULONG Reserved_2:8;
- }COLOR_A565_BYTE;
- typedef struct
- {
- union{
- COLOR_A565 ClrA565;
- COLOR_A565_BYTE ClrA565Byte;
- };
- }COLOR_24BIT;
- /////////////////////////////////////////////////////////////////////////////
- typedef struct _tagPOINT_
- {
- UINT32 nX:16;
- UINT32 nY:16;
- }S_POINT,* PS_POINT;
- typedef struct _tagSIZE_
- {
- UINT32 nWidth:16;
- UINT32 nHeight:16;
- }S_SIZE,* PS_SIZE;
- typedef struct _tagBlock_
- {
- S_POINT TopLeftPt;
- S_SIZE Size;
- }S_BLOCK,* PS_BLOCK;
- typedef struct _tagRECTANGLE_
- {
- UINT32 nLeft:16;
- UINT32 nTop:16;
- UINT32 nRight:16;
- UINT32 nBottom:16;
- }S_RECT,*PS_RECT;
- /*//////////////////////////// Font Table ///////////////////////////////////
- Font ---> ----------------- \
- Address | Char Code 0 | Font Offset, every char code should have the same Font Offset
- ----------------- /
- | Char Code 1 |
- -----------------
- |
- |
- -----------------
- | Char Code N |
- -----------------
- *///////////////////////////////////////////////////////////////////////
- typedef struct
- {
- //The byte length of the character, if it's not byte aligend, rounded up to
- //the nearest byte size.
- //For example, a 13*18, 2 bit per pixel font should have 468 bits.
- //CharLen = 59 byte(actual 58.5 byte)
- //CharW = 13
- //CharH = 18
- ULONG CharLen:16;
- ULONG CharW:8; //number of columns of the character
- ULONG CharH:8; //number of rows of the character
- UINT8 CharBmp[1]; //Should allocate size as FontOffset for each CHAR_CODE
- }CHAR_CODE, *PCHAR_CODE;
- typedef struct
- {
- ULONG FontOffset:16; //FontOffset value should be 16-byte aligned
- ULONG BitsPerPixel:8; //Value should be 1 or 2.
- //For 1bpp, 0 is background color, 1 is foreground color
- //For 2bpp, in addition to 0 and 1,
- //2 means shadow color and 3 means the edge color
- //4 may be used in TT 12x10x4, 6x5x4 DRCS
- ULONG FontType:8; //Enum values defined in FONT_TYPE
- UINT32 (*IndexTransformFun)(ULONG );
- //If the index of the unicode character is not the same to
- //the index of the font table, the value will not be NULL.
- //It'll be the function pointer that transform the index of
- //unicode character to the index of the font table
- UINT32 reserved1;
- ULONG reserved2:16;
- ULONG CharNums:16; //Char numbers of the font table
- CHAR_CODE Char[1]; //Font address should be 16-byte aligned
- }FONT_TABLE, *PFONT_TABLE;
- /////////////////////////////////////////////////////////////////////////////
- typedef struct
- {
- //If pCluTable is NULL, the following 4 color entry represents the real ARGB value of Backgournd, forground, edge and shadow color. if pCluTable is not NULL, the following 4 color represents the index of the color look up table. In the last case, only low byte is used. Cause the maximum index of the CLUT is 256.
- PCLU_TABLE pCluTable;
- COLOR_ENTRY Color[4]; //represent TEXT_BACKGROUND, TEXT_FOREGROUND, TEXT_EDGE and TEXT_SHADOW respectively
- ULONG TextMode; //eg. italic, flash, double width, double height, etc, the value could be XORed with the pre-defined TEXT_MODE_XXX value
- }TEXT_ATTRIBUTE, *PTEXT_ATTRIBUTE;
- typedef struct
- {
- PFONT_TABLE pFontTable;
- PTEXT_ATTRIBUTE pTextAttrib;
- S_BLOCK DestBlock;
- S_SIZE fontStrExpSize; // for Str _ Ex will as "Texp size" vs "virture" vs "true size"
- ULONG TextCount;
- union{
- UINT8 * pCharByte; //if pFontTable->CharNums <= 256, use pCharByte
- UINT16 * pCharUnicode; //if pFontTable->CharNums > 256, use pCharUnicode
- };
- }OSD_TEXT, * POSD_TEXT;
- typedef struct _BLT_CMD_UNIT_
- {
- ULONG BltCmd;
- void * pParam; //pass the following corresponding data structure with the BltCmd
- ULONG option[2];//option[0]has used for 1 bit
- }BLT_CMD_UNIT, *PBLT_CMD_UNIT;
- typedef struct _BLT_IOCTL_PARAM_
- {
- INT32 BlockIndex; //returned from driver
- ULONG bDisplay:8;
- ULONG Ps:7;
- ULONG bUsePTS:1;
- ULONG BltCmdNums:16;
- ULONG priority;
- ULONG Pts;
- ULONG PtsTimeOut;
- BLT_CMD_UNIT * pBltCmdUnit;
- }BLT_IOCTL_PARAM, *PBLT_IOCTL_PARAM;
- typedef struct _BLT_IOCTL_MULTI_FUNC_
- {
- ULONG functionMode;
- ULONG oneValue;
- ULONG moreDataSize;
- INT8 *pData;
- }BLT_IOCTL_MULTI_FUNC, *PBLT_IOCTL_MULTI_FUNC;
- typedef struct _CFILL_UNIT_
- {
- // the coordinate is relative to CFILL block Coordinate
- S_BLOCK RelBlock;
- ULONG Argb565Clr:24; //A:r:g:b 8:5:6:5
- ULONG Reserved_2:8;
- }CFILL_UNIT, *PCFILL_UNIT;
- #define CFILL_TYPE_BLOCK 0
- #define CFILL_TYPE_BACKGROUND 1
- typedef struct _CFILL_PARAM_
- {
- INT32 DestBlockId; //Returned from Driver
- INT32 CFillType; //0 : Normal Object, 1:Background
- //Coordinate relative to the virtual screen of the specified plane
- //Maximum CFill Size relative to the virtual screen of the specified plane
- S_BLOCK DestBlock;
- ULONG CFillUnitNums;
- CFILL_UNIT * pCfillUnit;
- }CFILL_PARAM, *PCFILL_PARAM;
- typedef struct _CLUT_PARAM_
- {
- ULONG IsYCC:1; //1 //1: YCC, 0: RGB
- ULONG Reserved_1:7;
- ULONG DestStartEntry:8; // Starting Entry Index to fill, 0~0xff, DestStartEntry+ClutEntryNum should be <= 256
- ULONG ClutEntryNum:16; //1 // 1 ~ 256
- COLOR_ENTRY * pClutEntry;
- /*
- ULONG DestStartEntry:8; // Starting Entry Index to fill, 0~0xff, DestStartEntry+ClutEntryNum should be <= 256
- ULONG Reserved_1:24;
- CLU_TABLE Clut;
- */
- }CLUT_PARAM, *PCLUT_PARAM;
- typedef struct _MEMORY_PARAM_
- {
- ULONG phyAddr;
- ULONG Size;
- }MEMORY_PARAM, *PMEMORY_PARAM;
- typedef struct _GEXP_PARAM_
- {
- // PLANE_STYLE Ps;
- ULONG SrcAddr;
- ULONG MMUEnable;
- ULONG SrcAddr2; //NULL if the bitmap is not interlaced, usually used in subtitle
- ULONG MMUEnable2;
- S_SIZE SrcSize;
- S_SIZE WishSize;
- UINT8 alphaOld;
- UINT8 alphaNew;
- S_POINT DestLeftTopPt;
- PCLUT_PARAM pClut; //Used when ClutEn is 1
- COLOR_24BIT DclrARGB565[4]; //argb Only, not used when ClutEn is 1
- // ULONG DclrARGB565:24;
- ULONG SrcBPP:3;
- ULONG DclrRoute:3; // Dclr Set value : 0 ~ 5
- ULONG ClutEn:1; //0: Disable CLUT(using Dclr Mode), 1: Enable CLUT
- ULONG Reserved_1:25;
- ULONG Mode;
- INT32 DestBlockId; //Returned from Driver
- }GEXP_PARAM, *PGEXP_PARAM;
- typedef struct _GEXPDFB_PARAM_
- {
- ULONG SrcAddr;
- ULONG DestAddr; //NULL if the bitmap is not interlaced, usually used in subtitle
- ULONG DestOffset;
- UINT32 SrcWidth:16;
- UINT32 SrcHeight:16;
- PCLUT_PARAM pClut; //Used when ClutEn is 1
- ULONG SrcBPP:3;
- ULONG Reserved_1:29;
- INT32 DestBlockId; //Returned from Driver
- }GEXPDFB_PARAM, *PGEXPDFB_PARAM;
- typedef struct _TEXP_PARAM_
- {
- // PLANE_STYLE Ps;
- INT32 DestBlockId; //Returned from Driver
- OSD_TEXT OsdText;
- }TEXP_PARAM, *PTEXP_PARAM;
- typedef struct _BLD_PARAM_
- {
- // PLANE_STYLE Ps;
- INT32 SrcBlockId; //Set by UI
- INT32 DestBlockId; //Set by UI, if 0 means blend to the Plane
- ULONG SrcPosX:16; //PosX in Src position
- ULONG SrctPosY:16; //PosY in Src Position
- ULONG SrcWidth:12; //in Pixel
- ULONG SrcHeight:12; //in Pixel
- ULONG Reserved_1:8;
- ULONG DestPosX:16; //PosX in Dest Position
- ULONG DestPosY:16; //PosY in Dest Position
- }BLD_PARAM, *PBLD_PARAM;
- typedef struct _SCL_PARAM_
- {
- // PLANE_STYLE Ps;
- INT32 SrcBlockId;
- INT32 DestBlockId; //Returned from driver
- ULONG SrcPosX:16; //PosX in Src Position
- ULONG SrctPosY:16;//PoxY in Src Position
- ULONG SrcWidth:12; //in Pixel
- ULONG SrcHeight:12; //in Pixel
- ULONG Reserved_1:8; //End of Dword
- ULONG DestWidth:12; //in Pixel
- ULONG DestHeight:12; //in Pixel
- ULONG Reserved_2:8; //End of Dword
- ULONG DestOffset:14; //in Byte, if 0 or too small then would be decided by driver
- ULONG Reserved_3:18; //End of Dword
- }SCL_PARAM, *PSCL_PARAM;
- typedef struct _CP_PARAM_
- {
- // PLANE_STYLE Ps;
- INT32 SrcBlockId;
- INT32 DestBlockId; //Returned from driver
- ULONG SrcWidth:12; //in Pixel
- ULONG SrcHeight:12; //in Pixel
- ULONG Reserved_1:8; //End of Dword
- ULONG DestOffset:14; //in Byte, if 0 or too small then would be decided by driver
- ULONG Reserved_2:18; //End of Dword
- }CP_PARAM, *PCP_PARAM;
- /////////////////////////////////////////////////////////////////////
- typedef struct _REMOVE_BLOCK_IOCTL_PARAM_
- {
- PLANE_STYLE Plane;
- INT32 BlockType; //-1 means all
- ULONG bUpdate:16; //if bUpdate = 0, do not update display screen, otherwise, display screen will be updated.
- ULONG bFound:8; //Return from Driver
- ULONG Reserved:8;
- INT32 RmBlkNums; //If 0 means all, the pRmBlockIndex will be ignored, otherwize it means the nums of the pDispBlockIndex nums
- INT32 * pRmBlockIndex;
- }REMOVE_BLOCK_IOCTL_PARAM, *PREMOVE_BLOCK_IOCTL_PARAM;
- typedef struct _REMOVE_SHOW_GROUP_IOCTL_PARAM_
- {
- PLANE_STYLE Plane;
- ULONG bUpdate:16; //if bUpdate = 0, do not update display screen, otherwise, display screen will be updated.
- ULONG bFound:8; //Return from Driver
- ULONG Reserved:8;
- INT32 RmBlkNums;
- INT32 * pRmBlockIndex;
- S_POINT *pRmsPt;
- }REMOVE_SHOW_GROUP_IOCTL_PARAM, *PREMOVE_SHOW_GROUP_IOCTL_PARAM;
- typedef struct _DISPLAY_BLOCK_IOCTL_PARAM_
- {
- PLANE_STYLE Plane;
- INT32 BlockType; //-1 means all
- ULONG bUpdate:16; //if bUpdate = 0, do not update display screen, otherwise, display screen will be updated immediately.
- ULONG bFound:8; //Return from Driver
- ULONG Reserved:8;
- INT32 DispBlkNums; //If 0 means all, the pDispBlockIndex will be ignored, otherwize it means the nums of the pDispBlockIndex nums
- INT32 * pDispBlockIndex;
- }DISPLAY_BLOCK_IOCTL_PARAM, *PDISPLAY_BLOCK_IOCTL_PARAM;
- typedef struct _MOVE_BLOCK_IOCTL_PARAM_
- {
- PLANE_STYLE Plane;
- INT32 BlockIndex;
- S_POINT DestPt; //Dispaly Postion, each -1 value of nX or nY means no change
- S_BLOCK SrcBlock; //If you want to display partial of the src block, set the top-left point and size of the block, if it's left unchanged, set the value to -1
- ULONG bUpdate:16;
- ULONG bFound:8; //Return from driver, 0 means cann't find the block
- ULONG Reserved:8;
- }MOVE_BLOCK_IOCTL_PARAM, *PMOVE_BLOCK_IOCTL_PARAM;
- /////////////////////////////////////////////////////////////////////
- typedef struct _RESERVED_FONT_INFO_
- {
- ULONG ReservedAddr;
- ULONG ReservedSize;
- ULONG AvailableAddr;
- ULONG RequiredFontSize;
- ULONG RequiredMode; //2081126 =>
- }RESERVED_FONT_INFO, *PRESERVED_FONT_INFO;
- #define OSD_FONT_SITE_AT_0 0 // use same addr range
- #define OSD_FONT_SITE_ORDER 1 // use other addr range
- #define OSD_FONT_MULTI_LANG0_SIZE 150*1024 //2081126 <=
- typedef struct _RGB_3TO4_TRANSFORM_
- {
- ULONG SrcAddr;
- ULONG Width;
- ULONG Height;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- }RGB_3TO4_TRANSFORM, *PRGB_3TO4_TRANSFORM;
- typedef struct _RGBYCC_SCALING_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestWidth;
- ULONG DestHeight;
- ULONG DestLineOffset;
- ULONG TempAddr;
- ULONG DataFormat;
- #ifdef BLT_HAPS
- ULONG MMU_Enable_line;
- ULONG TypeBits:5;
- ULONG Blending;
- ULONG Srcbpp;
- PCLUT_PARAM pClut; //Used when ClutEn is 1
- #endif
- }RGBYCC_SCALING, *PRGBYCC_SCALING;
- typedef struct _RGBYCC_SCALING_MODES_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestWidth;
- ULONG DestHeight;
- ULONG DestLineOffset;
- ULONG Mode; // Dithering:1 [10] InterAlgorithm:1 [9] Dithering:1 [8] TypeBits:5 [4:0]
- }RGBYCC_SCALING_MODES, *PRGBYCC_SCALING_MODES;
- typedef struct _OSDPLANE_SETTING_
- {
- PLANE_STYLE Ps;
- S_SIZE VirtualScrSize;
- S_BLOCK OsdPlaneBlock;
- }OSDPLANE_SETTING, *POSDPLANE_SETTING;
- typedef struct _OSDPLANE_DISPLAYSIZE_
- {
- PLANE_STYLE Ps;
- S_POINT sPt;
- S_SIZE DisplaySize;
- }OSDPLANE_DISPLAYSIZE, *POSDPLANE_DISPLAYSIZE;
- typedef struct _BLT_MEMCOPY_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- }BLT_MEMCOPY, *PBLT_MEMCOPY;
- typedef struct _BLT_MEMCOPY_EX_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG Option;
- }BLT_MEMCOPY_EX, *PBLT_MEMCOPY_EX;
- typedef struct _BLT_CONCENTRATE_ // com_press 3
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG Option;
- ULONG OutOption;
- ULONG UpperBboundAddr;
- }BLT_CONCENTRATE, *PBLT_CONCENTRATE;
- typedef struct _BLT_OSC_EVEN_
- {
- ULONG cursorX;
- ULONG cursorY;
- ULONG cursorW; //picture W
- ULONG cursorH; //picture H
- ULONG phyAddress; //when only chagne set value if set 0 => not chane
- ULONG turnOn; //when only chagne set 1
- ULONG turnOff; //when only chagne set 1
- ULONG lineOffset;
- }BLT_OSC_EVEN, *PBLT_OSC_EVEN;
- typedef struct _BLT_OSC_MOVE_ //O SC 02
- {
- ULONG Hds;
- ULONG Vds;
- ULONG Hde;
- ULONG Vde;
- ULONG address; //
- //ULONG byteOffset; // odd, even
- ULONG InversePICAddr; // , when inver_se PIC to use ; SW inver_se
- ULONG InversePICOffset; // , when inver_se PIC to use ; SW inver_se
- }BLT_OSC_MOVE, *PBLT_OSC_MOVE;
- typedef struct _BLT_OSC_INI_ //ini_t will use //O SC 03
- {
- ULONG baseAddr; // same as address //not use //only fix use it had mod 16 value
- ULONG w; // pic's W
- ULONG h; // pic's H
- ULONG offset;
- ULONG reg_00; // Os_c size:3 offset:2
- UINT8 onOff;
- ULONG setLineH; // inver_se need
- ULONG bWOffset; // inver_se need
- ULONG brushOffset; // inver_se need
- }BLT_OSC_INI, *PBLT_OSC_INI;
- typedef struct _BLT_BLD_2S1D_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG Option;
- ULONG Src1Addr;
- ULONG Src1LineOffset;
- }BLT_BLD_2S1D, *PBLT_BLD_2S1D;
- typedef struct _Blt_H264_MERGE_
- {
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcAddr0;
- ULONG SrcLineOffset0;
- ULONG SrcAddr1;
- ULONG SrcLineOffset1;
- ULONG SrcAddr2;
- ULONG SrcLineOffset2;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG Option;
- }Blt_H264_MERGE, *PBlt_H264_MERGE;
- typedef struct _BLT_MEMSET_
- {
- ULONG DestAddr;
- ULONG DestWidth;
- ULONG DestHeight;
- ULONG DestLineOffset;
- ULONG Value:24;
- ULONG Reserved:8;
- }BLT_MEMSET, *PBLT_MEMSET;
- typedef struct _OSD_MEMSET_MODE_
- {
- ULONG DestAddr;
- ULONG DestWidth;
- ULONG DestHeight;
- ULONG DestLineOffset;
- ULONG Value;
- ULONG ModeByte; //[15:0] must 2, 3, 4 => "5 6 5", "8 5 6 5" , "8 8 8 8" [16] Bet Argb En
- }OSD_MEMSET_MODE, *POSD_MEMSET_MODE;
- typedef struct _BLT_MERGE_STR_BLOCK_PARAM_
- {
- PLANE_STYLE Ps;
- ULONG osdType;
- INT32 isFlashing;
- INT32 nItem;
- INT32 *pBlockIdsIn;
- INT32 *pBlockIdOut;
- }BLT_MERGE_STR_BLOCK_PARAM, *PBLT_MERGE_STR_BLOCK_PARAM;
- typedef struct _OSDPLANE_INT_
- {
- PLANE_STYLE Ps;
- UINT32 intd;
- }OSDPLANE_INT, *POSDPLANE_INT;
- typedef struct _OSDPLANE_UINT_
- {
- PLANE_STYLE Ps;
- UINT32 uint;
- }OSDPLANE_UINT, *POSDPLANE_UINT;
- typedef struct _OSDPLANE_POINT_
- {
- PLANE_STYLE Ps;
- S_POINT sPt;
- }OSDPLANE_POINT, *POSDPLANE_POINT;
- typedef struct _OSD_SHOW_IN_OUT_INFO_
- {
- PLANE_STYLE Ps;
- INT32 rect_X;
- INT32 rect_Y;
- INT32 rect_W;
- INT32 rect_H;
- INT32 shift_X; // total will shift value must > 0
- INT32 shift_Y; // total will shift value must > 0
- INT32 stepNo; // to finish step number must > 0
- INT32 msdelay; //each step will delay ms time must > 0 default:30
- }OSD_SHOW_IN_OUT_INFO, *POSD_SHOW_IN_OUT_INFO;
- typedef struct _OSDPLANE_CUTRATIO_
- {
- S_RECT CutWin;
- S_BLOCK DispWin;
- }OSDPLANE_CUTRATIO, *POSDPLANE_CUTRATIO;
- //---------------------------365chip------------------------------------------------------
- typedef struct _OSD_LINE_DRAW_PARAM_
- {
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG Width;
- ULONG X0;
- ULONG Y0;
- ULONG X1;
- ULONG Y1;
- ULONG Mask;
- ULONG Mode;
- COLOR_24BIT Color;
- }OSD_LINE_DRAW_PARAM, *POSD_LINE_DRAW_PARAM;
- typedef struct _OSD_ELLIPSE_F_PARAM_
- {
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG Width;
- ULONG X;
- ULONG Y;
- ULONG X1;
- ULONG Y1;
- ULONG Mask;
- COLOR_24BIT ColorInner;
- COLOR_24BIT ColorLine;
- COLOR_24BIT ColorOut;
- }OSD_ELLIPSE_F_PARAM, *POSD_ELLIPSE_F_PARAM;
- typedef struct _OSD_ELLIPSE_FB_PARAM_
- {
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG Width;
- ULONG X;
- ULONG Y;
- ULONG X1;
- ULONG Y1;
- ULONG Mask;
- ULONG Delta;
- ULONG UseDBit;
- COLOR_24BIT ColorInner;
- COLOR_24BIT ColorLine;
- COLOR_24BIT ColorOut;
- }OSD_ELLIPSE_FB_PARAM, *POSD_ELLIPSE_FB_PARAM;
- typedef struct _OSD_ANTI_ALIAS_PARAM_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestWidth;
- ULONG DestHeight;
- ULONG DestLineOffset;
- ULONG H_Alias;
- ULONG V_Alias;
- ULONG F_Option;
- }OSD_ANTI_ALIAS_PARAM, *POSD_ANTI_ALIAS_PARAM;
- typedef struct _OSD_POLYGON_FILL_PARAM_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG X0;
- ULONG Y0;
- ULONG X1;
- ULONG Y1;
- ULONG X2;
- ULONG Y2;
- COLOR_24BIT ColorIn;
- COLOR_24BIT ColorOut;
- ULONG Mode;
- }OSD_POLYGON_FILL_PARAM, *POSD_POLYGON_FILL_PARAM;
- typedef struct _OSD_GRADIENT_FILL_PARAM_
- {
- ULONG DestAddr;;
- ULONG DestWidth;
- ULONG DestHeight;
- ULONG DestLineOffset;
- ULONG H_Enable;
- ULONG H_Reflect;
- ULONG H_ChangeValueAlpah;
- ULONG H_ChangeValueRed;
- ULONG H_ChangeValueGreen;
- ULONG H_ChangeValueBlue;
- ULONG H_PixelAlpha;
- ULONG H_PixelRed;
- ULONG H_PixelGreen;
- ULONG H_PixelBlue;
- ULONG V_Enable;
- ULONG V_Reflect;
- ULONG V_ChangeValueAlpah;
- ULONG V_ChangeValueRed;
- ULONG V_ChangeValueGreen;
- ULONG V_ChangeValueBlue;
- ULONG V_PixelAlpha;
- ULONG V_PixelRed;
- ULONG V_PixelGreen;
- ULONG V_PixelBlue;
- ULONG Argb565Clr;
- ULONG UpArgb565Clr;
- ULONG LowArgb565Clr;
- }OSD_GRADIENT_FILL_PARAM, *POSD_GRADIENT_FILL_PARAM;
- typedef struct _OSD_FORMAT_TRANS_ // Ex 6
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG Mode;
- ULONG AlphaNewOld;
- }OSD_FORMAT_TRANS, *POSD_FORMAT_TRANS;
- typedef struct _OSD_COPY_SPECI_ // Ex 6
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG IsSpeci;
- ULONG IsAlphaTest;
- ULONG AlphaTestValue;
- ULONG AlphaTestMode;
- ULONG RoteMode;
- }OSD_COPY_SPECI, *POSD_COPY_SPECI;
- typedef struct _OSD_LOGIC_OP_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG Mode;
- }OSD_LOGIC_OP, *POSD_LOGIC_OP;
- typedef struct _OSD_BLD_MULTI_FORMAT_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG SrcColorFact;
- ULONG DestColorFact;
- ULONG SrcAlphaFact;
- ULONG DestAlphaFact;
- ULONG Mode;
- ULONG FillColor;
- ULONG Src1Addr;
- ULONG Src1LineOffset;
- }OSD_BLD_MULTI_FORMAT, *POSD_BLD_MULTI_FORMAT;
- typedef struct _OSD_PATTERN_ROP_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG Src2Addr;
- ULONG Src2LineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG PatternAddr;
- ULONG PatternLineOffset;
- ULONG Mode;
- }OSD_PATTERN_ROP, *POSD_PATTERN_ROP;
- typedef struct _OSD_BEZIER_CURVE_
- {
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG LineUseMode;
- ULONG LineWidth;
- ULONG ClrA8565;
- ULONG X0;
- ULONG Y0;
- ULONG X1;
- ULONG Y1;
- ULONG Xa;
- ULONG Ya;
- ULONG Xb;
- ULONG Yb;
- }OSD_BEZIER_CURVE, *POSD_BEZIER_CURVE;
- typedef struct _tagOSDROUND_RECT
- {
- ULONG DestAddr;
- ULONG DestWidth;
- ULONG DestHeight;
- ULONG DestOffset;
- COLOR_24BIT DestDrawData;
- ULONG x;
- ULONG y;
- }OSDROUND_RECT, *POSDROUND_RECT;
- typedef struct _RGBYCC_P_SCALING_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestWidth;
- ULONG DestHeight;
- ULONG DestLineOffset;
- ULONG Para_nnVH; // 8~80
- }RGBYCC_P_SCALING, *PRGBYCC_P_SCALING;
- typedef struct _BLT_ROTATION_
- {
- ULONG SrcAddr;
- ULONG SrcWidth;
- ULONG SrcHeight;
- ULONG SrcLineOffset;
- ULONG DestAddr;
- ULONG DestLineOffset;
- ULONG RotDirection;
- }BLT_ROTATION, *PBLT_ROTATION;
- typedef struct _BLT_FB_Info
- {
- UINT32 FB_OnScreen_Addr;
- UINT32 FB_OffScreen_Addr;
- UINT32 FB_Width;
- UINT32 FB_Height;
- UINT32 FB_Lineoffset;
- UINT32 BLT_FB_Size;
- UINT32 BLT_Eng_Size;
- UINT32 FB_Addr;
- UINT32 eng_Source_Addr;
- UINT32 eng_FB_Region_Addr;
- UINT32 eng_tmp_Addr;
- #if (defined(CONFIG_SUPPORT_TTX)||defined(CONFIG_SUPPORT_MHEG5))
- UINT32 eng_FB_Tmp_Addr;
- #endif
- ULONG andBufSize;
- ULONG andPhyAddr;
- ULONG andVirAddr;
- ULONG andoffset;
- ULONG bitmapoffset;
- ULONG transp_X;
- ULONG transp_Y;
- ULONG transp_W;
- ULONG transp_H;
- ULONG reserved_X;
- ULONG reserved_Y;
- ULONG reserved_W;
- ULONG reserved_H;
- ULONG reserved_Alpha;
- ULONG reserved_mem_size;
- //UINT32 FB_Enable;
- }BLT_FB_Info,*PBLT_FB_Info;
- typedef struct _BLT_SHOW_EFFECT_PARAM_
- {
- PLANE_STYLE Ps; // set by Osd lib
- OSD_SSE_MOVE_IN_DIRECTION inDir; // set 0 not change
- S_POINT insPt; // if set x= -1 or y = -1 => not change
- INT32 inStepNumber; // wish how step to finish, min 2 // set 0 not change
- INT32 inStepIntervalMs; // set 0 not change
- OSD_SSE_MOVE_OUT_DIRECTION outDir;
- S_POINT outsPt; // if set x= -1 or y = -1 => not change
- INT32 outStepNumber; // wish how step to finish, min 2 // set 0 not change
- INT32 outStepIntervalMs; // set 0 not change
- }BLT_SHOW_EFFECT_PARAM, *PBLT_SHOW_EFFECT_PARAM;
- typedef struct _BLT_FB_Param
- {
- ULONG FB_On_Address;
- ULONG FB_Off_Address;
- ULONG FB_Width;
- ULONG FB_Height;
- ULONG BLT_Source_Address;
- ULONG BLT_FBRegion_Address;
- ULONG BLT_Tmp_Address;
- }BLT_FB_Param,*PBLT_FB_Param;
- typedef struct _BLT_STB_PARAM
- {
- UINT32 HStart;
- UINT32 VStart;
- UINT32 HEnd;
- UINT32 VEnd;
- UINT32 nWidth;
- UINT32 nHeight;
- INT32 doUnderScan;
- UINT32 top;
- UINT32 down;
- UINT32 left;
- UINT32 right;
- UINT32 isUnderScanChange;
- UINT32 mChangeTo;
- }BLT_STB_PARAM, *PBLT_STB_PARAM;
- typedef struct _BLT_BLOCK_HOLE_PARAM_
- {
- INT32 BlockIndex;
- ULONG bDisplay:8;
- ULONG Ps:7;
- ULONG bUsePTS:1;
- ULONG BltCmdNums:16;
- ULONG sBlockNums:16;
- S_BLOCK *pSBlock;
- ULONG setAlpha;
- ULONG option; //reserved
- }BLT_BLOCK_HOLE_PARAM, *PBLT_BLOCK_HOLE_PARAM;
- typedef struct _OSD_MIRROR_
- {
- INT32 nBlockId; // input: will mir_ror's ID, output: after mirror use ID
- S_POINT sPt;
- }OSD_MIRROR, * POSD_MIRROR;
- typedef struct _BLT_MIRROR_PARAM_
- {
- INT32 nBlockId;// input: will mir_ror's ID, output: after mirror use ID
- S_POINT sPt;
- ULONG bDisplay:8;
- ULONG Ps:7;
- ULONG bUsePTS:1;
- ULONG BltCmdNums:16;
- }BLT_MIRROR_PARAM, * PBLT_MIRROR_PARAM;
- typedef struct _OSD_MIRROR_EX_CP_
- {
- INT32 nBlockId; // input: will mir_ror's ID, output: after mirror use ID
- S_POINT sPt;
- S_SIZE Size; // -1 or 0xffff is not chage size
- UINT8 oldAlpha;
- UINT8 newAlpha; // if(old == new) => does not change
- UINT8 blendAlpha; // if 0 => does not all block blen_d
- }OSD_MIRROR_EX_CP, * POSD_MIRROR_EX_CP;
- typedef struct _BLT_MIRROR_EX_CP_PARAM_
- {
- INT32 nBlockId;// input: will mir_ror's ID, output: after mirror use ID
- S_POINT sPt;
- ULONG bDisplay:8;
- ULONG Ps:7;
- ULONG bUsePTS:1;
- ULONG BltCmdNums:16;
- S_SIZE Size; // -1 or 0xffff is not chage size
- UINT8 oldAlpha;
- UINT8 newAlpha; // if(old == new) => does not change
- UINT8 blendAlpha; // if 0 => does not all block blen_d
- }BLT_MIRROR_EX_CP_PARAM, * PBLT_MIRROR_EX_CP_PARAM;
- typedef struct _OSD_MEM_INFO_
- {
- ULONG width;
- ULONG height;
- ULONG offset;
- ULONG osdAddress;
- ULONG osdSize;
- ULONG osdUsedSize;
- ULONG fontAddress;
- ULONG fontSize;
- ULONG compMem_0;
- ULONG compMem_1;
- ULONG dispMem_0;
- ULONG dispMem_1;
- ULONG cmdqMem;
- ULONG drvVersion;
- ULONG osdVersion;
- ULONG oscMem_0;
- ULONG reserved_2;
- ULONG reserved_1;
- ULONG reserved_0;
- }OSD_MEM_INFO, *POSD_MEM_INFO;
- typedef struct _BLT_BLOCK_DUMP_OSD_
- {
- UINT8 *sourAddr[70];
- S_POINT insPt;
- INT32 line;
- UINT8 * Addr;
- UINT32 offset;
- }BLT_BLOCK_DUMP_OSD, *PBLT_BLOCK_DUMP_OSD;
- typedef struct _BLT_BYPASS_WINDOW_
- {
- S_BLOCK BypassWin[4];
- }BLT_BYPASS_WINDOW, *PBLT_BYPASS_WINDOW;
- typedef struct _BLT_ZOOM_ASPECT_
- {
- INT32 HPercent;
- INT32 VPercent;
- }BLT_ZOOM_ASPECT, *PBLT_ZOOM_ASPECT;
- //***************************************
- #ifndef BLT_HAPS
- #define DRV_BLT_MAGIC 't'
- #else
- #ifdef SISOSD_DEV_MAJOR
- #define DRV_BLT_MAGIC SISOSD_DEV_MAJOR
- #else
- #define DRV_BLT_MAGIC 94
- #endif
- #endif
- #define DRV_BLT_CMD _IOWR(DRV_BLT_MAGIC, 1, BLT_IOCTL_PARAM *)
- #define DRV_BLT_FONTINFO _IOWR(DRV_BLT_MAGIC, 2, RESERVED_FONT_INFO *)
- #define DRV_BLT_RGBTRANSFORM _IOWR(DRV_BLT_MAGIC, 3, RGB_3TO4_TRANSFORM *)
- #define DRV_BLT_REMOVEBLOCK _IOWR(DRV_BLT_MAGIC, 4, REMOVE_BLOCK_IOCTL_PARAM *)
- #define DRV_BLT_CMDDEBUG _IOWR(DRV_BLT_MAGIC, 5, BLT_IOCTL_PARAM *)
- #define DRV_BLT_CMDDEBUG_TT _IOWR(DRV_BLT_MAGIC, 6, BLT_IOCTL_PARAM *)
- #define DRV_BLT_RGBYCC_SCALING _IOWR(DRV_BLT_MAGIC, 7, RGBYCC_SCALING *)
- #define DRV_BLT_DISPLAYBLOCK _IOWR(DRV_BLT_MAGIC, 8, DISPLAY_BLOCK_IOCTL_PARAM *)
- #define DRV_BLT_MOVEBLOCK _IOWR(DRV_BLT_MAGIC, 9, MOVE_BLOCK_IOCTL_PARAM *)
- #define DRV_BLT_QUERY_OSDPLANE _IOWR(DRV_BLT_MAGIC, 10, OSDPLANE_DISPLAYSIZE *)
- #define DRV_BLT_SET_PLANEBLOCK _IOWR(DRV_BLT_MAGIC, 11, OSDPLANE_SETTING *)
- #define DRV_BLT_MEM_COPY _IOWR(DRV_BLT_MAGIC, 12, BLT_MEMCOPY *)
- #define DRV_BLT_MEM_SET _IOWR(DRV_BLT_MAGIC, 13, BLT_MEMSET *)
- #define DRV_BLT_HIDEBLOCK _IOWR(DRV_BLT_MAGIC, 14, DISPLAY_BLOCK_IOCTL_PARAM *)
- #define DRV_BLT_ROTATION _IOWR(DRV_BLT_MAGIC, 15, BLT_ROTATION *)
- #define DRV_BLT_MEM_COPY_EX _IOWR(DRV_BLT_MAGIC, 16, BLT_MEMCOPY_EX *)
- #define DRV_BLT_MEM_COMPARE_3BU _IOWR(DRV_BLT_MAGIC, 17, BLT_MEMCOPY *)
- #define DRV_BLT_MEM_COMPARE_2BU _IOWR(DRV_BLT_MAGIC, 18, BLT_MEMCOPY *)
- #define DRV_BLT_MEM_COMPARE_ROT _IOWR(DRV_BLT_MAGIC, 19, BLT_MEMCOPY_EX *)
- #define DRV_BLT_MEM_COMPARE_32BU _IOWR(DRV_BLT_MAGIC, 20, BLT_MEMCOPY *)
- #define DRV_BLT_MEM_COMPARE_PATT _IOWR(DRV_BLT_MAGIC, 21, BLT_MEMCOPY *)
- //#define DRV_BLT_OSD_PRINT_OR_NOT _IOWR(DRV_BLT_MAGIC, 22, ULONG *)
- #define DRV_BLT_TEST_FILLBLENDING _IOWR(DRV_BLT_MAGIC, 23, BLT_MEMSET *)
- #define DRV_BLT_TEST_BLENDING _IOWR(DRV_BLT_MAGIC, 24, BLT_MEMCOPY *)
- #define DRV_BLT_TEST_BLENDFADE _IOWR(DRV_BLT_MAGIC, 25, BLT_MEMCOPY_EX *)
- #define DRV_BLT_MERGE_STR_BLOCK _IOWR(DRV_BLT_MAGIC, 26, BLT_MERGE_STR_BLOCK_PARAM *)
- #define DRV_BLT_SHOW_EFFECT_IN_Dir _IOWR(DRV_BLT_MAGIC, 27, OSDPLANE_UINT *)
- #define DRV_BLT_SHOW_EFFECT_IN_XY _IOWR(DRV_BLT_MAGIC, 28, OSDPLANE_POINT *)
- #define DRV_BLT_SHOW_EFFECT_OUT_Dir _IOWR(DRV_BLT_MAGIC, 29, OSDPLANE_UINT *)
- #define DRV_BLT_SHOW_EFFECT_OUT_XY _IOWR(DRV_BLT_MAGIC, 30, OSDPLANE_POINT *)
- #define DRV_BLT_SHOW_EFFECT_IN_LOOP _IOWR(DRV_BLT_MAGIC, 31, OSDPLANE_INT *)
- #define DRV_BLT_SHOW_EFFECT_IN_INTERVAL _IOWR(DRV_BLT_MAGIC, 32, OSDPLANE_INT *)
- #define DRV_BLT_SHOW_EFFECT_OUT_LOOP _IOWR(DRV_BLT_MAGIC, 33, OSDPLANE_INT *)
- #define DRV_BLT_SHOW_EFFECT_OUT_INTERVAL _IOWR(DRV_BLT_MAGIC, 34, OSDPLANE_INT *)
- #define DRV_BLT_SHOW_GROUP_MOVE _IOWR(DRV_BLT_MAGIC, 35, OSDPLANE_INT *)
- #define DRV_BLT_SET_SHOW_EFFECT_PARAMETER _IOWR(DRV_BLT_MAGIC, 36, BLT_SHOW_EFFECT_PARAM *)
- #define DRV_BLT_GET_SHOW_EFFECT_PARAMETER _IOWR(DRV_BLT_MAGIC, 37, BLT_SHOW_EFFECT_PARAM *)
- #define DRV_BLT_YUV_SCALING _IOWR(DRV_BLT_MAGIC, 38, BLT_SHOW_EFFECT_PARAM *)
- #define DRV_BLT_MOVE_HIDDEN_AS_MIRROR_SOURCE_BLOCK _IOWR(DRV_BLT_MAGIC, 39, OSDPLANE_INT *)
- #define DRV_BLT_RELEASE_MIRROR_SOURCE_BLOCK _IOWR(DRV_BLT_MAGIC, 40, OSDPLANE_INT *)
- #define DRV_BLT_DRAW_MIRROR_BLOCK _IOWR(DRV_BLT_MAGIC, 41, BLT_MIRROR_PARAM *)
- #define DRV_BLT_CONCENTRATE _IOWR(DRV_BLT_MAGIC, 42, BLT_CONCENTRATE *)
- #define DRV_BLT_H264_MERGE _IOWR(DRV_BLT_MAGIC, 43, Blt_H264_MERGE *)
- #define DRV_BLT_H264_COMPARE _IOWR(DRV_BLT_MAGIC, 44, Blt_H264_MERGE *)
- #define DRV_BLT_BLENDING_2S1D _IOWR(DRV_BLT_MAGIC, 45, BLT_BLD_2S1D *)
- #define DRV_BLT_LOOP_CMD _IOWR(DRV_BLT_MAGIC, 46, BLT_MEMCOPY *)
- #define DRV_BLT_GET_MEM_INFO _IOWR(DRV_BLT_MAGIC, 47, OSD_MEM_INFO *)
- #define DRV_BLT_SHOW_IN_OUT_INFO _IOWR(DRV_BLT_MAGIC, 48, OSD_SHOW_IN_OUT_INFO *)
- #define DRV_BLT_DRAW_MIRROR_EX_CP_BLOCK _IOWR(DRV_BLT_MAGIC, 49, BLT_MIRROR_EX_CP_PARAM *)
- #define DRV_BLT_IDLE_DRV _IOWR(DRV_BLT_MAGIC, 50, OSDPLANE_INT *)
- #define DRV_BLT_WORKING_DRV _IOWR(DRV_BLT_MAGIC, 51, OSDPLANE_INT *)
- #define DRV_BLT_LINE_DRAW _IOWR(DRV_BLT_MAGIC, 52, OSD_LINE_DRAW_PARAM *)
- #define DRV_BLT_ELLIPSE_FILL _IOWR(DRV_BLT_MAGIC, 53, OSD_ELLIPSE_F_PARAM *)
- #define DRV_BLT_ANTI_ALIAS _IOWR(DRV_BLT_MAGIC, 54, OSD_ANTI_ALIAS_PARAM *)
- #define DRV_BLT_POLYGON_FILL _IOWR(DRV_BLT_MAGIC, 55, OSD_POLYGON_FILL_PARAM *)
- #define DRV_BLT_FORMAT_TRANS _IOWR(DRV_BLT_MAGIC, 56, OSD_FORMAT_TRANS *)
- #define DRV_BLT_COMPARE_TRANS _IOWR(DRV_BLT_MAGIC, 57, OSD_FORMAT_TRANS *)
- #define DRV_BLT_LOGIC_OP _IOWR(DRV_BLT_MAGIC, 58, OSD_LOGIC_OP *)
- #define DRV_BLT_COMPARE_LOGIC _IOWR(DRV_BLT_MAGIC, 59, OSD_LOGIC_OP *)
- #define DRV_BLT_GRADIENT_FILL _IOWR(DRV_BLT_MAGIC, 60, OSD_GRADIENT_FILL_PARAM *)
- #define DRV_BLT_BLEND_MULTI_FORMAT _IOWR(DRV_BLT_MAGIC, 61, OSD_BLD_MULTI_FORMAT *)
- #define DRV_BLT_COPY_SPECI_TEST _IOWR(DRV_BLT_MAGIC, 62, OSD_COPY_SPECI *)
- #define DRV_BLT_PATTERN_ROP _IOWR(DRV_BLT_MAGIC, 63, OSD_PATTERN_ROP *)
- #define DRV_BLT_BEZIER_CURVE _IOWR(DRV_BLT_MAGIC, 64, OSD_BEZIER_CURVE *)
- #define DRV_BLT_ELLIPSE_FILLB _IOWR(DRV_BLT_MAGIC, 65, OSD_ELLIPSE_FB_PARAM *)
- #define DRV_BLT_RGBYCC_P_SCALING _IOWR(DRV_BLT_MAGIC, 66, RGBYCC_P_SCALING *)
- #define DRV_BLT_MEM_SET_565 _IOWR(DRV_BLT_MAGIC, 67, BLT_MEMSET *)
- #define DRV_BLT_ELLIPSE_FILLB_FULL _IOWR(DRV_BLT_MAGIC, 68, OSD_ELLIPSE_FB_PARAM *)
- #define DRV_BLT_ROUND_RECT _IOWR(DRV_BLT_MAGIC, 69, OSDROUND_RECT *)
- //#define GRAPHIC_ELLIPSE_FILL _IOWR(DRV_BLT_MAGIC, 70, Graphic_ELLIPSE_FB_PARAM *)
- //#define GRAPHIC_MEM_SET _IOWR(DRV_BLT_MAGIC, 71, Graphic_MEMSET *)
- //#define GRAPHIC_LINE_DRAW _IOWR(DRV_BLT_MAGIC, 72, Graphic_LINE_DRAW_PARAM *)
- //#define GRAPHIC_MEM_COPY _IOWR(DRV_BLT_MAGIC, 73, Graphic_MEMCOPY *)
- //#define GRAPHIC_BEZIER_CURVE _IOWR(DRV_BLT_MAGIC, 74, Graphic_BEZIER_CURVE *)
- //#define GRAPHIC_SCALING _IOWR(DRV_BLT_MAGIC, 75, Graphic_SCALING *)
- //#define GRAPHIC_POLYGON _IOWR(DRV_BLT_MAGIC, 76, Graphic_POLYGON_FILL_PARAM *)
- //#define GRAPHIC_ROTATE _IOWR(DRV_BLT_MAGIC, 77, Graphic_ROTATION *)
- //#define GRAPHIC_ANTIALIAS _IOWR(DRV_BLT_MAGIC, 78, Graphic_ANTI_ALIAS_PARAM *)
- //#define GRAPHIC_ROUNDRECT _IOWR(DRV_BLT_MAGIC, 79, Graphic_ROUND_RECT_PARAM *)
- //#define GRAPHIC_MULTIF_BLEND _IOWR(DRV_BLT_MAGIC, 80, Graphic_MULTIF_BLEND_PARAM *)
- //#define GRAPHIC_FORMAT_TRANS _IOWR(DRV_BLT_MAGIC, 81, Graphic_FORMAT_TRANS_PARAM *)
- //#define GRAPHIC_ROUNDRECT_2 _IOWR(DRV_BLT_MAGIC, 82, Graphic_ROUND_RECT2_PARAM *)
- #define DRV_GET_TOTAL_SIZE _IOWR(DRV_BLT_MAGIC, 83, And_Buffer_Param *)
- #define DRV_MAP _IOWR(DRV_BLT_MAGIC, 84, And_Buffer_Param *)
- #define DRV_MAP_END _IOWR(DRV_BLT_MAGIC, 85, And_Buffer_Param *)
- //#define GRAPHIC_QUERYBUFINFO _IOWR(DRV_BLT_MAGIC, 86, Graphic_BUFINFO *)
- #define GRAPHIC_BUFAREACOPY _IOWR(DRV_BLT_MAGIC, 87, Graphic_BUFAREACOPY *)
- //#define GRAPHIC_8888_BLT _IOWR(DRV_BLT_MAGIC, 88, Graphic_BUFAREACOPY *)
- #define GRAPHIC_BUFAREABLEND _IOWR(DRV_BLT_MAGIC, 89, Graphic_BUFAREABLEND *)
- //#define Graphic_BitmapAllocation _IOWR(DRV_BLT_MAGIC, 90, Graphic_BITMAPALLOCATION *)
- //#define Graphic_BitmapRelease _IOWR(DRV_BLT_MAGIC, 91, Graphic_BITMAPALLOCATION *)
- //#define SIS516BLT_MEM_8888_CHECKSUM _IOWR(DRV_BLT_MAGIC, 92, TEST_MEMCOMPARE *)
- #define GRAPHIC_AllocBitmap _IOWR(DRV_BLT_MAGIC, 93, ULONG *)
- #define GRAPHIC_DeallocBitmap _IOWR(DRV_BLT_MAGIC, 94, ULONG *)
- #define GRAPHIC_DeallocByPid _IOWR(DRV_BLT_MAGIC, 95, ULONG *)
- #define DRV_BLT_CURSOR_INI_XY _IOWR(DRV_BLT_MAGIC, 97, ULONG *)
- #define DRV_BLT_IS_USE_CURSOR _IOWR(DRV_BLT_MAGIC, 98, ULONG *)
- #define DRV_BLT_OSC_EVEN _IOWR(DRV_BLT_MAGIC, 99, BLT_OSC_EVEN *)
- #define DRV_BLT_DRAW_AND _IOWR(DRV_BLT_MAGIC, 100, ULONG *)
- #define DRV_BLT_MEMSET_MODE _IOWR(DRV_BLT_MAGIC, 107, OSD_MEMSET_MODE *)
- #define DRV_BLT_SCALING_MODES _IOWR(DRV_BLT_MAGIC, 127, RGBYCC_SCALING_MODES *)
- #define DRV_BLT_QUERY_VIDEO_PLANE _IOWR(DRV_BLT_MAGIC, 128, S_SIZE *)
- #define DRV_BLT_MULTI_FUNC _IOWR(DRV_BLT_MAGIC, 129, BLT_IOCTL_MULTI_FUNC *)
- #define DRV_BLT_FLASH_SCALLING _IOWR(DRV_BLT_MAGIC, 130, ULONG *)
- #define DRV_BLT_BLOCK_HOLES _IOWR(DRV_BLT_MAGIC, 132, BLT_BLOCK_HOLE_PARAM *)
- #define DRV_BLT_JPEG_MULTIP_ALPHA _IOWR(DRV_BLT_MAGIC, 133, BLT_MEMCOPY_EX *)
- #define DRV_BLT_ALLOC_OSDBLOCK _IOWR(DRV_BLT_MAGIC, 134, MEMORY_PARAM *)
- #define DRV_BLT_FREE_OSDBLOCK _IOWR(DRV_BLT_MAGIC, 135, MEMORY_PARAM *)
- #define DRV_BLT_GRAPHIC_INDEX_EXP _IOWR(DRV_BLT_MAGIC, 136, GEXPDFB_PARAM *)
- #define DRV_BLT_DUMP_OSD _IOWR(DRV_BLT_MAGIC, 137, BLT_BLOCK_DUMP_OSD*)
- #define DRV_BLT_RELEASE_MHEG5_TEMP _IOWR(DRV_BLT_MAGIC, 139, ULONG *)
- #define DRV_BLT_GET_MEMC_BYPASS_WINDOW _IOWR(DRV_BLT_MAGIC, 141, BLT_BYPASS_WINDOW*)
- #define DRV_BLT_PRIMARY_SURFACE_FILP _IOWR(DRV_BLT_MAGIC, 142, MEMORY_PARAM *)
- #define DRV_BLT_GRAPHIC_ALLOC_BUFFER _IOWR(DRV_BLT_MAGIC, 143, MEMORY_PARAM *)
- #define DRV_BLT_GRAPHIC_FREE_BUFFER _IOWR(DRV_BLT_MAGIC, 144, MEMORY_PARAM *)
- #define DRV_BLT_YUV_MULTI_SCALING _IOWR(DRV_BLT_MAGIC, 145, BLT_SHOW_EFFECT_PARAM *)
- #define DRV_BLT_SET_OSD _IOWR(DRV_BLT_MAGIC, 146, BOOL *)
- #define DRV_BLT_HAS_BLOCK _IOWR(DRV_BLT_MAGIC, 147, ULONG *)
- #define DRV_BLT_DUMP_MEMORY _IOWR(DRV_BLT_MAGIC, 148, BLT_BLOCK_DUMP_OSD*)
- #define DRV_BLT_SET_MEMORY_MODE _IOWR(DRV_BLT_MAGIC, 149, UINT8 *)
- #define DRV_BLT_YUV_SCALING_CONVERT_ARGB _IOWR(DRV_BLT_MAGIC, 150, BLT_SHOW_EFFECT_PARAM *)
- #define DRV_BLT_SET_SUBTITLE _IOWR(DRV_BLT_MAGIC, 151, BOOL *)
- #define DRV_BLT_MEMORY_ALLOC_SET _IOWR(DRV_BLT_MAGIC, 152, UINT8 *)
- #define DRV_BLT_MEMORY_DUMP _IOWR(DRV_BLT_MAGIC, 153, UINT8 *)
- #define DRV_BLT_SET_ZOOM_ASPECT _IOWR(DRV_BLT_MAGIC, 154, BLT_ZOOM_ASPECT *)
- #define DRV_BLT_IOC_MAXNUM 155
- #endif //End of _BLT_IOCTL_H_
|