Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
s6e63m0_gamma.h
Go to the documentation of this file.
1 /* linux/drivers/video/samsung/s6e63m0_brightness.h
2  *
3  * Gamma level definitions.
4  *
5  * Copyright (c) 2009 Samsung Electronics
6  * InKi Dae <[email protected]>
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as
10  * published by the Free Software Foundation.
11 */
12 
13 #ifndef _S6E63M0_BRIGHTNESS_H
14 #define _S6E63M0_BRIGHTNESS_H
15 
16 #define MAX_GAMMA_LEVEL 11
17 #define GAMMA_TABLE_COUNT 21
18 
19 /* gamma value: 2.2 */
20 static const unsigned int s6e63m0_22_300[] = {
21  0x18, 0x08, 0x24, 0x5f, 0x50, 0x2d, 0xB6,
22  0xB9, 0xA7, 0xAd, 0xB1, 0x9f, 0xbe, 0xC0,
23  0xB5, 0x00, 0xa0, 0x00, 0xa4, 0x00, 0xdb
24 };
25 
26 static const unsigned int s6e63m0_22_280[] = {
27  0x18, 0x08, 0x24, 0x64, 0x56, 0x33, 0xB6,
28  0xBA, 0xA8, 0xAC, 0xB1, 0x9D, 0xC1, 0xC1,
29  0xB7, 0x00, 0x9C, 0x00, 0x9F, 0x00, 0xD6
30 };
31 
32 static const unsigned int s6e63m0_22_260[] = {
33  0x18, 0x08, 0x24, 0x66, 0x58, 0x34, 0xB6,
34  0xBA, 0xA7, 0xAF, 0xB3, 0xA0, 0xC1, 0xC2,
35  0xB7, 0x00, 0x97, 0x00, 0x9A, 0x00, 0xD1
36 
37 };
38 
39 static const unsigned int s6e63m0_22_240[] = {
40  0x18, 0x08, 0x24, 0x62, 0x54, 0x30, 0xB9,
41  0xBB, 0xA9, 0xB0, 0xB3, 0xA1, 0xC1, 0xC3,
42  0xB7, 0x00, 0x91, 0x00, 0x95, 0x00, 0xDA
43 
44 };
45 static const unsigned int s6e63m0_22_220[] = {
46  0x18, 0x08, 0x24, 0x63, 0x53, 0x31, 0xB8,
47  0xBC, 0xA9, 0xB0, 0xB5, 0xA2, 0xC4, 0xC4,
48  0xB8, 0x00, 0x8B, 0x00, 0x8E, 0x00, 0xC2
49 };
50 
51 static const unsigned int s6e63m0_22_200[] = {
52  0x18, 0x08, 0x24, 0x66, 0x55, 0x34, 0xBA,
53  0xBD, 0xAB, 0xB1, 0xB5, 0xA3, 0xC5, 0xC6,
54  0xB9, 0x00, 0x85, 0x00, 0x88, 0x00, 0xBA
55 };
56 
57 static const unsigned int s6e63m0_22_170[] = {
58  0x18, 0x08, 0x24, 0x69, 0x54, 0x37, 0xBB,
59  0xBE, 0xAC, 0xB4, 0xB7, 0xA6, 0xC7, 0xC8,
60  0xBC, 0x00, 0x7B, 0x00, 0x7E, 0x00, 0xAB
61 };
62 
63 static const unsigned int s6e63m0_22_140[] = {
64  0x18, 0x08, 0x24, 0x6C, 0x54, 0x3A, 0xBC,
65  0xBF, 0xAC, 0xB7, 0xBB, 0xA9, 0xC9, 0xC9,
66  0xBE, 0x00, 0x71, 0x00, 0x73, 0x00, 0x9E
67 };
68 
69 static const unsigned int s6e63m0_22_110[] = {
70  0x18, 0x08, 0x24, 0x70, 0x51, 0x3E, 0xBF,
71  0xC1, 0xAF, 0xB9, 0xBC, 0xAB, 0xCC, 0xCC,
72  0xC2, 0x00, 0x65, 0x00, 0x67, 0x00, 0x8D
73 };
74 
75 static const unsigned int s6e63m0_22_90[] = {
76  0x18, 0x08, 0x24, 0x73, 0x4A, 0x3D, 0xC0,
77  0xC2, 0xB1, 0xBB, 0xBE, 0xAC, 0xCE, 0xCF,
78  0xC5, 0x00, 0x5D, 0x00, 0x5E, 0x00, 0x82
79 };
80 
81 static const unsigned int s6e63m0_22_30[] = {
82  0x18, 0x08, 0x24, 0x78, 0xEC, 0x3D, 0xC8,
83  0xC2, 0xB6, 0xC4, 0xC7, 0xB6, 0xD5, 0xD7,
84  0xCC, 0x00, 0x39, 0x00, 0x36, 0x00, 0x51
85 };
86 
87 /* gamma value: 1.9 */
88 static const unsigned int s6e63m0_19_300[] = {
89  0x18, 0x08, 0x24, 0x61, 0x5F, 0x39, 0xBA,
90  0xBD, 0xAD, 0xB1, 0xB6, 0xA5, 0xC4, 0xC5,
91  0xBC, 0x00, 0xA0, 0x00, 0xA4, 0x00, 0xDB
92 };
93 
94 static const unsigned int s6e63m0_19_280[] = {
95  0x18, 0x08, 0x24, 0x61, 0x60, 0x39, 0xBB,
96  0xBE, 0xAD, 0xB2, 0xB6, 0xA6, 0xC5, 0xC7,
97  0xBD, 0x00, 0x9B, 0x00, 0x9E, 0x00, 0xD5
98 };
99 
100 static const unsigned int s6e63m0_19_260[] = {
101  0x18, 0x08, 0x24, 0x63, 0x61, 0x3B, 0xBA,
102  0xBE, 0xAC, 0xB3, 0xB8, 0xA7, 0xC6, 0xC8,
103  0xBD, 0x00, 0x96, 0x00, 0x98, 0x00, 0xCF
104 };
105 
106 static const unsigned int s6e63m0_19_240[] = {
107  0x18, 0x08, 0x24, 0x67, 0x64, 0x3F, 0xBB,
108  0xBE, 0xAD, 0xB3, 0xB9, 0xA7, 0xC8, 0xC9,
109  0xBE, 0x00, 0x90, 0x00, 0x92, 0x00, 0xC8
110 };
111 
112 static const unsigned int s6e63m0_19_220[] = {
113  0x18, 0x08, 0x24, 0x68, 0x64, 0x40, 0xBC,
114  0xBF, 0xAF, 0xB4, 0xBA, 0xA9, 0xC8, 0xCA,
115  0xBE, 0x00, 0x8B, 0x00, 0x8C, 0x00, 0xC0
116 };
117 
118 static const unsigned int s6e63m0_19_200[] = {
119  0x18, 0x08, 0x24, 0x68, 0x64, 0x3F, 0xBE,
120  0xC0, 0xB0, 0xB6, 0xBB, 0xAB, 0xC8, 0xCB,
121  0xBF, 0x00, 0x85, 0x00, 0x86, 0x00, 0xB8
122 };
123 
124 static const unsigned int s6e63m0_19_170[] = {
125  0x18, 0x08, 0x24, 0x69, 0x64, 0x40, 0xBF,
126  0xC1, 0xB0, 0xB9, 0xBE, 0xAD, 0xCB, 0xCD,
127  0xC2, 0x00, 0x7A, 0x00, 0x7B, 0x00, 0xAA
128 };
129 
130 static const unsigned int s6e63m0_19_140[] = {
131  0x18, 0x08, 0x24, 0x6E, 0x65, 0x45, 0xC0,
132  0xC3, 0xB2, 0xBA, 0xBE, 0xAE, 0xCD, 0xD0,
133  0xC4, 0x00, 0x70, 0x00, 0x70, 0x00, 0x9C
134 };
135 
136 static const unsigned int s6e63m0_19_110[] = {
137  0x18, 0x08, 0x24, 0x6F, 0x65, 0x46, 0xC2,
138  0xC4, 0xB3, 0xBF, 0xC2, 0xB2, 0xCF, 0xD1,
139  0xC6, 0x00, 0x64, 0x00, 0x64, 0x00, 0x8D
140 };
141 
142 static const unsigned int s6e63m0_19_90[] = {
143  0x18, 0x08, 0x24, 0x74, 0x60, 0x4A, 0xC3,
144  0xC6, 0xB5, 0xBF, 0xC3, 0xB2, 0xD2, 0xD3,
145  0xC8, 0x00, 0x5B, 0x00, 0x5B, 0x00, 0x81
146 };
147 
148 static const unsigned int s6e63m0_19_30[] = {
149  0x18, 0x08, 0x24, 0x84, 0x45, 0x4F, 0xCA,
150  0xCB, 0xBC, 0xC9, 0xCB, 0xBC, 0xDA, 0xDA,
151  0xD0, 0x00, 0x35, 0x00, 0x34, 0x00, 0x4E
152 };
153 
154 /* gamma value: 1.7 */
155 static const unsigned int s6e63m0_17_300[] = {
156  0x18, 0x08, 0x24, 0x70, 0x70, 0x4F, 0xBF,
157  0xC2, 0xB2, 0xB8, 0xBC, 0xAC, 0xCB, 0xCD,
158  0xC3, 0x00, 0xA0, 0x00, 0xA4, 0x00, 0xDB
159 };
160 
161 static const unsigned int s6e63m0_17_280[] = {
162  0x18, 0x08, 0x24, 0x71, 0x71, 0x50, 0xBF,
163  0xC2, 0xB2, 0xBA, 0xBE, 0xAE, 0xCB, 0xCD,
164  0xC3, 0x00, 0x9C, 0x00, 0x9F, 0x00, 0xD6
165 };
166 
167 static const unsigned int s6e63m0_17_260[] = {
168  0x18, 0x08, 0x24, 0x72, 0x72, 0x50, 0xC0,
169  0xC3, 0xB4, 0xB9, 0xBE, 0xAE, 0xCC, 0xCF,
170  0xC4, 0x00, 0x97, 0x00, 0x9A, 0x00, 0xD1
171 };
172 
173 static const unsigned int s6e63m0_17_240[] = {
174  0x18, 0x08, 0x24, 0x71, 0x72, 0x4F, 0xC2,
175  0xC4, 0xB5, 0xBB, 0xBF, 0xB0, 0xCC, 0xCF,
176  0xC3, 0x00, 0x91, 0x00, 0x95, 0x00, 0xCA
177 };
178 
179 static const unsigned int s6e63m0_17_220[] = {
180  0x18, 0x08, 0x24, 0x71, 0x73, 0x4F, 0xC2,
181  0xC5, 0xB5, 0xBD, 0xC0, 0xB2, 0xCD, 0xD1,
182  0xC5, 0x00, 0x8B, 0x00, 0x8E, 0x00, 0xC2
183 };
184 
185 static const unsigned int s6e63m0_17_200[] = {
186  0x18, 0x08, 0x24, 0x72, 0x75, 0x51, 0xC2,
187  0xC6, 0xB5, 0xBF, 0xC1, 0xB3, 0xCE, 0xD1,
188  0xC6, 0x00, 0x85, 0x00, 0x88, 0x00, 0xBA
189 };
190 
191 static const unsigned int s6e63m0_17_170[] = {
192  0x18, 0x08, 0x24, 0x75, 0x77, 0x54, 0xC3,
193  0xC7, 0xB7, 0xC0, 0xC3, 0xB4, 0xD1, 0xD3,
194  0xC9, 0x00, 0x7B, 0x00, 0x7E, 0x00, 0xAB
195 };
196 
197 static const unsigned int s6e63m0_17_140[] = {
198  0x18, 0x08, 0x24, 0x7B, 0x77, 0x58, 0xC3,
199  0xC8, 0xB8, 0xC2, 0xC6, 0xB6, 0xD3, 0xD4,
200  0xCA, 0x00, 0x71, 0x00, 0x73, 0x00, 0x9E
201 };
202 
203 static const unsigned int s6e63m0_17_110[] = {
204  0x18, 0x08, 0x24, 0x81, 0x7B, 0x5D, 0xC6,
205  0xCA, 0xBB, 0xC3, 0xC7, 0xB8, 0xD6, 0xD8,
206  0xCD, 0x00, 0x65, 0x00, 0x67, 0x00, 0x8D
207 };
208 
209 static const unsigned int s6e63m0_17_90[] = {
210  0x18, 0x08, 0x24, 0x82, 0x7A, 0x5B, 0xC8,
211  0xCB, 0xBD, 0xC5, 0xCA, 0xBA, 0xD6, 0xD8,
212  0xCE, 0x00, 0x5D, 0x00, 0x5E, 0x00, 0x82
213 };
214 
215 static const unsigned int s6e63m0_17_30[] = {
216  0x18, 0x08, 0x24, 0x8F, 0x73, 0x63, 0xD1,
217  0xD0, 0xC5, 0xCC, 0xD1, 0xC2, 0xDE, 0xE0,
218  0xD6, 0x00, 0x39, 0x00, 0x36, 0x00, 0x51
219 };
220 
225 };
226 
227 static struct s6e63m0_gamma gamma_table = {
228  .gamma_22_table[0] = (unsigned int *)&s6e63m0_22_30,
229  .gamma_22_table[1] = (unsigned int *)&s6e63m0_22_90,
230  .gamma_22_table[2] = (unsigned int *)&s6e63m0_22_110,
231  .gamma_22_table[3] = (unsigned int *)&s6e63m0_22_140,
232  .gamma_22_table[4] = (unsigned int *)&s6e63m0_22_170,
233  .gamma_22_table[5] = (unsigned int *)&s6e63m0_22_200,
234  .gamma_22_table[6] = (unsigned int *)&s6e63m0_22_220,
235  .gamma_22_table[7] = (unsigned int *)&s6e63m0_22_240,
236  .gamma_22_table[8] = (unsigned int *)&s6e63m0_22_260,
237  .gamma_22_table[9] = (unsigned int *)&s6e63m0_22_280,
238  .gamma_22_table[10] = (unsigned int *)&s6e63m0_22_300,
239 
240  .gamma_19_table[0] = (unsigned int *)&s6e63m0_19_30,
241  .gamma_19_table[1] = (unsigned int *)&s6e63m0_19_90,
242  .gamma_19_table[2] = (unsigned int *)&s6e63m0_19_110,
243  .gamma_19_table[3] = (unsigned int *)&s6e63m0_19_140,
244  .gamma_19_table[4] = (unsigned int *)&s6e63m0_19_170,
245  .gamma_19_table[5] = (unsigned int *)&s6e63m0_19_200,
246  .gamma_19_table[6] = (unsigned int *)&s6e63m0_19_220,
247  .gamma_19_table[7] = (unsigned int *)&s6e63m0_19_240,
248  .gamma_19_table[8] = (unsigned int *)&s6e63m0_19_260,
249  .gamma_19_table[9] = (unsigned int *)&s6e63m0_19_280,
250  .gamma_19_table[10] = (unsigned int *)&s6e63m0_19_300,
251 
252  .gamma_17_table[0] = (unsigned int *)&s6e63m0_17_30,
253  .gamma_17_table[1] = (unsigned int *)&s6e63m0_17_90,
254  .gamma_17_table[2] = (unsigned int *)&s6e63m0_17_110,
255  .gamma_17_table[3] = (unsigned int *)&s6e63m0_17_140,
256  .gamma_17_table[4] = (unsigned int *)&s6e63m0_17_170,
257  .gamma_17_table[5] = (unsigned int *)&s6e63m0_17_200,
258  .gamma_17_table[6] = (unsigned int *)&s6e63m0_17_220,
259  .gamma_17_table[7] = (unsigned int *)&s6e63m0_17_240,
260  .gamma_17_table[8] = (unsigned int *)&s6e63m0_17_260,
261  .gamma_17_table[9] = (unsigned int *)&s6e63m0_17_280,
262  .gamma_17_table[10] = (unsigned int *)&s6e63m0_17_300,
263 };
264 
265 #endif
266