rk3026: cpu_axi.h: fix core offset define
[firefly-linux-kernel-4.4.55.git] / include / linux / anx6345.h
1 #ifndef __ANX6345_H_
2 #define __ANX6345_H_
3
4 #include<linux/rk_screen.h>
5 #include<linux/earlysuspend.h>
6 #include<linux/anx9805.h>
7
8 #define ANX6345_SCL_RATE (100*1000)
9
10 #define MAX_REG         0xf0
11 #define MAX_BUF_CNT     6
12
13
14 #define DP_TX_PORT0_ADDR 0x70
15 #define HDMI_TX_PORT0_ADDR 0x72
16
17 /***************************************************************/
18 //  DEV_ADDR = 0x7A or 0x7B , MIPI Rx Registers
19 #define MIPI_ANALOG_PWD_CTRL0                            0x00
20 #define MIPI_ANALOG_PWD_CTRL1                           0x01
21 #define MIPI_ANALOG_PWD_CTRL2                           0x02
22
23 #define MIPI_MISC_CTRL                         0x03 
24
25 #define MIPI_TIMING_REG0                    0x04 
26 #define MIPI_TIMING_REG1                    0x05 
27 #define MIPI_TIMING_REG2                    0x06 
28 #define MIPI_TIMING_REG3                    0x07
29 #define MIPI_TIMING_REG4                    0x08 
30 #define MIPI_TIMING_REG5                    0x09 
31 #define MIPI_TIMING_REG6                    0x0a 
32
33 #define MIPI_HS_JITTER_REG                 0x0B
34
35 #define MIPI_VID_STABLE_CNT               0x0C 
36
37 #define MIPI_ANALOG_CTRL0                  0x0D 
38 #define MIPI_ANALOG_CTRL1                  0x0E
39 #define MIPI_ANALOG_CTRL2                  0x0F 
40
41 #define MIPI_PRBS_REG                           0x10 
42 #define MIPI_PROTOCOL_STATE               0x11 
43
44
45 //End for DEV_addr 0x7A/0x7E
46
47 /***************************************************************/
48 //  DEV_ADDR = 0x70 or 0x78 , Displayport mode and HDCP registers
49 #define SP_TX_HDCP_STATUS                                                                                       0x00
50 #define SP_TX_HDCP_AUTH_PASS                                                                    0x02//bit position
51
52 #define SP_TX_HDCP_CONTROL_0_REG                                0x01
53 #define SP_TX_HDCP_CONTROL_0_STORE_AN            0x80//bit position
54 #define SP_TX_HDCP_CONTROL_0_RX_REPEATER        0x40//bit position
55 #define SP_TX_HDCP_CONTROL_0_RE_AUTH              0x20//bit position
56 #define SP_TX_HDCP_CONTROL_0_SW_AUTH_OK       0x10//bit position
57 #define SP_TX_HDCP_CONTROL_0_HARD_AUTH_EN   0x08//bit position
58 #define SP_TX_HDCP_CONTROL_0_HDCP_ENC_EN      0x04//bit position
59 #define SP_TX_HDCP_CONTROL_0_BKSV_SRM_PASS  0x02//bit position
60 #define SP_TX_HDCP_CONTROL_0_KSVLIST_VLD        0x01//bit position
61
62
63 #define SP_TX_HDCP_CONTROL_1_REG                                0x02
64 #define SP_TX_HDCP_CONTROL_1_DDC_NO_STOP                        0x20//bit position
65 #define SP_TX_HDCP_CONTROL_1_DDC_NO_ACK                         0x10//bit position
66 #define SP_TX_HDCP_CONTROL_1_EDDC_NO_ACK                        0x08//bit position
67 //#define SP_TX_HDCP_CONTROL_1_HDCP_EMB_SCREEN_EN               0x04//bit position
68 #define SP_TX_HDCP_CONTROL_1_RCV_11_EN                  0x02//bit position
69 #define SP_TX_HDCP_CONTROL_1_HDCP_11_EN                         0x01//bit position
70
71 #define SP_TX_HDCP_LINK_CHK_FRAME_NUM                                   0x03
72 #define SP_TX_HDCP_CONTROL_2_REG                                                0x04
73
74 #define SP_TX_HDCP_AKSV0                                                                0x05
75 #define SP_TX_HDCP_AKSV1                                                                0x06
76 #define SP_TX_HDCP_AKSV2                                                                0x07
77 #define SP_TX_HDCP_AKSV3                                                                0x08
78 #define SP_TX_HDCP_AKSV4                                                                0x09
79
80 //AKSV
81 #define SP_TX_HDCP_AN0                                                                  0x0A
82 #define SP_TX_HDCP_AN1                                                                  0x0B
83 #define SP_TX_HDCP_AN2                                                                  0x0C
84 #define SP_TX_HDCP_AN3                                                                  0x0D
85 #define SP_TX_HDCP_AN4                                                                  0x0E
86 #define SP_TX_HDCP_AN5                                                                  0x0F
87 #define SP_TX_HDCP_AN6                                                                  0x10
88 #define SP_TX_HDCP_AN7                                                                  0x11
89
90 //BKSV
91 #define SP_TX_HDCP_BKSV0                                                                0x12
92 #define SP_TX_HDCP_BKSV1                                                                0x13
93 #define SP_TX_HDCP_BKSV2                                                                0x14
94 #define SP_TX_HDCP_BKSV3                                                                0x15
95 #define SP_TX_HDCP_BKSV4                                                                0x16
96
97 #define SP_TX_HDCP_R0_L                                                                 0x17
98 #define SP_TX_HDCP_R0_H                                                                 0x18
99
100 #define M_VID_0 0xC0
101 #define M_VID_1 0xC1
102 #define M_VID_2 0xC2
103 #define N_VID_0 0xC3
104 #define N_VID_1 0xC4
105 #define N_VID_2 0xC5
106
107 #define SP_TX_HDCP_R0_WAIT_Timer                                         0x40
108
109
110
111 #define SP_TX_SYS_CTRL1_REG                                             0x80
112 //#define SP_TX_SYS_CTRL1_PD_IO                                                 0x80    // bit position
113 //#define SP_TX_SYS_CTRL1_PD_VID                                                0x40    // bit position
114 //#define SP_TX_SYS_CTRL1_PD_LINK                                               0x20    // bit position
115 //#define SP_TX_SYS_CTRL1_PD_TOTAL                                              0x10    // bit position
116 //#define SP_TX_SYS_CTRL1_MODE_SEL                                              0x08    // bit position
117 #define SP_TX_SYS_CTRL1_DET_STA                                         0x04    // bit position
118 #define SP_TX_SYS_CTRL1_FORCE_DET                                       0x02    // bit position
119 #define SP_TX_SYS_CTRL1_DET_CTRL                                        0x01    // bit position
120
121 #define SP_TX_SYS_CTRL2_REG                                             0x81
122 // #define SP_TX_SYS_CTRL2_ENHANCED                                             0x08      //bit position
123 #define SP_TX_SYS_CTRL2_CHA_STA                                         0x04    // bit position
124 #define SP_TX_SYS_CTRL2_FORCE_CHA                                       0x02    // bit position
125 #define SP_TX_SYS_CTRL2_CHA_CTRL                                        0x01    // bit position
126
127 #define SP_TX_SYS_CTRL3_REG                                             0x82
128 #define SP_TX_SYS_CTRL3_HPD_STATUS                                      0x40    // bit position
129 #define SP_TX_SYS_CTRL3_F_HPD                                           0x20    // bit position
130 #define SP_TX_SYS_CTRL3_HPD_CTRL                                        0x10    // bit position
131 #define SP_TX_SYS_CTRL3_STRM_VALID                                      0x04    // bit position
132 #define SP_TX_SYS_CTRL3_F_VALID                                         0x02    // bit position
133 #define SP_TX_SYS_CTRL3_VALID_CTRL                                      0x01    // bit position
134
135 #define SP_TX_SYS_CTRL4_REG                                                             0x83
136 #define SP_TX_SYS_CTRL4_ENHANCED                                                0x08//bit position
137
138 #define SP_TX_VID_CTRL                                                                  0x84
139
140 #define SP_TX_AUD_CTRL                                                                  0x87
141 #define SP_TX_AUD_CTRL_AUD_EN                                                   0x01
142
143
144 #define SP_TX_PKT_EN_REG                                                0x90
145 #define SP_TX_PKT_AUD_UP                                                                0x80  // bit position
146 #define SP_TX_PKT_AVI_UD                                                0x40  // bit position
147 #define SP_TX_PKT_MPEG_UD                                               0x20  // bit position    
148 #define SP_TX_PKT_SPD_UD                                                0x10  // bit position   
149 #define SP_TX_PKT_AUD_EN                                                                0x08  // bit position=
150 #define SP_TX_PKT_AVI_EN                                                0x04  // bit position          
151 #define SP_TX_PKT_MPEG_EN                                               0x02  // bit position     
152 #define SP_TX_PKT_SPD_EN                                                0x01  // bit position       
153
154
155 #define SP_TX_HDCP_CTRL                                                                                                 0x92
156
157 #define SP_TX_LINK_BW_SET_REG                                    0xA0
158 #define SP_TX_LANE_COUNT_SET_REG                                 0xA1
159
160 #define SP_TX_TRAINING_PTN_SET_REG                   0xA2
161 #define SP_TX_SCRAMBLE_DISABLE                                           0x20//bit 5
162
163 #define SP_TX_TRAINING_LANE0_SET_REG                                            0xA3
164 #define SP_TX_TRAINING_LANE0_SET_MAX_PRE_REACH        0x20        // bit position
165 #define SP_TX_TRAINING_LANE0_SET_MAX_DRIVE_REACH     0x04        // bit position
166
167 #define SP_TX_TRAINING_LANE1_SET_REG                0xA4
168
169
170 #define SSC_CTRL_REG1                                    0xA7
171 #define SPREAD_AMP                                               0x10//bit 4
172 #define MODULATION_FREQ                                  0x01//bit 0
173
174
175 #define SP_TX_LINK_TRAINING_CTRL_REG                0xA8
176 #define SP_TX_LINK_TRAINING_CTRL_EN                 0x01        // bit position
177
178
179 #define SP_TX_DEBUG_REG1                                                        0xB0
180 #define SP_TX_DEBUG_HPD_POLLING_DET                                             0x40//bit position
181 #define SP_TX_DEBUG_HPD_POLLING_EN                                              0x20//bit position
182 #define SP_TX_DEBUG_PLL_LOCK                                            0x10//bit position
183
184
185 #define SP_TX_LINK_DEBUG_REG                        0xB8
186 #define SP_TX_LINK_DEBUG_INSERT_ER                  0x02        // bit position
187 #define SP_TX_LINK_DEBUG_PRBS31_EN                  0x01        // bit position
188
189 #define SP_TX_SINK_COUNT_REG                0xB9
190
191 #define SP_TX_LINK_STATUS_REG1                               0xBB
192
193 #define SP_TX_SINK_STATUS_REG                                   0xBE
194 #define SP_TX_SINK_STATUS_SINK_STATUS_1                 0x02        // bit position
195 #define SP_TX_SINK_STATUS_SINK_STATUS_0                 0x01        // bit position
196
197
198 //#define SP_TX_LINK_TEST_COUNT                     0xC0
199
200
201 #define SP_TX_PLL_CTRL_REG                                                                                      0xC7    
202 #define SP_TX_PLL_CTRL_PLL_PD                                                           0x80        // bit position
203 #define SP_TX_PLL_CTRL_PLL_RESET                                                0x40        // bit position 
204 //#define SP_TX_PLL_CTRL_CPREG_BLEED                                            0x08        // bit position 
205
206 #define SP_TX_ANALOG_POWER_DOWN_REG                                     0xC8
207 #define SP_TX_ANALOG_POWER_DOWN_MACRO_PD                0x20        // bit position 
208 #define SP_TX_ANALOG_POWER_DOWN_AUX_PD                          0x10        // bit position 
209 //#define SP_TX_ANALOG_POWER_DOWN_CH3_PD                                0x08        // bit position 
210 //#define SP_TX_ANALOG_POWER_DOWN_CH2_PD                                0x04        // bit position 
211 #define SP_TX_ANALOG_POWER_DOWN_CH1_PD                          0x02        // bit position 
212 #define SP_TX_ANALOG_POWER_DOWN_CH0_PD                          0x01        // bit position 
213
214
215 #define SP_TX_ANALOG_TEST_REG                                                           0xC9
216 #define SP_TX_ANALOG_TEST_MACRO_RST                                             0x20       // bit position 
217 #define SP_TX_ANALOG_TEST_PLL_TEST                                              0x10       // bit position 
218 #define SP_TX_ANALOG_TEST_CH3_TEST                                              0x08       // bit position 
219 #define SP_TX_ANALOG_TEST_CH2_TEST                                              0x04       // bit position 
220 #define SP_TX_ANALOG_TEST_CH1_TEST                                              0x02       // bit position 
221 #define SP_TX_ANALOG_TEST_CH0_TEST                                              0x01       // bit position 
222
223 #define SP_TX_GNS_CTRL_REG                                                                              0xCD
224 #define SP_EQ_LOOP_CNT                                                                                  0x40//bit position
225 #define SP_TX_VIDEO_MAP_CTRL                                                                0x02       // bit position 
226 #define SP_TX_RS_CTRL                                                                           0x01       // bit position 
227
228 #define SP_TX_DOWN_SPREADING_CTRL1                                               0xD0   //guochuncheng
229 #define SP_TX_DOWN_SPREADING_CTRL2                                               0xD1
230 #define SP_TX_DOWN_SPREADING_CTRL3                                               0xD2
231 #define SP_TX_SSC_D_CTRL                                                             0x40       //bit position
232 #define SP_TX_FS_CTRL_TH_CTRL                                                   0x20       //bit position
233
234 #define SP_TX_M_CALCU_CTRL                                                                                              0xD9
235 #define M_GEN_CLK_SEL                                                                                                   0x01//bit 0
236
237
238 #define SP_TX_EXTRA_ADDR_REG                                                                                    0xCE
239 #define SP_TX_I2C_STRETCH_CTRL_REG                                                              0xDB
240 #define SP_TX_AUX_STATUS                                                                                        0xE0
241 #define SP_TX_DEFER_CTRL_REG                                                                                    0xE2
242 #define SP_TXL_DEFER_CTRL_EN                                                                           0x80       // bit position 
243
244 #define SP_TX_BUF_DATA_COUNT_REG                                                                                        0xE4
245 #define SP_TX_AUX_CTRL_REG                                                                                              0xE5
246 #define SP_TX_MOT_BIT                                                                                                   0x04//bit 2
247
248 #define SP_TX_AUX_ADDR_7_0_REG                                                                                  0xE6
249 #define SP_TX_AUX_ADDR_15_8_REG                                                                                 0xE7
250 #define SP_TX_AUX_ADDR_19_16_REG                                                                                0xE8
251
252 #define SP_TX_AUX_CTRL_REG2                                                 0xE9
253 #define SP_TX_ADDR_ONLY_BIT                                                                                                     0x02//bit 1
254
255 #define SP_TX_BUF_DATA_0_REG                          0xf0
256 #define SP_TX_BUF_DATA_1_REG                          0xf1
257 #define SP_TX_BUF_DATA_2_REG                          0xf2
258 #define SP_TX_BUF_DATA_3_REG                          0xf3
259 #define SP_TX_BUF_DATA_4_REG                          0xf4
260 #define SP_TX_BUF_DATA_5_REG                          0xf5
261 #define SP_TX_BUF_DATA_6_REG                          0xf6
262 #define SP_TX_BUF_DATA_7_REG                          0xf7
263 #define SP_TX_BUF_DATA_8_REG                          0xf8
264 #define SP_TX_BUF_DATA_9_REG                          0xf9
265 #define SP_TX_BUF_DATA_10_REG                         0xfa
266 #define SP_TX_BUF_DATA_11_REG                         0xfb
267 #define SP_TX_BUF_DATA_12_REG                         0xfc
268 #define SP_TX_BUF_DATA_13_REG                         0xfd
269 #define SP_TX_BUF_DATA_14_REG                         0xfe
270 #define SP_TX_BUF_DATA_15_REG                         0xff
271
272 //End for Address 0x70 or 0x78
273
274 /***************************************************************/
275 //  DEV_ADDR = 0x72 or 0x76, System control registers
276 #define SP_TX_VND_IDL_REG               0x00
277 #define SP_TX_VND_IDH_REG               0x01
278 #define SP_TX_DEV_IDL_REG               0x02
279 #define SP_TX_DEV_IDH_REG               0x03
280 #define SP_TX_DEV_REV_REG               0x04
281
282 #define SP_POWERD_CTRL_REG                              0x05
283 #define SP_POWERD_REGISTER_REG                  0x80// bit position
284 //#define SP_POWERD_MISC_REG                            0x40// bit position
285 #define SP_POWERD_IO_REG                                0x20// bit position
286 #define SP_POWERD_AUDIO_REG                             0x10// bit position
287 #define SP_POWERD_VIDEO_REG                             0x08// bit position
288 #define SP_POWERD_LINK_REG                              0x04// bit position
289 #define SP_POWERD_TOTAL_REG                             0x02// bit position
290 #define SP_MODE_SEL_REG                                 0x01// bit position
291
292 #define SP_TX_RST_CTRL_REG              0x06
293 #define SP_TX_RST_MISC_REG                              0x80    // bit position
294 #define SP_TX_RST_VIDCAP_REG                    0x40    // bit position
295 #define SP_TX_RST_VIDFIF_REG            0x20    // bit position
296 #define SP_TX_RST_AUDFIF_REG            0x10    // bit position
297 #define SP_TX_RST_AUDCAP_REG            0x08    // bit position
298 #define SP_TX_RST_HDCP_REG              0x04    // bit position
299 #define SP_TX_RST_SW_RST                0x02    // bit position
300 #define SP_TX_RST_HW_RST                0x01    // bit position
301
302 #define SP_TX_RST_CTRL2_REG                             0x07
303 #define SP_TX_RST_SSC                                   0x80//bit position
304 #define SP_TX_AC_MODE                                   0x40//bit position
305 //#define SP_TX_DDC_RST                                 0x10//bit position
306 //#define SP_TX_TMDS_BIST_RST                           0x08//bit position
307 #define SP_TX_AUX_RST                                   0x04//bit position
308 #define SP_TX_SERDES_FIFO_RST                   0x02//bit position
309 #define SP_TX_I2C_REG_RST                               0x01//bit position
310
311
312 #define SP_TX_VID_CTRL1_REG             0x08
313 #define SP_TX_VID_CTRL1_VID_EN       0x80    // bit position
314 #define SP_TX_VID_CTRL1_VID_MUTE   0x40    // bit position
315 #define SP_TX_VID_CTRL1_DE_GEN      0x20    // bit position
316 #define SP_TX_VID_CTRL1_DEMUX        0x10    // bit position
317 #define SP_TX_VID_CTRL1_IN_BIT                  0x04    // bit position
318 #define SP_TX_VID_CTRL1_DDRCTRL         0x02    // bit position
319 #define SP_TX_VID_CTRL1_EDGE                            0x01    // bit position
320
321 #define SP_TX_VID_CTRL2_REG             0x09
322 #define SP_TX_VID_CTRL1_YCBIT_SEL               0x04    // bit position
323
324 #define SP_TX_VID_CTRL3_REG             0x0A
325
326 #define SP_TX_VID_CTRL4_REG             0x0B
327 #define SP_TX_VID_CTRL4_E_SYNC_EN               0x80      //bit position
328 #define SP_TX_VID_CTRL4_EX_E_SYNC    0x40    // bit position
329 #define SP_TX_VID_CTRL4_BIST                    0x08    // bit position
330 #define SP_TX_VID_CTRL4_BIST_WIDTH   0x04        // bit position
331
332 #define SP_TX_VID_CTRL5_REG                     0x0C
333
334 #define SP_TX_VID_CTRL6_REG                     0x0D
335 #define SP_TX_VID_UPSAMPLE                                      0x02//bit position
336
337 #define SP_TX_VID_CTRL7_REG                     0x0E
338 #define SP_TX_VID_CTRL8_REG                     0x0F
339 #define SP_TX_VID_CTRL9_REG                     0x10
340
341 #define SP_TX_VID_CTRL10_REG            0x11
342 #define SP_TX_VID_CTRL10_INV_F          0x08    // bit position
343 #define SP_TX_VID_CTRL10_I_SCAN         0x04    // bit position
344 #define SP_TX_VID_CTRL10_VSYNC_POL   0x02    // bit position
345 #define SP_TX_VID_CTRL10_HSYNC_POL   0x01    // bit position
346
347 #define SP_TX_TOTAL_LINEL_REG         0x12
348 #define SP_TX_TOTAL_LINEH_REG         0x13
349 #define SP_TX_ACT_LINEL_REG           0x14
350 #define SP_TX_ACT_LINEH_REG           0x15
351 #define SP_TX_VF_PORCH_REG            0x16
352 #define SP_TX_VSYNC_CFG_REG           0x17
353 #define SP_TX_VB_PORCH_REG            0x18
354 #define SP_TX_TOTAL_PIXELL_REG        0x19
355 #define SP_TX_TOTAL_PIXELH_REG        0x1A
356 #define SP_TX_ACT_PIXELL_REG          0x1B
357 #define SP_TX_ACT_PIXELH_REG          0x1C
358 #define SP_TX_HF_PORCHL_REG           0x1D
359 #define SP_TX_HF_PORCHH_REG           0x1E
360 #define SP_TX_HSYNC_CFGL_REG          0x1F
361 #define SP_TX_HSYNC_CFGH_REG          0x20
362 #define SP_TX_HB_PORCHL_REG           0x21
363 #define SP_TX_HB_PORCHH_REG           0x22
364
365 #define SP_TX_VID_STATUS                                                0x23
366
367 #define SP_TX_TOTAL_LINE_STA_L        0x24
368 #define SP_TX_TOTAL_LINE_STA_H        0x25
369 #define SP_TX_ACT_LINE_STA_L          0x26
370 #define SP_TX_ACT_LINE_STA_H          0x27
371 #define SP_TX_V_F_PORCH_STA           0x28
372 #define SP_TX_V_SYNC_STA              0x29
373 #define SP_TX_V_B_PORCH_STA           0x2A
374 #define SP_TX_TOTAL_PIXEL_STA_L       0x2B
375 #define SP_TX_TOTAL_PIXEL_STA_H       0x2C
376 #define SP_TX_ACT_PIXEL_STA_L         0x2D
377 #define SP_TX_ACT_PIXEL_STA_H         0x2E
378 #define SP_TX_H_F_PORCH_STA_L         0x2F
379 #define SP_TX_H_F_PORCH_STA_H         0x30
380 #define SP_TX_H_SYNC_STA_L            0x31
381 #define SP_TX_H_SYNC_STA_H            0x32
382 #define SP_TX_H_B_PORCH_STA_L         0x33
383 #define SP_TX_H_B_PORCH_STA_H         0x34
384
385 #define SP_TX_Video_Interface_BIST    0x35
386
387 #define SPDIF_AUDIO_CTRL0                       0x36
388 #define SPDIF_AUDIO_CTRL0_SPDIF_IN  0x80 // bit position
389
390 #define SPDIF_AUDIO_STATUS0                     0x38
391 #define SPDIF_AUDIO_STATUS0_CLK_DET 0x80
392 #define SPDIF_AUDIO_STATUS0_AUD_DET 0x01
393
394 #define SPDIF_AUDIO_STATUS1 0x39
395
396 #define AUDIO_BIST_CTRL 0x3c
397 #define AUDIO_BIST_EN 0x01
398
399 //#define AUDIO_BIST_CHANNEL_STATUS1 0xd0
400 //#define AUDIO_BIST_CHANNEL_STATUS2 0xd1
401 //#define AUDIO_BIST_CHANNEL_STATUS3 0xd2
402 //#define AUDIO_BIST_CHANNEL_STATUS4 0xd3
403 //#define AUDIO_BIST_CHANNEL_STATUS5 0xd4
404
405 #define SP_TX_VIDEO_BIT_CTRL_0_REG                    0x40
406 #define SP_TX_VIDEO_BIT_CTRL_1_REG                    0x41
407 #define SP_TX_VIDEO_BIT_CTRL_2_REG                    0x42
408 #define SP_TX_VIDEO_BIT_CTRL_3_REG                    0x43
409 #define SP_TX_VIDEO_BIT_CTRL_4_REG                    0x44
410 #define SP_TX_VIDEO_BIT_CTRL_5_REG                    0x45
411 #define SP_TX_VIDEO_BIT_CTRL_6_REG                    0x46
412 #define SP_TX_VIDEO_BIT_CTRL_7_REG                    0x47
413 #define SP_TX_VIDEO_BIT_CTRL_8_REG                    0x48
414 #define SP_TX_VIDEO_BIT_CTRL_9_REG                    0x49
415 #define SP_TX_VIDEO_BIT_CTRL_10_REG                   0x4a
416 #define SP_TX_VIDEO_BIT_CTRL_11_REG                   0x4b
417 #define SP_TX_VIDEO_BIT_CTRL_12_REG                   0x4c
418 #define SP_TX_VIDEO_BIT_CTRL_13_REG                   0x4d
419 #define SP_TX_VIDEO_BIT_CTRL_14_REG                   0x4e
420 #define SP_TX_VIDEO_BIT_CTRL_15_REG                   0x4f
421 #define SP_TX_VIDEO_BIT_CTRL_16_REG                   0x50
422 #define SP_TX_VIDEO_BIT_CTRL_17_REG                   0x51
423 #define SP_TX_VIDEO_BIT_CTRL_18_REG                   0x52
424 #define SP_TX_VIDEO_BIT_CTRL_19_REG                   0x53
425 #define SP_TX_VIDEO_BIT_CTRL_20_REG                   0x54
426 #define SP_TX_VIDEO_BIT_CTRL_21_REG                   0x55
427 #define SP_TX_VIDEO_BIT_CTRL_22_REG                   0x56
428 #define SP_TX_VIDEO_BIT_CTRL_23_REG                   0x57
429 #define SP_TX_VIDEO_BIT_CTRL_24_REG                   0x58
430 #define SP_TX_VIDEO_BIT_CTRL_25_REG                   0x59
431 #define SP_TX_VIDEO_BIT_CTRL_26_REG                   0x5a
432 #define SP_TX_VIDEO_BIT_CTRL_27_REG                   0x5b
433 #define SP_TX_VIDEO_BIT_CTRL_28_REG                   0x5c
434 #define SP_TX_VIDEO_BIT_CTRL_29_REG                   0x5d
435 #define SP_TX_VIDEO_BIT_CTRL_30_REG                   0x5e
436 #define SP_TX_VIDEO_BIT_CTRL_31_REG                   0x5f
437 #define SP_TX_VIDEO_BIT_CTRL_32_REG                   0x60
438 #define SP_TX_VIDEO_BIT_CTRL_33_REG                   0x61
439 #define SP_TX_VIDEO_BIT_CTRL_34_REG                   0x62
440 #define SP_TX_VIDEO_BIT_CTRL_35_REG                   0x63
441 #define SP_TX_VIDEO_BIT_CTRL_36_REG                   0x64
442 #define SP_TX_VIDEO_BIT_CTRL_37_REG                   0x65
443 #define SP_TX_VIDEO_BIT_CTRL_38_REG                   0x66
444 #define SP_TX_VIDEO_BIT_CTRL_39_REG                   0x67
445 #define SP_TX_VIDEO_BIT_CTRL_40_REG                   0x68
446 #define SP_TX_VIDEO_BIT_CTRL_41_REG                   0x69
447 #define SP_TX_VIDEO_BIT_CTRL_42_REG                   0x6a
448 #define SP_TX_VIDEO_BIT_CTRL_43_REG                   0x6b
449 #define SP_TX_VIDEO_BIT_CTRL_44_REG                   0x6c
450 #define SP_TX_VIDEO_BIT_CTRL_45_REG                   0x6d
451 #define SP_TX_VIDEO_BIT_CTRL_46_REG                   0x6e
452 #define SP_TX_VIDEO_BIT_CTRL_47_REG                   0x6f
453
454 //AVI info frame
455 #define SP_TX_AVI_TYPE              0x70
456 #define SP_TX_AVI_VER               0x71
457 #define SP_TX_AVI_LEN               0x72
458 #define SP_TX_AVI_DB0                0x73
459 #define SP_TX_AVI_DB1               0x74
460 #define SP_TX_AVI_DB2               0x75
461 #define SP_TX_AVI_DB3               0x76
462 #define SP_TX_AVI_DB4               0x77
463 #define SP_TX_AVI_DB5               0x78
464 #define SP_TX_AVI_DB6               0x79
465 #define SP_TX_AVI_DB7               0x7A
466 #define SP_TX_AVI_DB8               0x7B
467 #define SP_TX_AVI_DB9               0x7C
468 #define SP_TX_AVI_DB10              0x7D
469 #define SP_TX_AVI_DB11              0x7E
470 #define SP_TX_AVI_DB12              0x7F
471 #define SP_TX_AVI_DB13              0x80
472 #define SP_TX_AVI_DB14              0x81
473 #define SP_TX_AVI_DB15              0x82
474
475 //Audio info frame
476 #define SP_TX_AUD_TYPE                   0x83
477 #define SP_TX_AUD_VER                    0x84
478 #define SP_TX_AUD_LEN                    0x85
479 #define SP_TX_AUD_DB0                    0x86
480 #define SP_TX_AUD_DB1                    0x87
481 #define SP_TX_AUD_DB2                    0x88
482 #define SP_TX_AUD_DB3                    0x89
483 #define SP_TX_AUD_DB4                    0x8A
484 #define SP_TX_AUD_DB5                    0x8B
485 #define SP_TX_AUD_DB6                    0x8C
486 #define SP_TX_AUD_DB7                    0x8D
487 #define SP_TX_AUD_DB8                    0x8E
488 #define SP_TX_AUD_DB9                    0x8F
489 #define SP_TX_AUD_DB10                   0x90
490
491 //SPD info frame
492 #define SP_TX_SPD_TYPE                0x91
493 #define SP_TX_SPD_VER                 0x92
494 #define SP_TX_SPD_LEN                 0x93
495 #define SP_TX_SPD_DATA0         0x94
496 #define SP_TX_SPD_DATA1               0x95
497 #define SP_TX_SPD_DATA2               0x96
498 #define SP_TX_SPD_DATA3               0x97
499 #define SP_TX_SPD_DATA4               0x98
500 #define SP_TX_SPD_DATA5               0x99
501 #define SP_TX_SPD_DATA6               0x9A
502 #define SP_TX_SPD_DATA7               0x9B
503 #define SP_TX_SPD_DATA8               0x9C
504 #define SP_TX_SPD_DATA9               0x9D
505 #define SP_TX_SPD_DATA10              0x9E
506 #define SP_TX_SPD_DATA11              0x9F
507 #define SP_TX_SPD_DATA12              0xA0
508 #define SP_TX_SPD_DATA13              0xA1
509 #define SP_TX_SPD_DATA14              0xA2
510 #define SP_TX_SPD_DATA15              0xA3
511 #define SP_TX_SPD_DATA16              0xA4
512 #define SP_TX_SPD_DATA17              0xA5
513 #define SP_TX_SPD_DATA18              0xA6
514 #define SP_TX_SPD_DATA19              0xA7
515 #define SP_TX_SPD_DATA20              0xA8
516 #define SP_TX_SPD_DATA21              0xA9
517 #define SP_TX_SPD_DATA22              0xAA
518 #define SP_TX_SPD_DATA23              0xAB
519 #define SP_TX_SPD_DATA24              0xAC
520 #define SP_TX_SPD_DATA25              0xAD
521 #define SP_TX_SPD_DATA26              0xAE
522 #define SP_TX_SPD_DATA27              0xAF
523
524 //Mpeg source info frame
525 #define SP_TX_MPEG_TYPE               0xB0
526 #define SP_TX_MPEG_VER                0xB1
527 #define SP_TX_MPEG_LEN                0xB2
528 #define SP_TX_MPEG_DATA0              0xB3
529 #define SP_TX_MPEG_DATA1              0xB4
530 #define SP_TX_MPEG_DATA2              0xB5
531 #define SP_TX_MPEG_DATA3              0xB6
532 #define SP_TX_MPEG_DATA4              0xB7
533 #define SP_TX_MPEG_DATA5              0xB8
534 #define SP_TX_MPEG_DATA6              0xB9
535 #define SP_TX_MPEG_DATA7              0xBA
536 #define SP_TX_MPEG_DATA8              0xBB
537 #define SP_TX_MPEG_DATA9              0xBC
538 #define SP_TX_MPEG_DATA10             0xBD
539 #define SP_TX_MPEG_DATA11            0xBE
540 #define SP_TX_MPEG_DATA12            0xBF
541 #define SP_TX_MPEG_DATA13            0xC0
542 #define SP_TX_MPEG_DATA14            0xC1
543 #define SP_TX_MPEG_DATA15            0xC2
544 #define SP_TX_MPEG_DATA16            0xC3
545 #define SP_TX_MPEG_DATA17            0xC4
546 #define SP_TX_MPEG_DATA18            0xC5
547 #define SP_TX_MPEG_DATA19            0xC6
548 #define SP_TX_MPEG_DATA20            0xC7
549 #define SP_TX_MPEG_DATA21            0xC8
550 #define SP_TX_MPEG_DATA22            0xC9
551 #define SP_TX_MPEG_DATA23            0xCA
552 #define SP_TX_MPEG_DATA24            0xCB
553 #define SP_TX_MPEG_DATA25            0xCC
554 #define SP_TX_MPEG_DATA26            0xCD
555 #define SP_TX_MPEG_DATA27            0xCE
556
557 //#define GNSS_CTRL_REG                         0xCD
558 //#define ENABLE_SSC_FILTER                     0x80//bit 
559
560 //#define SSC_D_VALUE                                    0xD0
561 //#define SSC_CTRL_REG2                                  0xD1
562
563 #define ANALOG_DEBUG_REG1                       0xDC
564 #define ANALOG_SEL_BG                           0x40//bit 4
565 #define ANALOG_SWING_A_30PER            0x08//bit 3
566
567 #define ANALOG_DEBUG_REG2                       0xDD
568 #define ANALOG_24M_SEL                          0x08//bit 3
569 //#define ANALOG_FILTER_ENABLED         0x10//bit 4
570
571
572 #define ANALOG_DEBUG_REG3                       0xDE
573
574 #define PLL_FILTER_CTRL1                        0xDF
575 #define PD_RING_OSC                                     0x40//bit 6
576
577 #define PLL_FILTER_CTRL2                        0xE0
578 #define PLL_FILTER_CTRL3                        0xE1
579 #define PLL_FILTER_CTRL4                        0xE2
580 #define PLL_FILTER_CTRL5                        0xE3
581 #define PLL_FILTER_CTRL6                        0xE4
582
583 #define SP_TX_I2S_CTRL                  0xE6
584 #define SP_TX_I2S_FMT                   0xE7
585 #define SP_TX_I2S_CH_Status1                    0xD0
586 #define SP_TX_I2S_CH_Status2                    0xD1
587 #define SP_TX_I2S_CH_Status3                    0xD2
588 #define SP_TX_I2S_CH_Status4                    0xD3
589 #define SP_TX_I2S_CH_Status5                    0xD4
590
591 //interrupt
592 #define SP_COMMON_INT_STATUS1     0xF1
593 #define SP_COMMON_INT1_PLL_LOCK_CHG     0x40//bit position
594 #define SP_COMMON_INT1_VIDEO_FORMAT_CHG 0x08//bit position
595 #define SP_COMMON_INT1_AUDIO_CLK_CHG    0x04//bit position
596 #define SP_COMMON_INT1_VIDEO_CLOCK_CHG  0x02//bit position
597
598
599 #define SP_COMMON_INT_STATUS2     0xF2
600 #define SP_COMMON_INT2_AUTHCHG    0x02 //bit position
601 #define SP_COMMON_INT2_AUTHDONE   0x01 //bit position
602
603 #define SP_COMMON_INT_STATUS3     0xF3
604 #define SP_COMMON_INT3_AFIFO_UNDER      0x80//bit position
605 #define SP_COMMON_INT3_AFIFO_OVER       0x40//bit position
606
607 #define SP_COMMON_INT_STATUS4       0xF4
608 #define SP_COMMON_INT4_PLUG                0x01   // bit position
609 #define SP_COMMON_INT4_ESYNC_ERR          0x10   // bit position
610 #define SP_COMMON_INT4_HPDLOST          0x02   //bit position
611 #define SP_COMMON_INT4_HPD_CHANGE   0x04   //bit position
612
613
614 #define SP_TX_INT_STATUS1                 0xF7
615 #define SP_TX_INT_STATUS1_HPD     0x40 //bit position
616 #define SP_TX_INT_STATUS1_TRAINING_Finish       0x20   // bit position
617 #define SP_TX_INT_STATUS1_POLLING_ERR        0x10   // bit position
618
619 #define SP_TX_INT_SINK_CHG                0x08//bit position
620
621 //interrupt mask
622 #define SP_COMMON_INT_MASK1                       0xF8
623 #define SP_COMMON_INT_MASK2                       0xF9
624 #define SP_COMMON_INT_MASK3                       0xFA
625 #define SP_COMMON_INT_MASK4                       0xFB
626 #define SP_INT_MASK                                                                             0xFE
627 #define SP_TX_INT_CTRL_REG                      0xFF
628 //End for dev_addr 0x72 or 0x76
629
630 /***************************************************************/
631 /***************************************************************/
632
633 //DPCD regs
634 #define DPCD_DPCD_REV                                                0x00
635 #define DPCD_MAX_LINK_RATE                                      0x01
636 #define DPCD_MAX_LANE_COUNT                                   0x02
637 #define DPCD_MAX_DOWNSPREAD                                  0x03
638 #define DPCD_NORP                                                        0x04
639 #define DPCD_DOWNSTREAMPORT_PRESENT                  0x05
640
641 #define DPCD_RECEIVE_PORT0_CAP_0                        0x08
642 #define DPCD_RECEIVE_PORT0_CAP_1                        0x09
643 #define DPCD_RECEIVE_PORT0_CAP_2                        0x0a
644 #define DPCD_RECEIVE_PORT0_CAP_3                        0x0b
645
646 #define DPCD_LINK_BW_SET                                      0x00
647 #define DPCD_LANE_COUNT_SET                                0x01
648 #define DPCD_TRAINING_PATTERN_SET                     0x02
649 #define DPCD_TRAINNIG_LANE0_SET                         0x03
650 #define DPCD_TRAINNIG_LANE1_SET                         0x04
651 #define DPCD_TRAINNIG_LANE2_SET                         0x05
652 #define DPCD_TRAINNIG_LANE3_SET                         0x06
653 #define DPCD_DOWNSPREAD_CTRL                            0x07
654
655 #define DPCD_SINK_COUNT                                          0x00
656 #define DPCD_DEVICE_SERVICE_IRQ_VECTOR              0x01
657 #define DPCD_LANE0_1_STATUS                                   0x02
658 #define DPCD_LANE2_3_STATUS                                   0x03
659 #define DPCD_LANE_ALIGN_STATUS_UPDATED            0x04
660 #define DPCD_SINK_STATUS                                          0x05
661 #define DPCD_ADJUST_REQUEST_LANE0_1                     0x06
662 #define DPCD_ADJUST_REQUEST_LANE2_3                     0x07
663 #define DPCD_TRAINING_SCORE_LANE0                       0x08
664 #define DPCD_TRAINING_SCORE_LANE1                       0x09
665 #define DPCD_TRAINING_SCORE_LANE2                       0x0a
666 #define DPCD_TRAINING_SCORE_LANE3                       0x0b
667
668 #define DPCD_TEST_REQUEST                               0x18
669 #define DPCD_TEST_LINK_RATE                             0x19
670
671 #define DPCD_TEST_LANE_COUNT                            0x20
672
673 #define DPCD_TEST_Response                              0x60
674 #define TEST_ACK                                                  0x01
675 #define DPCD_TEST_EDID_Checksum_Write                   0x04//bit position
676
677 #define DPCD_TEST_EDID_Checksum                         0x61
678
679
680 #define DPCD_SPECIFIC_INTERRUPT                               0x10
681 #define DPCD_USER_COMM1                                             0x22//define for downstream HDMI Rx sense detection
682
683
684 struct  anx6345_platform_data {
685         unsigned int dvdd33_en_pin;
686         int          dvdd33_en_val;
687         unsigned int dvdd18_en_pin;
688         int          dvdd18_en_val;
689         unsigned int edp_rst_pin;
690         int (*power_ctl)(void);
691 };
692
693 struct edp_anx6345 {
694         struct i2c_client *client;
695         struct anx6345_platform_data *pdata;
696         rk_screen screen;
697         struct dentry *debugfs_dir;
698 #ifdef CONFIG_HAS_EARLYSUSPEND
699         struct early_suspend early_suspend;
700 #endif 
701         int (*edp_anx_init)(struct i2c_client *client);
702 };
703
704 #endif