1 /* 2 * Gamma level definitions. 3 * 4 * Copyright (c) 2011 Samsung Electronics 5 * InKi Dae <inki.dae@samsung.com> 6 * Donghwa Lee <dh09.lee@samsung.com> 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 _LD9040_BRIGHTNESS_H 14 #define _LD9040_BRIGHTNESS_H 15 16 #define MAX_GAMMA_LEVEL 25 17 #define GAMMA_TABLE_COUNT 21 18 19 /* gamma value: 2.2 */ 20 static const unsigned int ld9040_22_300[] = { 21 0x00, 0xa7, 0xb4, 0xae, 0xbf, 0x00, 0x91, 22 0x00, 0xb2, 0xb4, 0xaa, 0xbb, 0x00, 0xac, 23 0x00, 0xb3, 0xb1, 0xaa, 0xbc, 0x00, 0xb3 24 }; 25 26 static const unsigned int ld9040_22_290[] = { 27 0x00, 0xa9, 0xb7, 0xae, 0xbd, 0x00, 0x89, 28 0x00, 0xb7, 0xb6, 0xa8, 0xba, 0x00, 0xa4, 29 0x00, 0xb1, 0xb4, 0xaa, 0xbb, 0x00, 0xaa 30 }; 31 32 static const unsigned int ld9040_22_280[] = { 33 0x00, 0xa9, 0xb6, 0xad, 0xbf, 0x00, 0x86, 34 0x00, 0xb8, 0xb5, 0xa8, 0xbc, 0x00, 0xa0, 35 0x00, 0xb3, 0xb3, 0xa9, 0xbc, 0x00, 0xa7 36 }; 37 38 static const unsigned int ld9040_22_270[] = { 39 0x00, 0xa8, 0xb8, 0xae, 0xbe, 0x00, 0x84, 40 0x00, 0xb9, 0xb7, 0xa8, 0xbc, 0x00, 0x9d, 41 0x00, 0xb2, 0xb5, 0xaa, 0xbc, 0x00, 0xa4 42 43 }; 44 static const unsigned int ld9040_22_260[] = { 45 0x00, 0xa4, 0xb8, 0xb0, 0xbf, 0x00, 0x80, 46 0x00, 0xb8, 0xb6, 0xaa, 0xbc, 0x00, 0x9a, 47 0x00, 0xb0, 0xb5, 0xab, 0xbd, 0x00, 0xa0 48 }; 49 50 static const unsigned int ld9040_22_250[] = { 51 0x00, 0xa4, 0xb9, 0xaf, 0xc1, 0x00, 0x7d, 52 0x00, 0xb9, 0xb6, 0xaa, 0xbb, 0x00, 0x97, 53 0x00, 0xb1, 0xb5, 0xaa, 0xbf, 0x00, 0x9d 54 }; 55 56 static const unsigned int ld9040_22_240[] = { 57 0x00, 0xa2, 0xb9, 0xaf, 0xc2, 0x00, 0x7a, 58 0x00, 0xb9, 0xb7, 0xaa, 0xbd, 0x00, 0x94, 59 0x00, 0xb0, 0xb5, 0xab, 0xbf, 0x00, 0x9a 60 }; 61 62 static const unsigned int ld9040_22_230[] = { 63 0x00, 0xa0, 0xb9, 0xaf, 0xc3, 0x00, 0x77, 64 0x00, 0xb9, 0xb7, 0xab, 0xbe, 0x00, 0x90, 65 0x00, 0xb0, 0xb6, 0xab, 0xbf, 0x00, 0x97 66 }; 67 68 static const unsigned int ld9040_22_220[] = { 69 0x00, 0x9e, 0xba, 0xb0, 0xc2, 0x00, 0x75, 70 0x00, 0xb9, 0xb8, 0xab, 0xbe, 0x00, 0x8e, 71 0x00, 0xb0, 0xb6, 0xac, 0xbf, 0x00, 0x94 72 }; 73 74 static const unsigned int ld9040_22_210[] = { 75 0x00, 0x9c, 0xb9, 0xb0, 0xc4, 0x00, 0x72, 76 0x00, 0xb8, 0xb8, 0xac, 0xbf, 0x00, 0x8a, 77 0x00, 0xb0, 0xb6, 0xac, 0xc0, 0x00, 0x91 78 }; 79 80 static const unsigned int ld9040_22_200[] = { 81 0x00, 0x9a, 0xba, 0xb1, 0xc4, 0x00, 0x6f, 82 0x00, 0xb8, 0xb8, 0xad, 0xc0, 0x00, 0x86, 83 0x00, 0xb0, 0xb7, 0xad, 0xc0, 0x00, 0x8d 84 }; 85 86 static const unsigned int ld9040_22_190[] = { 87 0x00, 0x97, 0xba, 0xb2, 0xc5, 0x00, 0x6c, 88 0x00, 0xb8, 0xb8, 0xae, 0xc1, 0x00, 0x82, 89 0x00, 0xb0, 0xb6, 0xae, 0xc2, 0x00, 0x89 90 }; 91 92 static const unsigned int ld9040_22_180[] = { 93 0x00, 0x93, 0xba, 0xb3, 0xc5, 0x00, 0x69, 94 0x00, 0xb8, 0xb9, 0xae, 0xc1, 0x00, 0x7f, 95 0x00, 0xb0, 0xb6, 0xae, 0xc3, 0x00, 0x85 96 }; 97 98 static const unsigned int ld9040_22_170[] = { 99 0x00, 0x8b, 0xb9, 0xb3, 0xc7, 0x00, 0x65, 100 0x00, 0xb7, 0xb8, 0xaf, 0xc3, 0x00, 0x7a, 101 0x00, 0x80, 0xb6, 0xae, 0xc4, 0x00, 0x81 102 }; 103 104 static const unsigned int ld9040_22_160[] = { 105 0x00, 0x89, 0xba, 0xb3, 0xc8, 0x00, 0x62, 106 0x00, 0xb6, 0xba, 0xaf, 0xc3, 0x00, 0x76, 107 0x00, 0xaf, 0xb7, 0xae, 0xc4, 0x00, 0x7e 108 }; 109 110 static const unsigned int ld9040_22_150[] = { 111 0x00, 0x82, 0xba, 0xb4, 0xc7, 0x00, 0x5f, 112 0x00, 0xb5, 0xba, 0xb0, 0xc3, 0x00, 0x72, 113 0x00, 0xae, 0xb8, 0xb0, 0xc3, 0x00, 0x7a 114 }; 115 116 static const unsigned int ld9040_22_140[] = { 117 0x00, 0x7b, 0xbb, 0xb4, 0xc8, 0x00, 0x5b, 118 0x00, 0xb5, 0xba, 0xb1, 0xc4, 0x00, 0x6e, 119 0x00, 0xae, 0xb9, 0xb0, 0xc5, 0x00, 0x75 120 }; 121 122 static const unsigned int ld9040_22_130[] = { 123 0x00, 0x71, 0xbb, 0xb5, 0xc8, 0x00, 0x57, 124 0x00, 0xb5, 0xbb, 0xb0, 0xc5, 0x00, 0x6a, 125 0x00, 0xae, 0xb9, 0xb1, 0xc6, 0x00, 0x70 126 }; 127 128 static const unsigned int ld9040_22_120[] = { 129 0x00, 0x47, 0xba, 0xb6, 0xca, 0x00, 0x53, 130 0x00, 0xb5, 0xbb, 0xb3, 0xc6, 0x00, 0x65, 131 0x00, 0xae, 0xb8, 0xb3, 0xc7, 0x00, 0x6c 132 }; 133 134 static const unsigned int ld9040_22_110[] = { 135 0x00, 0x13, 0xbb, 0xb7, 0xca, 0x00, 0x4f, 136 0x00, 0xb4, 0xbb, 0xb3, 0xc7, 0x00, 0x60, 137 0x00, 0xad, 0xb8, 0xb4, 0xc7, 0x00, 0x67 138 }; 139 140 static const unsigned int ld9040_22_100[] = { 141 0x00, 0x13, 0xba, 0xb8, 0xcb, 0x00, 0x4b, 142 0x00, 0xb3, 0xbc, 0xb4, 0xc7, 0x00, 0x5c, 143 0x00, 0xac, 0xb8, 0xb4, 0xc8, 0x00, 0x62 144 }; 145 146 static const unsigned int ld9040_22_90[] = { 147 0x00, 0x13, 0xb9, 0xb8, 0xcd, 0x00, 0x46, 148 0x00, 0xb1, 0xbc, 0xb5, 0xc8, 0x00, 0x56, 149 0x00, 0xaa, 0xb8, 0xb4, 0xc9, 0x00, 0x5d 150 }; 151 152 static const unsigned int ld9040_22_80[] = { 153 0x00, 0x13, 0xba, 0xb9, 0xcd, 0x00, 0x41, 154 0x00, 0xb0, 0xbe, 0xb5, 0xc9, 0x00, 0x51, 155 0x00, 0xa9, 0xb9, 0xb5, 0xca, 0x00, 0x57 156 }; 157 158 static const unsigned int ld9040_22_70[] = { 159 0x00, 0x13, 0xb9, 0xb9, 0xd0, 0x00, 0x3c, 160 0x00, 0xaf, 0xbf, 0xb6, 0xcb, 0x00, 0x4b, 161 0x00, 0xa8, 0xb9, 0xb5, 0xcc, 0x00, 0x52 162 }; 163 164 static const unsigned int ld9040_22_50[] = { 165 0x00, 0x13, 0xb2, 0xba, 0xd2, 0x00, 0x30, 166 0x00, 0xaf, 0xc0, 0xb8, 0xcd, 0x00, 0x3d, 167 0x00, 0xa8, 0xb8, 0xb7, 0xcd, 0x00, 0x44 168 }; 169 170 struct ld9040_gamma { 171 unsigned int *gamma_22_table[MAX_GAMMA_LEVEL]; 172 } gamma_table = { 173 .gamma_22_table[0] = (unsigned int *)&ld9040_22_50, 174 .gamma_22_table[1] = (unsigned int *)&ld9040_22_70, 175 .gamma_22_table[2] = (unsigned int *)&ld9040_22_80, 176 .gamma_22_table[3] = (unsigned int *)&ld9040_22_90, 177 .gamma_22_table[4] = (unsigned int *)&ld9040_22_100, 178 .gamma_22_table[5] = (unsigned int *)&ld9040_22_110, 179 .gamma_22_table[6] = (unsigned int *)&ld9040_22_120, 180 .gamma_22_table[7] = (unsigned int *)&ld9040_22_130, 181 .gamma_22_table[8] = (unsigned int *)&ld9040_22_140, 182 .gamma_22_table[9] = (unsigned int *)&ld9040_22_150, 183 .gamma_22_table[10] = (unsigned int *)&ld9040_22_160, 184 .gamma_22_table[11] = (unsigned int *)&ld9040_22_170, 185 .gamma_22_table[12] = (unsigned int *)&ld9040_22_180, 186 .gamma_22_table[13] = (unsigned int *)&ld9040_22_190, 187 .gamma_22_table[14] = (unsigned int *)&ld9040_22_200, 188 .gamma_22_table[15] = (unsigned int *)&ld9040_22_210, 189 .gamma_22_table[16] = (unsigned int *)&ld9040_22_220, 190 .gamma_22_table[17] = (unsigned int *)&ld9040_22_230, 191 .gamma_22_table[18] = (unsigned int *)&ld9040_22_240, 192 .gamma_22_table[19] = (unsigned int *)&ld9040_22_250, 193 .gamma_22_table[20] = (unsigned int *)&ld9040_22_260, 194 .gamma_22_table[21] = (unsigned int *)&ld9040_22_270, 195 .gamma_22_table[22] = (unsigned int *)&ld9040_22_280, 196 .gamma_22_table[23] = (unsigned int *)&ld9040_22_290, 197 .gamma_22_table[24] = (unsigned int *)&ld9040_22_300, 198 }; 199 200 #endif 201