factoryToolV4.0 support on rk3168,lcd,bL,codec,tp,usbwifi,battery control by parameter
[firefly-linux-kernel-4.4.55.git] / arch / arm / mach-rk30 / include / mach / config.h
1 #ifndef __MACH_CONFIG_H
2 #define __MACH_CONFIG_H
3 #include <mach/board.h>
4 #include <mach/iomux-rk30.h>
5
6 #define BOARD_DEFAULT
7 //#define BOARD_RK3168_86V
8 //#define BOARD_RK3168_86V_RK616
9
10 #define INVALID_VALUE  -1
11 #define INVALID_GPIO -1
12
13
14
15 enum {         
16         CODEC_TYPE_NONE = 0,        
17         CODEC_TYPE_RT5631,
18         CODEC_TYPE_ES8323,
19         CODEC_TYPE_RK616,
20         CODEC_TYPE_MAX,
21 };
22
23 enum {         
24         TP_TYPE_NONE = 0,        
25         TP_TYPE_GSLX680, 
26         TP_TYPE_GT811_86V,
27         TP_TYPE_MAX,
28 };
29
30 enum {         
31         GS_TYPE_NONE = 0,              
32         GS_TYPE_MMA7660,         
33         GS_TYPE_LIS3DH,
34         GS_TYPE_MXC6225,
35         GS_TYPE_DMARAD10,
36         GS_TYPE_MAX,
37 };
38
39 enum {         
40         WIFI_TYPE_NONE = 0,              
41         WIFI_TYPE_RTL8188CU,         
42         WIFI_TYPE_RTL8188EU,
43         WIFI_TYPE_MT7601,
44         WIFI_TYPE_RTL8188ETV,
45         WIFI_TYPE_MT5370,
46         WIFI_TYPE_MAX,
47 };
48
49
50 enum {
51         OUT_TYPE_INDEX = 0,
52         OUT_FACE_INDEX,
53         LVDS_FORMAT_INDEX,
54         OUT_CLK_INDEX,
55         LCDC_ACLK_INDEX,
56         H_PW_INDEX,
57         H_BP_INDEX,
58         H_VD_INDEX,
59         H_FP_INDEX,
60         V_PW_INDEX,
61         V_BP_INDEX,
62         V_VD_INDEX,
63         V_FP_INDEX,
64         LCD_WIDTH_INDEX,
65         LCD_HEIGHT_INDEX,
66         DCLK_POL_INDEX,
67         SWAP_RB_INDEX,
68         LCD_PARAM_MAX,
69 };
70
71 #ifdef BOARD_DEFAULT
72 ////////////////////////////////////////////////////////////
73 /*system*/
74 enum {               
75         DEF_PWR_ON = -1,
76 };
77 ////////////////////////////////////////////////////////////
78 /*lcd*/
79 enum {
80         DEF_LCD_EN = -1,
81         DEF_LCD_CS = -1,
82         DEF_LCD_STD=-1,
83 };
84
85
86 #define DEF_LCD_PARAM {SCREEN_RGB, OUT_P888, 0,\                        
87                                                 50000000, 500000000, \                        
88                                                 30, 10, 1024, 210, \                        
89                                                 13, 10, 600, 22, \                        
90                                                 154, 85, \                        
91                                                 1, 0 }
92 //////////////////////////////////////////////////////////////
93 /* backlight */
94
95 enum{
96         DEF_BL_EN = -1,
97         DEF_BL_PWMID =-1,
98         DEF_BL_PWM_MOD=-1,
99         DEF_BL_MOD = -1,
100         DEF_BL_DIV = -1, 
101         DEF_BL_REF = -1,
102         DEF_BL_MIN = -1, 
103         DEF_BL_MAX = -1,        
104 };
105 //////////////////////////////////////////////////////////////
106 /*tp*/
107 enum {
108         DEF_TP_TYPE= -1,
109         DEF_TP_IRQ = -1,
110         DEF_TP_RST = -1,
111         DEF_TP_I2C = -1, 
112         DEF_TP_ADDR = -1,
113         DEF_X_MAX = -1,
114         DEF_Y_MAX = -1,
115         DEF_FIRMVER = -1,
116 };
117 //////////////////////////////////////////////////////////////
118 /*key*/
119 enum{        
120         DEF_KEY_ADC = -1,        
121         DEF_PLAY_KEY = -1,        
122         DEF_VOLDN_KEY = -1,        
123         DEF_VOLUP_KEY = -1,        
124         DEF_MENU_KEY = -1,        
125         DEF_ESC_KEY = -1,        
126         DEF_HOME_KEY = -1,        
127         //DEF_CAM_KEY = -1
128         };
129 //////////////////////////////////////////////////////////////
130 /* gsensor */
131 enum { 
132         DEF_GS_TYPE = -1,
133         DEF_GS_IRQ = -1,                        
134         DEF_GS_I2C = -1,        
135         DEF_GS_ADDR = -1,        
136         
137 };
138 #define DEF_GS_ORIG {-1, 0, 0, 0, -1, 0, 0, 0, 1} 
139 ////////////////////////////////////////////////////////////////
140 /* codec */
141 enum {  
142         DEF_CODEC_TYPE=-1,
143         DEF_CODEC_POWER=-1,
144         DEF_CODEC_RST=-1,
145         DEF_CODEC_HDMI_IRQ=-1,
146         DEF_SPK_CTL = -1,        
147         DEF_HP_DET = -1,
148         DEF_CODEC_I2C= -1,
149         DEF_CODEC_ADDR=-1,
150 };
151 /////////////////////////////////////////////////////////////////
152 /* charge */
153 enum {                
154         DEF_DC_DET = -1,        
155         DEF_BAT_LOW = -1,        
156         DEF_CHG_OK = -1,        
157         DEF_CHG_SET = -1,        
158         DEF_USB_DET = -1,
159         DEF_REF_VOL = -1,
160         DEF_UP_RES = -1,
161         DEF_DOWN_RES = -1,
162         DEF_ROOT_CHG = -1,
163         DEF_SAVE_CAP = -1,
164         DEF_LOW_VOL = -1,
165         DEF_NUM = 0,
166 };
167 #define DEF_BAT_CHARGE {3600, 3700, 3760, 3810, 3870, 3910, 3960, 4020, 4080, 4130, 4180}; 
168 #define DEF_BAT_DISCHARGE {3495, 3570, 3630, 3700, 3740, 3790, 3825, 3865, 3920, 3980, 4050} ;
169 //////////////////////////////////////////////////////////////////
170 /*wifi*/
171 enum {        
172         DEF_WIFI_TYPE = -1,        
173         DEF_WIFI_POWER = -1,            
174 };
175 #endif 
176
177 #ifdef BOARD_RK3168_86V
178 ////////////////////////////////////////////////////////////
179 /*system*/
180 enum {               
181         DEF_PWR_ON = 0x000000a0,
182 };
183 ////////////////////////////////////////////////////////////
184 /*lcd*/
185 enum {
186         DEF_LCD_EN = 0x000100b0,
187         DEF_LCD_CS = 0x000003d4,
188         DEF_LCD_STD=0x000102c6,
189 };
190
191 #define DEF_LCD_PARAM {SCREEN_RGB, OUT_P888, 0,\                        
192                                                 50000000, 500000000, \                        
193                                                 30, 10, 1024, 210, \                        
194                                                 13, 10, 600, 22, \                        
195                                                 154, 85, \                        
196                                                 0, 0 }
197                                                 
198
199 //////////////////////////////////////////////////////////////
200 /* backlight */
201
202 enum{
203         DEF_BL_EN = 0x000000a2,
204         DEF_BL_PWMID = 3,
205         DEF_BL_PWM_MOD=PWM3,
206         DEF_BL_MOD = 1,
207         DEF_BL_DIV = 20*1000, 
208         DEF_BL_REF = 0,
209         DEF_BL_MIN = 60, 
210         DEF_BL_MAX = 255,       
211 };
212 //////////////////////////////////////////////////////////////
213 /*tp*/
214 enum {
215         DEF_TP_TYPE= TP_TYPE_GSLX680,
216         DEF_TP_IRQ = 0x000001b7,
217         DEF_TP_RST = 0x000000b6,
218         DEF_TP_I2C = 2, 
219         DEF_TP_ADDR = 0x40,
220         DEF_X_MAX = 1024,
221         DEF_Y_MAX = 600,
222         DEF_FIRMVER = 0,
223 };
224 //////////////////////////////////////////////////////////////
225 /*key*/
226 enum{        
227         DEF_KEY_ADC = 1,        
228         DEF_PLAY_KEY = 0x000100a4,        
229         DEF_VOLDN_KEY = 0x80000096,        
230         DEF_VOLUP_KEY = 0x80000001,        
231         DEF_MENU_KEY = 0x80000000,        
232         DEF_ESC_KEY = 0x80000000,        
233         DEF_HOME_KEY = 0x80000000,        
234         };
235 //////////////////////////////////////////////////////////////
236 /* gsensor */
237 enum { 
238         DEF_GS_TYPE = GS_TYPE_MXC6225,
239         DEF_GS_IRQ = 0x008000b7,                        
240         DEF_GS_I2C = 0,        
241         DEF_GS_ADDR = 0x15,        
242         
243 };
244 #define DEF_GS_ORIG {-1, 0, 0, 0, -1, 0, 0, 0, 1} 
245 ////////////////////////////////////////////////////////////////
246 /* codec */
247 enum {  
248         DEF_CODEC_TYPE=CODEC_TYPE_ES8323,
249         DEF_CODEC_POWER=-1,
250         DEF_CODEC_RST=-1,
251         DEF_CODEC_HDMI_IRQ=-1,
252         DEF_SPK_CTL = 0x000002d7,        
253         DEF_HP_DET = 0x000000b5,
254         DEF_CODEC_I2C= 4,
255         DEF_CODEC_ADDR=0x10,
256 };
257 /////////////////////////////////////////////////////////////////
258 /* charge */
259 enum {                
260         DEF_DC_DET = 0x000100b2,        
261         DEF_BAT_LOW = INVALID_GPIO,        
262         DEF_CHG_OK = 0x000000a6,        
263         DEF_CHG_SET = INVALID_GPIO,        
264         DEF_USB_DET = INVALID_GPIO,
265         DEF_REF_VOL = 1800,
266         DEF_UP_RES = 200,
267         DEF_DOWN_RES = 120,
268         DEF_ROOT_CHG = 1,
269         DEF_SAVE_CAP = 1,
270         DEF_LOW_VOL = 3600,
271         DEF_NUM = 0,
272 };
273 #define DEF_BAT_CHARGE {3600, 3700, 3760, 3810, 3870, 3910, 3960, 4020, 4080, 4130, 4180}; 
274 #define DEF_BAT_DISCHARGE {3495, 3570, 3630, 3700, 3740, 3790, 3825, 3865, 3920, 3980, 4050};
275 //////////////////////////////////////////////////////////////////
276 /*wifi*/
277 enum {        
278         DEF_WIFI_TYPE = WIFI_TYPE_RTL8188EU,        
279         DEF_WIFI_POWER = 0x000100d5,            
280 };
281 #endif 
282
283
284
285
286
287
288
289
290 #ifdef BOARD_RK3168_86V_RK616
291 ////////////////////////////////////////////////////////////
292 /*system*/
293 enum {               
294         DEF_PWR_ON = 0x000000a0,
295 };
296 ////////////////////////////////////////////////////////////
297 /*lcd*/
298 enum {
299         DEF_LCD_EN = 0x000100b0,
300         DEF_LCD_CS = 0x000003d4,
301         DEF_LCD_STD=0x000102c6,
302 };
303 /*
304 #define DEF_LCD_PARAM {SCREEN_RGB, OUT_P888, \                        
305                                                 50000000, 500000000, \                        
306                                                 30, 10, 1024, 210, \                        
307                                                 13, 10, 600, 22, \                        
308                                                 154, 85, \                        
309                                                 1, 0 }
310 */
311
312 #define DEF_LCD_PARAM {SCREEN_RGB, OUT_P888,0, \                        
313                                                 33000000, 150000000, \                        
314                                                 1,88,800,40, \                        
315                                                 3,29,480,13, \                        
316                                                 154, 85, \                        
317                                                 0, 0 }
318
319 //////////////////////////////////////////////////////////////
320 /* backlight */
321
322 enum{
323         DEF_BL_EN = 0x000000a2,
324         DEF_BL_PWMID = 3,
325         DEF_BL_PWM_MOD=PWM3,
326         DEF_BL_MOD = 1,
327         DEF_BL_DIV = 20*1000, 
328         DEF_BL_REF = 0,
329         DEF_BL_MIN = 60, 
330         DEF_BL_MAX = 255,       
331 };
332 //////////////////////////////////////////////////////////////
333 /*tp*/
334 enum {
335         DEF_TP_TYPE= TP_TYPE_GSLX680,
336         DEF_TP_IRQ = 0x000001b7,
337         DEF_TP_RST = 0x000000b6,
338         DEF_TP_I2C = 2, 
339         DEF_TP_ADDR = 0x40,
340         DEF_X_MAX = 1024,
341         DEF_Y_MAX = 600,
342         DEF_FIRMVER= 0,
343 };
344 //////////////////////////////////////////////////////////////
345 /*key*/
346 enum{        
347         DEF_KEY_ADC = 1,        
348         DEF_PLAY_KEY = 0x000100a4,        
349         DEF_VOLDN_KEY = 0x80000096,        
350         DEF_VOLUP_KEY = 0x80000001,        
351         DEF_MENU_KEY = 0x80000000,        
352         DEF_ESC_KEY = 0x80000000,        
353         DEF_HOME_KEY = 0x80000000,        
354         };
355 //////////////////////////////////////////////////////////////
356 /* gsensor */
357 enum { 
358         DEF_GS_TYPE = GS_TYPE_MMA7660,
359         DEF_GS_IRQ = 0x008000b7,                        
360         DEF_GS_I2C = 0,        
361         DEF_GS_ADDR = 0x4c,        
362         
363 };
364 #define DEF_GS_ORIG {1, 0, 0, 0, -1, 0, 0, 0, 1} 
365 ////////////////////////////////////////////////////////////////
366 /* codec */
367 enum {  
368         DEF_CODEC_TYPE=CODEC_TYPE_RK616,
369         DEF_CODEC_POWER=0x000000a3,
370         DEF_CODEC_RST=0x000003b2,
371         DEF_CODEC_HDMI_IRQ=0x000002d6,
372         DEF_SPK_CTL = 0x000002d7,        
373         DEF_HP_DET = -1,
374         DEF_CODEC_I2C= 4,
375         DEF_CODEC_ADDR=0x50,
376 };
377 /////////////////////////////////////////////////////////////////
378 /* charge */
379 enum {                
380         DEF_DC_DET = 0x000100b2,        
381         DEF_BAT_LOW = INVALID_GPIO,        
382         DEF_CHG_OK = 0x000000a6,        
383         DEF_CHG_SET = INVALID_GPIO,        
384         DEF_USB_DET = INVALID_GPIO,
385         DEF_REF_VOL = 1800,
386         DEF_UP_RES = 200,
387         DEF_DOWN_RES = 120,
388         DEF_ROOT_CHG = 1,
389         DEF_SAVE_CAP = 1,
390         DEF_LOW_VOL = 3600,
391         DEF_NUM = 0,
392 };
393 #define DEF_BAT_CHARGE {3600, 3700, 3760, 3810, 3870, 3910, 3960, 4020, 4080, 4130, 4180}; 
394 #define DEF_BAT_DISCHARGE {3495, 3570, 3630, 3700, 3740, 3790, 3825, 3865, 3920, 3980, 4050} ;
395 //////////////////////////////////////////////////////////////////
396 /*wifi*/
397 enum {        
398         DEF_WIFI_TYPE = WIFI_TYPE_RTL8188EU,        
399         DEF_WIFI_POWER = 0x000100d5,            
400 };
401 #endif 
402
403 #endif
404
405
406