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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
#ifndef __MDNIE_H__
#define __MDNIE_H__
#define END_SEQ 0xffff
enum MODE {
DYNAMIC,
STANDARD,
#if !defined(CONFIG_FB_MDNIE_PWM)
NATURAL,
#endif
MOVIE,
MODE_MAX,
};
enum SCENARIO {
CYANOGENMOD_MODE,
UI_MODE,
VIDEO_MODE,
VIDEO_WARM_MODE,
VIDEO_COLD_MODE,
CAMERA_MODE,
NAVI_MODE,
GALLERY_MODE,
VT_MODE,
SCENARIO_MAX,
};
#if defined(CONFIG_TARGET_LOCALE_KOR) || defined(CONFIG_TARGET_LOCALE_NTT)
enum SCENARIO_DMB {
DMB_NORMAL_MODE = 20,
DMB_WARM_MODE,
DMB_COLD_MODE,
DMB_MODE_MAX,
};
#endif
enum SCENARIO_COLOR_TONE {
COLOR_TONE_1 = 40,
COLOR_TONE_2,
COLOR_TONE_3,
COLOR_TONE_MAX,
};
enum OUTDOOR {
OUTDOOR_OFF,
OUTDOOR_ON,
OUTDOOR_MAX,
};
enum TONE {
TONE_NORMAL,
TONE_WARM,
TONE_COLD,
TONE_MAX,
};
enum CABC {
CABC_OFF,
#if defined(CONFIG_FB_MDNIE_PWM)
CABC_ON,
#endif
CABC_MAX,
};
enum POWER_LUT {
LUT_DEFAULT,
LUT_VIDEO,
LUT_MAX,
};
enum POWER_LUT_LEVEL {
LUT_LEVEL_MANUAL_AND_INDOOR,
LUT_LEVEL_OUTDOOR_1,
LUT_LEVEL_OUTDOOR_2,
LUT_LEVEL_MAX,
};
enum NEGATIVE {
NEGATIVE_OFF,
NEGATIVE_ON,
NEGATIVE_MAX,
};
struct mdnie_tunning_info {
char *name;
const unsigned short *seq;
};
struct mdnie_tunning_info_cabc {
char *name;
const unsigned short *seq;
unsigned int idx_lut;
};
struct mdnie_info {
struct device *dev;
#if defined(CONFIG_FB_MDNIE_PWM)
struct lcd_platform_data *lcd_pd;
struct backlight_device *bd;
unsigned int bd_enable;
unsigned int auto_brightness;
unsigned int power_lut_idx;
#endif
struct mutex lock;
struct mutex dev_lock;
unsigned int enable;
enum SCENARIO scenario;
enum MODE mode;
enum TONE tone;
enum OUTDOOR outdoor;
enum CABC cabc;
unsigned int tunning;
unsigned int negative;
#ifdef CONFIG_HAS_EARLYSUSPEND
struct early_suspend early_suspend;
#endif
};
extern struct mdnie_info *g_mdnie;
int mdnie_send_sequence(struct mdnie_info *mdnie, const unsigned short *seq);
extern void set_mdnie_value(struct mdnie_info *mdnie, u8 force);
#if defined(CONFIG_FB_MDNIE_PWM)
extern void set_mdnie_pwm_value(struct mdnie_info *mdnie, int value);
#endif
extern int mdnie_txtbuf_to_parsing(char const *pFilepath);
extern void check_lcd_type(void);
struct mdnie_backlight_value {
unsigned int max;
unsigned int mid;
unsigned char low;
unsigned char dim;
};
#endif /* __MDNIE_H__ */
|