5 #ifndef CPU_SAMSUNG_EXYNOS5250_DP_H
6 #define CPU_SAMSUNG_EXYNOS5250_DP_H
156 #define RESET_DP_TX (1 << 0)
159 #define MASTER_VID_FUNC_EN_N (1 << 7)
160 #define SLAVE_VID_FUNC_EN_N (1 << 5)
161 #define AUD_FIFO_FUNC_EN_N (1 << 4)
162 #define AUD_FUNC_EN_N (1 << 3)
163 #define HDCP_FUNC_EN_N (1 << 2)
164 #define CRC_FUNC_EN_N (1 << 1)
165 #define SW_FUNC_EN_N (1 << 0)
168 #define SSC_FUNC_EN_N (1 << 7)
169 #define AUX_FUNC_EN_N (1 << 2)
170 #define SERDES_FIFO_FUNC_EN_N (1 << 1)
171 #define LS_CLK_DOMAIN_FUNC_EN_N (1 << 0)
174 #define VIDEO_EN (1 << 7)
175 #define HDCP_VIDEO_MUTE (1 << 6)
178 #define IN_D_RANGE_MASK (1 << 7)
179 #define IN_D_RANGE_SHIFT (7)
180 #define IN_D_RANGE_CEA (1 << 7)
181 #define IN_D_RANGE_VESA (0 << 7)
182 #define IN_BPC_MASK (7 << 4)
183 #define IN_BPC_SHIFT (4)
184 #define IN_BPC_12_BITS (3 << 4)
185 #define IN_BPC_10_BITS (2 << 4)
186 #define IN_BPC_8_BITS (1 << 4)
187 #define IN_BPC_6_BITS (0 << 4)
188 #define IN_COLOR_F_MASK (3 << 0)
189 #define IN_COLOR_F_SHIFT (0)
190 #define IN_COLOR_F_YCBCR444 (2 << 0)
191 #define IN_COLOR_F_YCBCR422 (1 << 0)
192 #define IN_COLOR_F_RGB (0 << 0)
195 #define IN_YC_COEFFI_MASK (1 << 7)
196 #define IN_YC_COEFFI_SHIFT (7)
197 #define IN_YC_COEFFI_ITU709 (1 << 7)
198 #define IN_YC_COEFFI_ITU601 (0 << 7)
199 #define VID_CHK_UPDATE_TYPE_MASK (1 << 4)
200 #define VID_CHK_UPDATE_TYPE_SHIFT (4)
201 #define VID_CHK_UPDATE_TYPE_1 (1 << 4)
202 #define VID_CHK_UPDATE_TYPE_0 (0 << 4)
205 #define FORMAT_SEL (1 << 4)
206 #define INTERACE_SCAN_CFG (1 << 2)
207 #define VSYNC_POLARITY_CFG (1 << 1)
208 #define HSYNC_POLARITY_CFG (1 << 0)
211 #define LANE3_MAP_LOGIC_LANE_0 (0 << 6)
212 #define LANE3_MAP_LOGIC_LANE_1 (1 << 6)
213 #define LANE3_MAP_LOGIC_LANE_2 (2 << 6)
214 #define LANE3_MAP_LOGIC_LANE_3 (3 << 6)
215 #define LANE2_MAP_LOGIC_LANE_0 (0 << 4)
216 #define LANE2_MAP_LOGIC_LANE_1 (1 << 4)
217 #define LANE2_MAP_LOGIC_LANE_2 (2 << 4)
218 #define LANE2_MAP_LOGIC_LANE_3 (3 << 4)
219 #define LANE1_MAP_LOGIC_LANE_0 (0 << 2)
220 #define LANE1_MAP_LOGIC_LANE_1 (1 << 2)
221 #define LANE1_MAP_LOGIC_LANE_2 (2 << 2)
222 #define LANE1_MAP_LOGIC_LANE_3 (3 << 2)
223 #define LANE0_MAP_LOGIC_LANE_0 (0 << 0)
224 #define LANE0_MAP_LOGIC_LANE_1 (1 << 0)
225 #define LANE0_MAP_LOGIC_LANE_2 (2 << 0)
226 #define LANE0_MAP_LOGIC_LANE_3 (3 << 0)
229 #define AUX_BIT_PERIOD_SHIFT 8
230 #define AUX_BIT_PERIOD_MASK 7
232 #define AUX_HW_RETRY_INTERVAL_SHIFT 3
233 #define AUX_HW_RETRY_INTERVAL_600_US 0
234 #define AUX_HW_RETRY_INTERVAL_800_US 1
235 #define AUX_HW_RETRY_INTERVAL_1000_US 2
236 #define AUX_HW_RETRY_INTERVAL_1800_US 3
237 #define AUX_HW_RETRY_COUNT_SHIFT 0
238 #define AUX_HW_RETRY_COUNT_MASK 7
241 #define VSYNC_DET (1 << 7)
242 #define PLL_LOCK_CHG (1 << 6)
243 #define SPDIF_ERR (1 << 5)
244 #define SPDIF_UNSTBL (1 << 4)
245 #define VID_FORMAT_CHG (1 << 3)
246 #define AUD_CLK_CHG (1 << 2)
247 #define VID_CLK_CHG (1 << 1)
248 #define SW_INT (1 << 0)
251 #define ENC_EN_CHG (1 << 6)
252 #define HW_BKSV_RDY (1 << 3)
253 #define HW_SHA_DONE (1 << 2)
254 #define HW_AUTH_STATE_CHG (1 << 1)
255 #define HW_AUTH_DONE (1 << 0)
258 #define AFIFO_UNDER (1 << 7)
259 #define AFIFO_OVER (1 << 6)
260 #define R0_CHK_FLAG (1 << 5)
263 #define PSR_ACTIVE (1 << 7)
264 #define PSR_INACTIVE (1 << 6)
265 #define SPDIF_BI_PHASE_ERR (1 << 5)
266 #define HOTPLUG_CHG (1 << 2)
267 #define HPD_LOST (1 << 1)
268 #define PLUG (1 << 0)
271 #define INT_HPD (1 << 6)
272 #define HW_TRAINING_FINISH (1 << 5)
273 #define RPLY_RECEIV (1 << 1)
274 #define AUX_ERR (1 << 0)
277 #define INT_POL0 (1 << 0)
278 #define INT_POL1 (1 << 1)
279 #define SOFT_INT_CTRL (1 << 2)
282 #define DET_STA (1 << 2)
283 #define FORCE_DET (1 << 1)
284 #define DET_CTRL (1 << 0)
287 #define CHA_CRI_SHIFT 4
288 #define CHA_CRI_MASK 0xf
289 #define CHA_STA (1 << 2)
290 #define FORCE_CHA (1 << 1)
291 #define CHA_CTRL (1 << 0)
294 #define HPD_STATUS (1 << 6)
295 #define F_HPD (1 << 5)
296 #define HPD_CTRL (1 << 4)
297 #define HDCP_RDY (1 << 3)
298 #define STRM_VALID (1 << 2)
299 #define F_VALID (1 << 1)
300 #define VALID_CTRL (1 << 0)
303 #define FIX_M_AUD (1 << 4)
304 #define ENHANCED (1 << 3)
305 #define FIX_M_VID (1 << 2)
306 #define M_VID_UPDATE_CTRL (3 << 0)
309 #define SCRAMBLER_TYPE (1 << 9)
310 #define HW_LINK_TRAINING_PATTERN (1 << 8)
311 #define SCRAMBLING_DISABLE (1 << 5)
312 #define SCRAMBLING_ENABLE (0 << 5)
313 #define LINK_QUAL_PATTERN_SET_MASK (3 << 2)
314 #define LINK_QUAL_PATTERN_SET_PRBS7 (3 << 2)
315 #define LINK_QUAL_PATTERN_SET_D10_2 (1 << 2)
316 #define LINK_QUAL_PATTERN_SET_DISABLE (0 << 2)
317 #define SW_TRAINING_PATTERN_SET_MASK (3 << 0)
318 #define SW_TRAINING_PATTERN_SET_PTN2 (2 << 0)
319 #define SW_TRAINING_PATTERN_SET_PTN1 (1 << 0)
320 #define SW_TRAINING_PATTERN_SET_NORMAL (0 << 0)
323 #define PRE_EMPHASIS_SET_SHIFT (3)
326 #define PLL_LOCK (1 << 4)
327 #define F_PLL_LOCK (1 << 3)
328 #define PLL_LOCK_CTRL (1 << 2)
329 #define PN_INV (1 << 0)
332 #define M_VID_0_VALUE_SHIFT 0
333 #define M_VID_1_VALUE_SHIFT 8
334 #define M_VID_2_VALUE_SHIFT 16
337 #define N_VID_0_VALUE_SHIFT 0
338 #define N_VID_1_VALUE_SHIFT 8
339 #define N_VID_2_VALUE_SHIFT 16
342 #define DP_PLL_PD (1 << 7)
343 #define DP_PLL_RESET (1 << 6)
344 #define DP_PLL_LOOP_BIT_DEFAULT (1 << 4)
345 #define DP_PLL_REF_BIT_1_1250V (5 << 0)
346 #define DP_PLL_REF_BIT_1_2500V (7 << 0)
349 #define DP_PHY_PD (1 << 5)
350 #define AUX_PD (1 << 4)
351 #define CH3_PD (1 << 3)
352 #define CH2_PD (1 << 2)
353 #define CH1_PD (1 << 1)
354 #define CH0_PD (1 << 0)
357 #define MACRO_RST (1 << 5)
358 #define CH1_TEST (1 << 1)
359 #define CH0_TEST (1 << 0)
362 #define AUX_BUSY (1 << 4)
363 #define AUX_STATUS_MASK (0xf << 0)
366 #define DEFER_CTRL_EN (1 << 7)
367 #define DEFER_COUNT_SHIFT 0
368 #define DEFER_COUNT_MASK 0x7f
371 #define AUX_RX_COMM_I2C_DEFER (2 << 2)
372 #define AUX_RX_COMM_AUX_DEFER (2 << 0)
375 #define BUF_CLR (1 << 7)
378 #define MAX_AUX_RETRY_COUNT 10
381 #define AUX_LENGTH_SHIFT 4
382 #define AUX_LENGTH_MASK 0xf
384 #define AUX_TX_COMM_MASK (0xf << 0)
385 #define AUX_TX_COMM_DP_TRANSACTION (1 << 3)
386 #define AUX_TX_COMM_I2C_TRANSACTION (0 << 3)
387 #define AUX_TX_COMM_MOT (1 << 2)
388 #define AUX_TX_COMM_WRITE (0 << 0)
389 #define AUX_TX_COMM_READ (1 << 0)
392 #define AUX_ADDR_7_0_SHIFT 0
393 #define AUX_ADDR_7_0_MASK 0xff
396 #define AUX_ADDR_15_8_SHIFT 8
397 #define AUX_ADDR_15_8_MASK 0xff
400 #define AUX_ADDR_19_16_SHIFT 16
401 #define AUX_ADDR_19_16_MASK 0x0f
404 #define ADDR_ONLY (1 << 1)
405 #define AUX_EN (1 << 0)
408 #define AUDIO_MODE_SPDIF_MODE (1 << 8)
409 #define AUDIO_MODE_MASTER_MODE (0 << 8)
410 #define MASTER_VIDEO_INTERLACE_EN (1 << 4)
411 #define VIDEO_MASTER_CLK_SEL (1 << 2)
412 #define VIDEO_MASTER_MODE_EN (1 << 1)
413 #define VIDEO_MODE_MASK (1 << 0)
414 #define VIDEO_MODE_SLAVE_MODE (1 << 0)
415 #define VIDEO_MODE_MASTER_MODE (0 << 0)
417 #define HW_TRAINING_ERROR_CODE (7<<4)
418 #define HW_TRAINING_EN (1<<0)
421 #define I2C_EDID_DEVICE_ADDR 0x50
422 #define I2C_E_EDID_DEVICE_ADDR 0x30
424 #define EDID_BLOCK_LENGTH 0x80
425 #define EDID_HEADER_PATTERN 0x00
426 #define EDID_EXTENSION_FLAG 0x7e
427 #define EDID_CHECKSUM 0x7f
430 #define DPCD_ADDR_DPCD_REV 0x0000
431 #define DPCD_ADDR_MAX_LINK_RATE 0x0001
432 #define DPCD_ADDR_MAX_LANE_COUNT 0x0002
433 #define DPCD_ADDR_LINK_BW_SET 0x0100
434 #define DPCD_ADDR_LANE_COUNT_SET 0x0101
435 #define DPCD_ADDR_TRAINING_PATTERN_SET 0x0102
436 #define DPCD_ADDR_TRAINING_LANE0_SET 0x0103
437 #define DPCD_ADDR_LANE0_1_STATUS 0x0202
438 #define DPCD_ADDR_LANE_ALIGN__STATUS_UPDATED 0x0204
439 #define DPCD_ADDR_ADJUST_REQUEST_LANE0_1 0x0206
440 #define DPCD_ADDR_ADJUST_REQUEST_LANE2_3 0x0207
441 #define DPCD_ADDR_TEST_REQUEST 0x0218
442 #define DPCD_ADDR_TEST_RESPONSE 0x0260
443 #define DPCD_ADDR_TEST_EDID_CHECKSUM 0x0261
444 #define DPCD_ADDR_SINK_POWER_STATE 0x0600
447 #define DPCD_MAX_LANE_COUNT_MASK 0x1f
450 #define DPCD_ENHANCED_FRAME_EN (1 << 7)
451 #define DPCD_LANE_COUNT_SET_MASK 0x1f
454 #define DPCD_SCRAMBLING_DISABLED (1 << 5)
455 #define DPCD_SCRAMBLING_ENABLED (0 << 5)
456 #define DPCD_TRAINING_PATTERN_2 (2 << 0)
457 #define DPCD_TRAINING_PATTERN_1 (1 << 0)
458 #define DPCD_TRAINING_PATTERN_DISABLED (0 << 0)
461 #define DPCD_LANE_SYMBOL_LOCKED (1 << 2)
462 #define DPCD_LANE_CHANNEL_EQ_DONE (1 << 1)
463 #define DPCD_LANE_CR_DONE (1 << 0)
464 #define DPCD_CHANNEL_EQ_BITS (DPCD_LANE_CR_DONE | \
465 DPCD_LANE_CHANNEL_EQ_DONE | \
466 DPCD_LANE_SYMBOL_LOCKED)
469 #define DPCD_LINK_STATUS_UPDATED (1 << 7)
470 #define DPCD_DOWNSTREAM_PORT_STATUS_CHANGED (1 << 6)
471 #define DPCD_INTERLANE_ALIGN_DONE (1 << 0)
474 #define DPCD_TEST_EDID_READ (1 << 2)
477 #define DPCD_TEST_EDID_CHECKSUM_WRITE (1 << 2)
480 #define DPCD_SET_POWER_STATE_D0 (1 << 0)
481 #define DPCD_SET_POWER_STATE_D4 (2 << 0)
static struct exynos5_dp *const exynos_dp1
void clock_init_dp_clock(void)
check_member(exynos5_dp, soc_general_ctl, 0x800)
static struct exynos5_dp *const exynos_dp0