1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
#ifndef _EXTD_DDP_H_
#define _EXTD_DDP_H_
#include "ddp_hal.h"
#include "ddp_manager.h"
#define ALIGN_TO(x, n) \
(((x) + ((n) - 1)) & ~((n) - 1))
typedef enum
{
EXTD_DIRECT_LINK_MODE,
EXTD_DECOUPLE_MODE,
EXTD_SINGLE_LAYER_MODE,
EXTD_RDMA_DPI_MODE
}EXT_DISP_PATH_MODE;
typedef enum
{
EXT_DISP_STATUS_OK = 0,
EXT_DISP_STATUS_NOT_IMPLEMENTED,
EXT_DISP_STATUS_ALREADY_SET,
EXT_DISP_STATUS_ERROR
} EXT_DISP_STATUS;
typedef enum
{
EXTD_DEINIT = 0,
EXTD_INIT,
EXTD_RESUME,
EXTD_SUSPEND
}EXTD_POWER_STATE;
typedef struct
{
unsigned int layer;
unsigned int layer_en;
unsigned int buff_source;
unsigned int fmt;
unsigned long addr;
unsigned long addr_sub_u;
unsigned long addr_sub_v;
unsigned long vaddr;
unsigned int src_x;
unsigned int src_y;
unsigned int src_w;
unsigned int src_h;
unsigned int src_pitch;
unsigned int dst_x;
unsigned int dst_y;
unsigned int dst_w;
unsigned int dst_h; // clip region
unsigned int keyEn;
unsigned int key;
unsigned int aen;
unsigned char alpha;
unsigned int sur_aen;
unsigned int src_alpha;
unsigned int dst_alpha;
unsigned int isTdshp;
unsigned int isDirty;
unsigned int buff_idx;
unsigned int identity;
unsigned int connected_type;
unsigned int security;
unsigned int dirty;
}ext_disp_input_config;
int ext_disp_init(char *lcm_name, unsigned int session);
int ext_disp_deinit(char *lcm_name);
int ext_disp_suspend(void);
int ext_disp_resume(void);
EXT_DISP_PATH_MODE ext_disp_path_get_mode(void);
void ext_disp_path_set_mode(EXT_DISP_PATH_MODE mode);
unsigned int ext_disp_get_sess_id(void);
int ext_disp_get_width(void);
int ext_disp_get_height(void);
int ext_disp_get_bpp(void);
int ext_disp_get_pages(void);
int ext_disp_is_alive(void);
int ext_disp_is_sleepd(void);
int ext_disp_wait_for_vsync(void *config);
int ext_disp_config_input(ext_disp_input_config* input);
int ext_disp_config_input_multiple(ext_disp_input_config* input, int idx);
int ext_disp_trigger(int blocking, void *callback, unsigned int userdata);
int ext_disp_get_info(void *info);
int ext_disp_is_video_mode(void);
CMDQ_SWITCH ext_disp_cmdq_enabled(void);
int ext_disp_switch_cmdq_cpu(CMDQ_SWITCH use_cmdq);
int ext_disp_diagnose(void);
void extd_get_curr_addr(unsigned long *input_curr_addr, int module);
int ext_disp_factory_test(int mode, void *config);
int extd_get_handle(disp_path_handle *dp_handle, cmdqRecHandle *pHandle);
#endif
|