1 #ifndef __REF_VOLT_TABLE_H__
2 #define __REF_VOLT_TABLE_H__
4 #include "smart_dimming.h"
6 u32 volt_table_v1[256] = {
7 4671488, 4663296, 4655104, 4647936,
8 4639744, 4631552, 4624384, 4616192,
9 4608000, 4600832, 4592640, 4584448,
10 4577280, 4569088, 4560896, 4553728,
11 4545536, 4537344, 4530176, 4521984,
12 4513792, 4506624, 4498432, 4490240,
13 4483072, 4474880, 4466688, 4459520,
14 4451328, 4443136, 4435968, 4427776,
15 4419584, 4412416, 4404224, 4396032,
16 4388864, 4380672, 4372480, 4365312,
17 4357120, 4348928, 4341760, 4333568,
18 4325376, 4318208, 4310016, 4301824,
19 4294656, 4286464, 4278272, 4271104,
20 4262912, 4254720, 4247552, 4239360,
21 4231168, 4224000, 4215808, 4207616,
22 4200448, 4192256, 4184064, 4176896,
23 4168704, 4160512, 4153344, 4145152,
24 4136960, 4129792, 4121600, 4113408,
25 4106240, 4098048, 4089856, 4082688,
26 4074496, 4066304, 4059136, 4050944,
27 4042752, 4035584, 4027392, 4019200,
28 4012032, 4003840, 3995648, 3988480,
29 3980288, 3972096, 3964928, 3956736,
30 3948544, 3941376, 3933184, 3924992,
31 3917824, 3909632, 3901440, 3894272,
32 3886080, 3877888, 3870720, 3862528,
33 3854336, 3847168, 3838976, 3830784,
34 3823616, 3815424, 3807232, 3800064,
35 3791872, 3783680, 3776512, 3768320,
36 3760128, 3752960, 3744768, 3736576,
37 3729408, 3721216, 3713024, 3705856,
38 3697664, 3689472, 3682304, 3674112,
39 3665920, 3658752, 3650560, 3642368,
40 3635200, 3627008, 3618816, 3611648,
41 3603456, 3595264, 3588096, 3579904,
46 u32 volt_table_v255[432] = {
47 3924992, 3917824, 3909632, 3901440,
48 3894272, 3886080, 3877888, 3870720,
49 3862528, 3854336, 3847168, 3838976,
50 3830784, 3823616, 3815424, 3807232,
51 3800064, 3791872, 3783680, 3776512,
52 3768320, 3760128, 3752960, 3744768,
53 3736576, 3729408, 3721216, 3713024,
54 3705856, 3697664, 3689472, 3682304,
55 3674112, 3665920, 3658752, 3650560,
56 3642368, 3635200, 3627008, 3618816,
57 3611648, 3603456, 3595264, 3588096,
58 3579904, 3571712, 3564544, 3556352,
59 3548160, 3540992, 3532800, 3524608,
60 3517440, 3509248, 3501056, 3493888,
61 3485696, 3477504, 3470336, 3462144,
62 3453952, 3446784, 3438592, 3430400,
63 3423232, 3415040, 3406848, 3399680,
64 3391488, 3383296, 3376128, 3367936,
65 3359744, 3352576, 3344384, 3336192,
66 3329024, 3320832, 3312640, 3305472,
67 3297280, 3289088, 3281920, 3273728,
68 3265536, 3258368, 3250176, 3241984,
69 3234816, 3226624, 3218432, 3211264,
70 3203072, 3194880, 3187712, 3179520,
71 3171328, 3164160, 3155968, 3147776,
72 3140608, 3132416, 3124224, 3117056,
73 3108864, 3100672, 3093504, 3085312,
74 3077120, 3069952, 3061760, 3053568,
75 3046400, 3038208, 3030016, 3022848,
76 3014656, 3006464, 2999296, 2991104,
77 2982912, 2975744, 2967552, 2959360,
78 2952192, 2944000, 2935808, 2928640,
79 2920448, 2912256, 2905088, 2896896,
80 2888704, 2881536, 2873344, 2865152,
81 2857984, 2849792, 2841600, 2834432,
82 2826240, 2818048, 2810880, 2802688,
83 2794496, 2787328, 2779136, 2770944,
84 2763776, 2755584, 2747392, 2740224,
85 2732032, 2723840, 2716672, 2708480,
86 2700288, 2693120, 2684928, 2676736,
87 2669568, 2661376, 2653184, 2646016,
88 2637824, 2629632, 2622464, 2614272,
89 2606080, 2598912, 2590720, 2582528,
90 2575360, 2567168, 2558976, 2551808,
91 2543616, 2535424, 2528256, 2520064,
92 2511872, 2504704, 2496512, 2488320,
93 2481152, 2472960, 2464768, 2457600,
94 2449408, 2441216, 2434048, 2425856,
95 2417664, 2410496, 2402304, 2394112,
96 2386944, 2378752, 2370560, 2363392,
97 2355200, 2347008, 2339840, 2331648,
98 2323456, 2316288, 2308096, 2299904,
99 2292736, 2284544, 2276352, 2269184,
100 2260992, 2252800, 2245632, 2237440,
101 2229248, 2222080, 2213888, 2205696,
102 2198528, 2190336, 2182144, 2174976,
103 2166784, 2158592, 2151424, 2143232,
104 2135040, 2127872, 2119680, 2111488,
105 2104320, 2096128, 2087936, 2080768,
106 2072576, 2064384, 2057216, 2049024,
107 2040832, 2033664, 2025472, 2017280,
108 2010112, 2001920, 1993728, 1986560,
109 1978368, 1970176, 1963008, 1954816,
110 1946624, 1939456, 1931264, 1923072,
111 1915904, 1907712, 1899520, 1892352,
112 1884160, 1875968, 1868800, 1860608,
113 1852416, 1845248, 1837056, 1828864,
114 1821696, 1813504, 1805312, 1798144,
115 1789952, 1781760, 1774592, 1766400,
116 1758208, 1751040, 1742848, 1734656,
117 1727488, 1719296, 1711104, 1703936,
118 1695744, 1687552, 1680384, 1672192,
119 1664000, 1656832, 1648640, 1640448,
120 1633280, 1625088, 1616896, 1609728,
121 1601536, 1593344, 1586176, 1577984,
122 1569792, 1562624, 1554432, 1546240,
123 1539072, 1530880, 1522688, 1515520,
124 1507328, 1499136, 1491968, 1483776,
125 1475584, 1468416, 1460224, 1452032,
126 1444864, 1436672, 1428480, 1421312,
127 1413120, 1404928, 1397760, 1389568,
128 1381376, 1374208, 1366016, 1357824,
129 1350656, 1342464, 1334272, 1327104,
130 1318912, 1310720, 1303552, 1295360,
131 1287168, 1280000, 1271808, 1263616,
132 1256448, 1248256, 1240064, 1232896,
133 1224704, 1216512, 1209344, 1201152,
134 1192960, 1185792, 1177600, 1169408,
135 1162240, 1154048, 1145856, 1138688,
136 1130496, 1122304, 1115136, 1106944,
137 1098752, 1091584, 1083392, 1075200,
138 1068032, 1059840, 1051648, 1044480,
139 1036288, 1028096, 1020928, 1012736,
140 1004544, 997376, 989184, 980992,
141 973824, 965632, 957440, 950272,
142 942080, 933888, 926720, 918528,
143 910336, 903168, 894976, 886784,
144 879616, 871424, 863232, 856064,
145 847872, 839680, 832512, 824320,
146 816128, 808960, 800768, 792576,
147 785408, 777216, 769024, 761856,
148 753664, 745472, 738304, 730112,
149 721920, 714752, 706560, 698368,
150 691200, 683008, 674816, 667648,
151 659456, 651264, 644096, 635904,
152 627712, 620544, 612352, 604160,
153 596992, 588800, 580608, 573440,
154 565248, 557056, 549888, 541696,
157 u32 volt_table_cv_20_dv_320[256] = {
158 64, 67, 70, 74, 77, 80, 83, 86, 90, 93,
159 96, 99, 102, 106, 109, 112, 115, 118, 122, 125,
160 128, 131, 134, 138, 141, 144, 147, 150, 154, 157,
161 160, 163, 166, 170, 173, 176, 179, 182, 186, 189,
162 192, 195, 198, 202, 205, 208, 211, 214, 218, 221,
163 224, 227, 230, 234, 237, 240, 243, 246, 250, 253,
164 256, 259, 262, 266, 269, 272, 275, 278, 282, 285,
165 288, 291, 294, 298, 301, 304, 307, 310, 314, 317,
166 320, 323, 326, 330, 333, 336, 339, 342, 346, 349,
167 352, 355, 358, 362, 365, 368, 371, 374, 378, 381,
168 384, 387, 390, 394, 397, 400, 403, 406, 410, 413,
169 416, 419, 422, 426, 429, 432, 435, 438, 442, 445,
170 448, 451, 454, 458, 461, 464, 467, 470, 474, 477,
171 480, 483, 486, 490, 493, 496, 499, 502, 506, 509,
172 512, 515, 518, 522, 525, 528, 531, 534, 538, 541,
173 544, 547, 550, 554, 557, 560, 563, 566, 570, 573,
174 576, 579, 582, 586, 589, 592, 595, 598, 602, 605,
175 608, 611, 614, 618, 621, 624, 627, 630, 634, 637,
176 640, 643, 646, 650, 653, 656, 659, 662, 666, 669,
177 672, 675, 678, 682, 685, 688, 691, 694, 698, 701,
178 704, 707, 710, 714, 717, 720, 723, 726, 730, 733,
179 736, 739, 742, 746, 749, 752, 755, 758, 762, 765,
180 768, 771, 774, 778, 781, 784, 787, 790, 794, 797,
181 800, 803, 806, 810, 813, 816, 819, 822, 826, 829,
182 832, 835, 838, 842, 845, 848, 851, 854, 858, 861,
183 864, 867, 870, 874, 877, 880
186 u32 volt_table_cv_65_dv_320[256] = {
187 208, 211, 214, 218, 221, 224, 227, 230, 234, 237,
188 240, 243, 246, 250, 253, 256, 259, 262, 266, 269,
189 272, 275, 278, 282, 285, 288, 291, 294, 298, 301,
190 304, 307, 310, 314, 317, 320, 323, 326, 330, 333,
191 336, 339, 342, 346, 349, 352, 355, 358, 362, 365,
192 368, 371, 374, 378, 381, 384, 387, 390, 394, 397,
193 400, 403, 406, 410, 413, 416, 419, 422, 426, 429,
194 432, 435, 438, 442, 445, 448, 451, 454, 458, 461,
195 464, 467, 470, 474, 477, 480, 483, 486, 490, 493,
196 496, 499, 502, 506, 509, 512, 515, 518, 522, 525,
197 528, 531, 534, 538, 541, 544, 547, 550, 554, 557,
198 560, 563, 566, 570, 573, 576, 579, 582, 586, 589,
199 592, 595, 598, 602, 605, 608, 611, 614, 618, 621,
200 624, 627, 630, 634, 637, 640, 643, 646, 650, 653,
201 656, 659, 662, 666, 669, 672, 675, 678, 682, 685,
202 688, 691, 694, 698, 701, 704, 707, 710, 714, 717,
203 720, 723, 726, 730, 733, 736, 739, 742, 746, 749,
204 752, 755, 758, 762, 765, 768, 771, 774, 778, 781,
205 784, 787, 790, 794, 797, 800, 803, 806, 810, 813,
206 816, 819, 822, 826, 829, 832, 835, 838, 842, 845,
207 848, 851, 854, 858, 861, 864, 867, 870, 874, 877,
208 880, 883, 886, 890, 893, 896, 899, 902, 906, 909,
209 912, 915, 918, 922, 925, 928, 931, 934, 938, 941,
210 944, 947, 950, 954, 957, 960, 963, 966, 970, 973,
211 976, 979, 982, 986, 989, 992, 995, 998, 1002, 1005,
212 1008, 1011, 1014, 1018, 1021, 1024,
215 const u32 gamma_300_gra_table[256] = {
216 0, 2, 7, 17, 32, 53, 78, 110,
217 148, 191, 241, 298, 361, 430, 506, 589,
218 679, 776, 880, 991, 1109, 1235, 1368, 1508,
219 1657, 1812, 1975, 2147, 2325, 2512, 2706, 2909,
220 3119, 3338, 3564, 3799, 4042, 4293, 4553, 4820,
221 5096, 5381, 5674, 5975, 6285, 6604, 6931, 7267,
222 7611, 7965, 8327, 8697, 9077, 9465, 9863, 10269,
223 10684, 11109, 11542, 11984, 12436, 12896, 13366, 13845,
224 14333, 14830, 15337, 15852, 16378, 16912, 17456, 18009,
225 18572, 19144, 19726, 20317, 20918, 21528, 22148, 22778,
226 23417, 24066, 24724, 25392, 26070, 26758, 27456, 28163,
227 28880, 29607, 30344, 31090, 31847, 32613, 33390, 34176,
228 34973, 35779, 36596, 37422, 38259, 39106, 39963, 40830,
229 41707, 42594, 43492, 44399, 45317, 46246, 47184, 48133,
230 49092, 50062, 51042, 52032, 53032, 54043, 55065, 56097,
231 57139, 58192, 59255, 60329, 61413, 62508, 63613, 64729,
232 65856, 66993, 68141, 69299, 70469, 71648, 72839, 74040,
233 75252, 76475, 77708, 78952, 80207, 81473, 82750, 84037,
234 85336, 86645, 87965, 89296, 90638, 91990, 93354, 94729,
235 96114, 97511, 98919, 100337, 101767, 103208, 104659, 106122,
236 107596, 109081, 110577, 112085, 113603, 115132, 116673, 118225,
237 119788, 121362, 122948, 124544, 126152, 127772, 129402, 131044,
238 132697, 134361, 136037, 137724, 139422, 141132, 142853, 144586,
239 146330, 148085, 149852, 151630, 153419, 155220, 157033, 158857,
240 160692, 162540, 164398, 166268, 168150, 170043, 171948, 173864,
241 175792, 177731, 179683, 181645, 183620, 185606, 187603, 189613,
242 191634, 193667, 195711, 197767, 199835, 201915, 204006, 206109,
243 208224, 210351, 212489, 214640, 216802, 218976, 221161, 223359,
244 225569, 227790, 230023, 232268, 234525, 236794, 239075, 241368,
245 243672, 245989, 248318, 250658, 253011, 255375, 257752, 260141,
246 262541, 264954, 267379, 269815, 272264, 274725, 277198, 279683,
247 282180, 284689, 287211, 289744, 292290, 294848, 297418, 300000,
250 const u32 gamma_22_table[256] = {
318 const struct flookup_table flookup_table[302] = {
319 { 0, 0}, { 1, 20}, { 20, 7}, { 27, 5}, { 32, 4}, { 36, 4},
320 { 40, 4}, { 44, 3}, { 47, 3}, { 50, 2}, { 52, 3}, { 55, 2},
321 { 57, 3}, { 60, 2}, { 62, 2}, { 64, 2}, { 66, 2}, { 68, 2},
322 { 70, 1}, { 71, 2}, { 73, 2}, { 75, 2}, { 77, 1}, { 78, 2},
323 { 80, 1}, { 81, 2}, { 83, 1}, { 84, 2}, { 86, 1}, { 87, 2},
324 { 89, 1}, { 90, 1}, { 91, 2}, { 93, 1}, { 94, 1}, { 95, 2},
325 { 97, 1}, { 98, 1}, { 99, 1}, {100, 1}, {101, 2}, {103, 1},
326 {104, 1}, {105, 1}, {106, 1}, {107, 1}, {108, 1}, {109, 1},
327 {110, 1}, {111, 1}, {112, 1}, {113, 1}, {114, 1}, {115, 1},
328 {116, 1}, {117, 1}, {118, 1}, {119, 1}, {120, 1}, {121, 1},
329 {122, 1}, {123, 1}, {124, 1}, {125, 1}, {126, 1}, {127, 1},
330 {128, 1}, {129, 1}, { 0, 0}, {130, 1}, {131, 1}, {132, 1},
331 {133, 1}, {134, 1}, { 0, 0}, {135, 1}, {136, 1}, {137, 1},
332 {138, 1}, {139, 1}, { 0, 0}, {140, 1}, {141, 1}, {142, 1},
333 { 0, 0}, {143, 1}, {144, 1}, {145, 1}, {146, 1}, { 0, 0},
334 {147, 1}, {148, 1}, {149, 1}, { 0, 0}, {150, 1}, {151, 1},
335 { 0, 0}, {152, 1}, {153, 1}, {154, 1}, { 0, 0}, {155, 1},
336 {156, 1}, { 0, 0}, {157, 1}, {158, 1}, { 0, 0}, {159, 1},
337 {160, 1}, { 0, 0}, {161, 1}, {162, 1}, { 0, 0}, {163, 1},
338 {164, 1}, { 0, 0}, {165, 1}, {166, 1}, { 0, 0}, {167, 1},
339 {168, 1}, { 0, 0}, {169, 1}, {170, 1}, { 0, 0}, {171, 1},
340 { 0, 0}, {172, 1}, {173, 1}, { 0, 0}, {174, 1}, { 0, 0},
341 {175, 1}, {176, 1}, { 0, 0}, {177, 1}, { 0, 0}, {178, 1},
342 {179, 1}, { 0, 0}, {180, 1}, { 0, 0}, {181, 1}, {182, 1},
343 { 0, 0}, {183, 1}, { 0, 0}, {184, 1}, { 0, 0}, {185, 1},
344 {186, 1}, { 0, 0}, {187, 1}, { 0, 0}, {188, 1}, { 0, 0},
345 {189, 1}, { 0, 0}, {190, 1}, {191, 1}, { 0, 0}, {192, 1},
346 { 0, 0}, {193, 1}, { 0, 0}, {194, 1}, { 0, 0}, {195, 1},
347 { 0, 0}, {196, 1}, { 0, 0}, {197, 1}, {198, 1}, { 0, 0},
348 {199, 1}, { 0, 0}, {200, 1}, { 0, 0}, {201, 1}, { 0, 0},
349 {202, 1}, { 0, 0}, {203, 1}, { 0, 0}, {204, 1}, { 0, 0},
350 {205, 1}, { 0, 0}, {206, 1}, { 0, 0}, {207, 1}, { 0, 0},
351 {208, 1}, { 0, 0}, {209, 1}, { 0, 0}, {210, 1}, { 0, 0},
352 {211, 1}, { 0, 0}, {212, 1}, { 0, 0}, {213, 1}, { 0, 0},
353 { 0, 0}, {214, 1}, { 0, 0}, {215, 1}, { 0, 0}, {216, 1},
354 { 0, 0}, {217, 1}, { 0, 0}, {218, 1}, { 0, 0}, {219, 1},
355 { 0, 0}, {220, 1}, { 0, 0}, {221, 1}, { 0, 0}, { 0, 0},
356 {222, 1}, { 0, 0}, {223, 1}, { 0, 0}, {224, 1}, { 0, 0},
357 {225, 1}, { 0, 0}, { 0, 0}, {226, 1}, { 0, 0}, {227, 1},
358 { 0, 0}, {228, 1}, { 0, 0}, {229, 1}, { 0, 0}, { 0, 0},
359 {230, 1}, { 0, 0}, {231, 1}, { 0, 0}, {232, 1}, { 0, 0},
360 {233, 1}, { 0, 0}, { 0, 0}, {234, 1}, { 0, 0}, {235, 1},
361 { 0, 0}, { 0, 0}, {236, 1}, { 0, 0}, {237, 1}, { 0, 0},
362 {238, 1}, { 0, 0}, { 0, 0}, {239, 1}, { 0, 0}, {240, 1},
363 { 0, 0}, {241, 1}, { 0, 0}, { 0, 0}, {242, 1}, { 0, 0},
364 {243, 1}, { 0, 0}, { 0, 0}, {244, 1}, { 0, 0}, {245, 1},
365 { 0, 0}, { 0, 0}, {246, 1}, { 0, 0}, {247, 1}, { 0, 0},
366 { 0, 0}, {248, 1}, { 0, 0}, {249, 1}, { 0, 0}, { 0, 0},
367 {250, 1}, { 0, 0}, {251, 1}, { 0, 0}, { 0, 0}, {252, 1},
368 { 0, 0}, {253, 1}, { 0, 0}, { 0, 0}, {254, 1}, { 0, 0},