Lines Matching refs:reg
37 static void analogix_dp_write(struct analogix_dp_device *dp, u32 reg, u32 val) in analogix_dp_write() argument
40 writel(val, dp->reg_base + reg); in analogix_dp_write()
41 writel(val, dp->reg_base + reg); in analogix_dp_write()
44 static u32 analogix_dp_read(struct analogix_dp_device *dp, u32 reg) in analogix_dp_read() argument
46 readl(dp->reg_base + reg); in analogix_dp_read()
48 return readl(dp->reg_base + reg); in analogix_dp_read()
53 u32 reg; in analogix_dp_enable_video_mute() local
56 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_1); in analogix_dp_enable_video_mute()
57 reg |= HDCP_VIDEO_MUTE; in analogix_dp_enable_video_mute()
58 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_1, reg); in analogix_dp_enable_video_mute()
60 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_1); in analogix_dp_enable_video_mute()
61 reg &= ~HDCP_VIDEO_MUTE; in analogix_dp_enable_video_mute()
62 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_1, reg); in analogix_dp_enable_video_mute()
68 u32 reg; in analogix_dp_stop_video() local
70 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_1); in analogix_dp_stop_video()
71 reg &= ~VIDEO_EN; in analogix_dp_stop_video()
72 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_1, reg); in analogix_dp_stop_video()
77 u32 i, reg = 0; in analogix_dp_set_lane_map() local
80 reg |= dp->lane_map[i] << (2 * i); in analogix_dp_set_lane_map()
82 analogix_dp_write(dp, ANALOGIX_DP_LANE_MAP, reg); in analogix_dp_set_lane_map()
87 u32 reg; in analogix_dp_init_analog_param() local
89 reg = TX_TERMINAL_CTRL_50_OHM; in analogix_dp_init_analog_param()
90 analogix_dp_write(dp, ANALOGIX_DP_ANALOG_CTL_1, reg); in analogix_dp_init_analog_param()
92 reg = SEL_24M | TX_DVDD_BIT_1_0625V; in analogix_dp_init_analog_param()
93 analogix_dp_write(dp, ANALOGIX_DP_ANALOG_CTL_2, reg); in analogix_dp_init_analog_param()
96 reg = REF_CLK_24M; in analogix_dp_init_analog_param()
99 reg ^= REF_CLK_MASK; in analogix_dp_init_analog_param()
101 analogix_dp_write(dp, ANALOGIX_DP_PLL_REG_1, reg); in analogix_dp_init_analog_param()
109 reg = DRIVE_DVDD_BIT_1_0625V | VCO_BIT_600_MICRO; in analogix_dp_init_analog_param()
110 analogix_dp_write(dp, ANALOGIX_DP_ANALOG_CTL_3, reg); in analogix_dp_init_analog_param()
112 reg = PD_RING_OSC | AUX_TERMINAL_CTRL_50_OHM | in analogix_dp_init_analog_param()
114 analogix_dp_write(dp, ANALOGIX_DP_PLL_FILTER_CTL_1, reg); in analogix_dp_init_analog_param()
116 reg = CH3_AMP_400_MV | CH2_AMP_400_MV | in analogix_dp_init_analog_param()
118 analogix_dp_write(dp, ANALOGIX_DP_TX_AMP_TUNING_CTL, reg); in analogix_dp_init_analog_param()
143 u32 reg; in analogix_dp_reset() local
148 reg = MASTER_VID_FUNC_EN_N | SLAVE_VID_FUNC_EN_N | in analogix_dp_reset()
151 analogix_dp_write(dp, ANALOGIX_DP_FUNC_EN_1, reg); in analogix_dp_reset()
153 reg = SSC_FUNC_EN_N | AUX_FUNC_EN_N | in analogix_dp_reset()
156 analogix_dp_write(dp, ANALOGIX_DP_FUNC_EN_2, reg); in analogix_dp_reset()
193 u32 reg; in analogix_dp_config_interrupt() local
196 reg = COMMON_INT_MASK_1; in analogix_dp_config_interrupt()
197 analogix_dp_write(dp, ANALOGIX_DP_COMMON_INT_MASK_1, reg); in analogix_dp_config_interrupt()
199 reg = COMMON_INT_MASK_2; in analogix_dp_config_interrupt()
200 analogix_dp_write(dp, ANALOGIX_DP_COMMON_INT_MASK_2, reg); in analogix_dp_config_interrupt()
202 reg = COMMON_INT_MASK_3; in analogix_dp_config_interrupt()
203 analogix_dp_write(dp, ANALOGIX_DP_COMMON_INT_MASK_3, reg); in analogix_dp_config_interrupt()
205 reg = COMMON_INT_MASK_4; in analogix_dp_config_interrupt()
206 analogix_dp_write(dp, ANALOGIX_DP_COMMON_INT_MASK_4, reg); in analogix_dp_config_interrupt()
208 reg = INT_STA_MASK; in analogix_dp_config_interrupt()
209 analogix_dp_write(dp, ANALOGIX_DP_INT_STA_MASK, reg); in analogix_dp_config_interrupt()
214 u32 reg; in analogix_dp_mute_hpd_interrupt() local
217 reg = analogix_dp_read(dp, ANALOGIX_DP_COMMON_INT_MASK_4); in analogix_dp_mute_hpd_interrupt()
218 reg &= ~COMMON_INT_MASK_4; in analogix_dp_mute_hpd_interrupt()
219 analogix_dp_write(dp, ANALOGIX_DP_COMMON_INT_MASK_4, reg); in analogix_dp_mute_hpd_interrupt()
221 reg = analogix_dp_read(dp, ANALOGIX_DP_INT_STA_MASK); in analogix_dp_mute_hpd_interrupt()
222 reg &= ~INT_STA_MASK; in analogix_dp_mute_hpd_interrupt()
223 analogix_dp_write(dp, ANALOGIX_DP_INT_STA_MASK, reg); in analogix_dp_mute_hpd_interrupt()
228 u32 reg; in analogix_dp_unmute_hpd_interrupt() local
231 reg = COMMON_INT_MASK_4; in analogix_dp_unmute_hpd_interrupt()
232 analogix_dp_write(dp, ANALOGIX_DP_COMMON_INT_MASK_4, reg); in analogix_dp_unmute_hpd_interrupt()
234 reg = INT_STA_MASK; in analogix_dp_unmute_hpd_interrupt()
235 analogix_dp_write(dp, ANALOGIX_DP_INT_STA_MASK, reg); in analogix_dp_unmute_hpd_interrupt()
240 u32 reg; in analogix_dp_get_pll_lock_status() local
242 reg = analogix_dp_read(dp, ANALOGIX_DP_DEBUG_CTL); in analogix_dp_get_pll_lock_status()
243 if (reg & PLL_LOCK) in analogix_dp_get_pll_lock_status()
251 u32 reg; in analogix_dp_set_pll_power_down() local
254 reg = analogix_dp_read(dp, ANALOGIX_DP_PLL_CTL); in analogix_dp_set_pll_power_down()
255 reg |= DP_PLL_PD; in analogix_dp_set_pll_power_down()
256 analogix_dp_write(dp, ANALOGIX_DP_PLL_CTL, reg); in analogix_dp_set_pll_power_down()
258 reg = analogix_dp_read(dp, ANALOGIX_DP_PLL_CTL); in analogix_dp_set_pll_power_down()
259 reg &= ~DP_PLL_PD; in analogix_dp_set_pll_power_down()
260 analogix_dp_write(dp, ANALOGIX_DP_PLL_CTL, reg); in analogix_dp_set_pll_power_down()
268 u32 reg; in analogix_dp_set_analog_power_down() local
277 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
278 reg |= AUX_PD; in analogix_dp_set_analog_power_down()
279 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
281 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
282 reg &= ~AUX_PD; in analogix_dp_set_analog_power_down()
283 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
288 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
289 reg |= CH0_PD; in analogix_dp_set_analog_power_down()
290 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
292 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
293 reg &= ~CH0_PD; in analogix_dp_set_analog_power_down()
294 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
299 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
300 reg |= CH1_PD; in analogix_dp_set_analog_power_down()
301 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
303 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
304 reg &= ~CH1_PD; in analogix_dp_set_analog_power_down()
305 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
310 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
311 reg |= CH2_PD; in analogix_dp_set_analog_power_down()
312 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
314 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
315 reg &= ~CH2_PD; in analogix_dp_set_analog_power_down()
316 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
321 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
322 reg |= CH3_PD; in analogix_dp_set_analog_power_down()
323 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
325 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
326 reg &= ~CH3_PD; in analogix_dp_set_analog_power_down()
327 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
332 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
333 reg |= DP_PHY_PD; in analogix_dp_set_analog_power_down()
334 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
336 reg = analogix_dp_read(dp, phy_pd_addr); in analogix_dp_set_analog_power_down()
337 reg &= ~DP_PHY_PD; in analogix_dp_set_analog_power_down()
338 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
343 reg = DP_PHY_PD | AUX_PD | CH3_PD | CH2_PD | in analogix_dp_set_analog_power_down()
345 analogix_dp_write(dp, phy_pd_addr, reg); in analogix_dp_set_analog_power_down()
357 u32 reg; in analogix_dp_init_analog_func() local
361 reg = PLL_LOCK_CHG; in analogix_dp_init_analog_func()
362 analogix_dp_write(dp, ANALOGIX_DP_COMMON_INT_STA_1, reg); in analogix_dp_init_analog_func()
364 reg = analogix_dp_read(dp, ANALOGIX_DP_DEBUG_CTL); in analogix_dp_init_analog_func()
365 reg &= ~(F_PLL_LOCK | PLL_LOCK_CTRL); in analogix_dp_init_analog_func()
366 analogix_dp_write(dp, ANALOGIX_DP_DEBUG_CTL, reg); in analogix_dp_init_analog_func()
372 reg = analogix_dp_read(dp, ANALOGIX_DP_FUNC_EN_2); in analogix_dp_init_analog_func()
373 reg &= ~(SERDES_FIFO_FUNC_EN_N | LS_CLK_DOMAIN_FUNC_EN_N in analogix_dp_init_analog_func()
375 analogix_dp_write(dp, ANALOGIX_DP_FUNC_EN_2, reg); in analogix_dp_init_analog_func()
380 u32 reg; in analogix_dp_clear_hotplug_interrupts() local
385 reg = HOTPLUG_CHG | HPD_LOST | PLUG; in analogix_dp_clear_hotplug_interrupts()
386 analogix_dp_write(dp, ANALOGIX_DP_COMMON_INT_STA_4, reg); in analogix_dp_clear_hotplug_interrupts()
388 reg = INT_HPD; in analogix_dp_clear_hotplug_interrupts()
389 analogix_dp_write(dp, ANALOGIX_DP_INT_STA, reg); in analogix_dp_clear_hotplug_interrupts()
394 u32 reg; in analogix_dp_init_hpd() local
401 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_3); in analogix_dp_init_hpd()
402 reg &= ~(F_HPD | HPD_CTRL); in analogix_dp_init_hpd()
403 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_3, reg); in analogix_dp_init_hpd()
408 u32 reg; in analogix_dp_force_hpd() local
410 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_3); in analogix_dp_force_hpd()
411 reg |= (F_HPD | HPD_CTRL); in analogix_dp_force_hpd()
412 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_3, reg); in analogix_dp_force_hpd()
417 u32 reg; in analogix_dp_get_irq_type() local
420 reg = dm_gpio_get_value(&dp->hpd_gpio); in analogix_dp_get_irq_type()
421 if (reg) in analogix_dp_get_irq_type()
427 reg = analogix_dp_read(dp, ANALOGIX_DP_COMMON_INT_STA_4); in analogix_dp_get_irq_type()
429 if (reg & PLUG) in analogix_dp_get_irq_type()
432 if (reg & HPD_LOST) in analogix_dp_get_irq_type()
435 if (reg & HOTPLUG_CHG) in analogix_dp_get_irq_type()
444 u32 reg; in analogix_dp_reset_aux() local
447 reg = analogix_dp_read(dp, ANALOGIX_DP_FUNC_EN_2); in analogix_dp_reset_aux()
448 reg |= AUX_FUNC_EN_N; in analogix_dp_reset_aux()
449 analogix_dp_write(dp, ANALOGIX_DP_FUNC_EN_2, reg); in analogix_dp_reset_aux()
454 u32 reg; in analogix_dp_init_aux() local
457 reg = RPLY_RECEIV | AUX_ERR; in analogix_dp_init_aux()
458 analogix_dp_write(dp, ANALOGIX_DP_INT_STA, reg); in analogix_dp_init_aux()
464 reg = AUX_BIT_PERIOD_EXPECTED_DELAY(0) | in analogix_dp_init_aux()
468 reg = AUX_BIT_PERIOD_EXPECTED_DELAY(3) | in analogix_dp_init_aux()
471 analogix_dp_write(dp, ANALOGIX_DP_AUX_HW_RETRY_CTL, reg); in analogix_dp_init_aux()
474 reg = DEFER_CTRL_EN | DEFER_COUNT(1); in analogix_dp_init_aux()
475 analogix_dp_write(dp, ANALOGIX_DP_AUX_CH_DEFER_CTL, reg); in analogix_dp_init_aux()
478 reg = analogix_dp_read(dp, ANALOGIX_DP_FUNC_EN_2); in analogix_dp_init_aux()
479 reg &= ~AUX_FUNC_EN_N; in analogix_dp_init_aux()
480 analogix_dp_write(dp, ANALOGIX_DP_FUNC_EN_2, reg); in analogix_dp_init_aux()
485 u32 reg; in analogix_dp_detect() local
493 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_3); in analogix_dp_detect()
494 if (reg & HPD_STATUS) in analogix_dp_detect()
502 u32 reg; in analogix_dp_enable_sw_function() local
504 reg = analogix_dp_read(dp, ANALOGIX_DP_FUNC_EN_1); in analogix_dp_enable_sw_function()
505 reg &= ~SW_FUNC_EN_N; in analogix_dp_enable_sw_function()
506 analogix_dp_write(dp, ANALOGIX_DP_FUNC_EN_1, reg); in analogix_dp_enable_sw_function()
511 u32 reg; in analogix_dp_get_plug_in_status() local
513 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_3); in analogix_dp_get_plug_in_status()
514 if (reg & HPD_STATUS) in analogix_dp_get_plug_in_status()
522 int reg; in analogix_dp_start_aux_transaction() local
527 reg = analogix_dp_read(dp, ANALOGIX_DP_AUX_CH_CTL_2); in analogix_dp_start_aux_transaction()
528 reg |= AUX_EN; in analogix_dp_start_aux_transaction()
529 analogix_dp_write(dp, ANALOGIX_DP_AUX_CH_CTL_2, reg); in analogix_dp_start_aux_transaction()
532 reg = analogix_dp_read(dp, ANALOGIX_DP_INT_STA); in analogix_dp_start_aux_transaction()
533 while (!(reg & RPLY_RECEIV)) { in analogix_dp_start_aux_transaction()
540 reg = analogix_dp_read(dp, ANALOGIX_DP_INT_STA); in analogix_dp_start_aux_transaction()
545 analogix_dp_write(dp, ANALOGIX_DP_INT_STA, reg); in analogix_dp_start_aux_transaction()
548 reg = analogix_dp_read(dp, ANALOGIX_DP_INT_STA); in analogix_dp_start_aux_transaction()
549 if (reg & AUX_ERR) { in analogix_dp_start_aux_transaction()
555 reg = analogix_dp_read(dp, ANALOGIX_DP_AUX_CH_STA); in analogix_dp_start_aux_transaction()
556 if ((reg & AUX_STATUS_MASK) != 0) { in analogix_dp_start_aux_transaction()
558 "AUX CH error happens: %d\n", reg & AUX_STATUS_MASK); in analogix_dp_start_aux_transaction()
569 u32 reg; in analogix_dp_select_i2c_device() local
573 reg = device_addr; in analogix_dp_select_i2c_device()
574 analogix_dp_write(dp, ANALOGIX_DP_AUX_ADDR_7_0, reg); in analogix_dp_select_i2c_device()
586 reg = AUX_TX_COMM_I2C_TRANSACTION | AUX_TX_COMM_MOT | in analogix_dp_select_i2c_device()
588 analogix_dp_write(dp, ANALOGIX_DP_AUX_CH_CTL_1, reg); in analogix_dp_select_i2c_device()
603 u32 reg; in analogix_dp_read_byte_from_i2c() local
609 reg = BUF_CLR; in analogix_dp_read_byte_from_i2c()
610 analogix_dp_write(dp, ANALOGIX_DP_BUFFER_DATA_CTL, reg); in analogix_dp_read_byte_from_i2c()
623 reg = AUX_TX_COMM_I2C_TRANSACTION | in analogix_dp_read_byte_from_i2c()
625 analogix_dp_write(dp, ANALOGIX_DP_AUX_CH_CTL_1, reg); in analogix_dp_read_byte_from_i2c()
646 u32 reg; in analogix_dp_read_bytes_from_i2c() local
655 reg = BUF_CLR; in analogix_dp_read_bytes_from_i2c()
656 analogix_dp_write(dp, ANALOGIX_DP_BUFFER_DATA_CTL, reg); in analogix_dp_read_bytes_from_i2c()
659 reg = analogix_dp_read(dp, ANALOGIX_DP_AUX_CH_CTL_2); in analogix_dp_read_bytes_from_i2c()
660 reg &= ~ADDR_ONLY; in analogix_dp_read_bytes_from_i2c()
661 analogix_dp_write(dp, ANALOGIX_DP_AUX_CH_CTL_2, reg); in analogix_dp_read_bytes_from_i2c()
679 reg = AUX_LENGTH(16) | in analogix_dp_read_bytes_from_i2c()
683 reg); in analogix_dp_read_bytes_from_i2c()
691 reg = analogix_dp_read(dp, ANALOGIX_DP_AUX_RX_COMM); in analogix_dp_read_bytes_from_i2c()
692 if (reg == AUX_RX_COMM_AUX_DEFER || in analogix_dp_read_bytes_from_i2c()
693 reg == AUX_RX_COMM_I2C_DEFER) { in analogix_dp_read_bytes_from_i2c()
694 dev_dbg(dp->dev, "Defer: %d\n\n", reg); in analogix_dp_read_bytes_from_i2c()
700 reg = analogix_dp_read(dp, ANALOGIX_DP_BUF_DATA_0 in analogix_dp_read_bytes_from_i2c()
702 edid[i + cur_data_idx] = (unsigned char)reg; in analogix_dp_read_bytes_from_i2c()
748 u32 reg; in analogix_dp_get_link_bandwidth() local
750 reg = analogix_dp_read(dp, ANALOGIX_DP_LINK_BW_SET); in analogix_dp_get_link_bandwidth()
751 *bwtype = reg; in analogix_dp_get_link_bandwidth()
757 u32 reg; in analogix_dp_set_lane_count() local
760 reg = count; in analogix_dp_set_lane_count()
761 analogix_dp_write(dp, ANALOGIX_DP_LANE_COUNT_SET, reg); in analogix_dp_set_lane_count()
777 u32 reg; in analogix_dp_get_lane_count() local
779 reg = analogix_dp_read(dp, ANALOGIX_DP_LANE_COUNT_SET); in analogix_dp_get_lane_count()
780 *count = reg; in analogix_dp_get_lane_count()
828 u32 reg; in analogix_dp_enable_enhanced_mode() local
831 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_4); in analogix_dp_enable_enhanced_mode()
832 reg |= ENHANCED; in analogix_dp_enable_enhanced_mode()
833 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_4, reg); in analogix_dp_enable_enhanced_mode()
835 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_4); in analogix_dp_enable_enhanced_mode()
836 reg &= ~ENHANCED; in analogix_dp_enable_enhanced_mode()
837 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_4, reg); in analogix_dp_enable_enhanced_mode()
844 u32 reg; in analogix_dp_set_training_pattern() local
848 reg = SCRAMBLING_ENABLE | LINK_QUAL_PATTERN_SET_PRBS7; in analogix_dp_set_training_pattern()
849 analogix_dp_write(dp, ANALOGIX_DP_TRAINING_PTN_SET, reg); in analogix_dp_set_training_pattern()
852 reg = SCRAMBLING_ENABLE | LINK_QUAL_PATTERN_SET_D10_2; in analogix_dp_set_training_pattern()
853 analogix_dp_write(dp, ANALOGIX_DP_TRAINING_PTN_SET, reg); in analogix_dp_set_training_pattern()
856 reg = SCRAMBLING_DISABLE | SW_TRAINING_PATTERN_SET_PTN1; in analogix_dp_set_training_pattern()
857 analogix_dp_write(dp, ANALOGIX_DP_TRAINING_PTN_SET, reg); in analogix_dp_set_training_pattern()
860 reg = SCRAMBLING_DISABLE | SW_TRAINING_PATTERN_SET_PTN2; in analogix_dp_set_training_pattern()
861 analogix_dp_write(dp, ANALOGIX_DP_TRAINING_PTN_SET, reg); in analogix_dp_set_training_pattern()
864 reg = SCRAMBLING_DISABLE | SW_TRAINING_PATTERN_SET_PTN3; in analogix_dp_set_training_pattern()
865 analogix_dp_write(dp, ANALOGIX_DP_TRAINING_PTN_SET, reg); in analogix_dp_set_training_pattern()
868 reg = SCRAMBLING_ENABLE | in analogix_dp_set_training_pattern()
871 analogix_dp_write(dp, ANALOGIX_DP_TRAINING_PTN_SET, reg); in analogix_dp_set_training_pattern()
880 u32 reg; in analogix_dp_reset_macro() local
882 reg = analogix_dp_read(dp, ANALOGIX_DP_PHY_TEST); in analogix_dp_reset_macro()
883 reg |= MACRO_RST; in analogix_dp_reset_macro()
884 analogix_dp_write(dp, ANALOGIX_DP_PHY_TEST, reg); in analogix_dp_reset_macro()
889 reg &= ~MACRO_RST; in analogix_dp_reset_macro()
890 analogix_dp_write(dp, ANALOGIX_DP_PHY_TEST, reg); in analogix_dp_reset_macro()
895 u32 reg; in analogix_dp_init_video() local
897 reg = VSYNC_DET | VID_FORMAT_CHG | VID_CLK_CHG; in analogix_dp_init_video()
898 analogix_dp_write(dp, ANALOGIX_DP_COMMON_INT_STA_1, reg); in analogix_dp_init_video()
900 reg = 0x0; in analogix_dp_init_video()
901 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_1, reg); in analogix_dp_init_video()
903 reg = CHA_CRI(4) | CHA_CTRL; in analogix_dp_init_video()
904 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_2, reg); in analogix_dp_init_video()
907 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_3); in analogix_dp_init_video()
908 reg |= VALID_CTRL | F_VALID; in analogix_dp_init_video()
909 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_3, reg); in analogix_dp_init_video()
912 reg = VID_HRES_TH(2) | VID_VRES_TH(0); in analogix_dp_init_video()
913 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_8, reg); in analogix_dp_init_video()
918 u32 reg; in analogix_dp_set_video_color_format() local
921 reg = (dp->video_info.dynamic_range << IN_D_RANGE_SHIFT) | in analogix_dp_set_video_color_format()
924 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_2, reg); in analogix_dp_set_video_color_format()
927 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_3); in analogix_dp_set_video_color_format()
928 reg &= ~IN_YC_COEFFI_MASK; in analogix_dp_set_video_color_format()
930 reg |= IN_YC_COEFFI_ITU709; in analogix_dp_set_video_color_format()
932 reg |= IN_YC_COEFFI_ITU601; in analogix_dp_set_video_color_format()
933 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_3, reg); in analogix_dp_set_video_color_format()
938 u32 reg; in analogix_dp_is_slave_video_stream_clock_on() local
940 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_1); in analogix_dp_is_slave_video_stream_clock_on()
941 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_1, reg); in analogix_dp_is_slave_video_stream_clock_on()
943 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_1); in analogix_dp_is_slave_video_stream_clock_on()
945 if (!(reg & DET_STA)) in analogix_dp_is_slave_video_stream_clock_on()
948 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_2); in analogix_dp_is_slave_video_stream_clock_on()
949 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_2, reg); in analogix_dp_is_slave_video_stream_clock_on()
951 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_2); in analogix_dp_is_slave_video_stream_clock_on()
953 if (reg & CHA_STA) in analogix_dp_is_slave_video_stream_clock_on()
963 u32 reg; in analogix_dp_set_video_cr_mn() local
966 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_4); in analogix_dp_set_video_cr_mn()
967 reg |= FIX_M_VID; in analogix_dp_set_video_cr_mn()
968 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_4, reg); in analogix_dp_set_video_cr_mn()
969 reg = m_value & 0xff; in analogix_dp_set_video_cr_mn()
970 analogix_dp_write(dp, ANALOGIX_DP_M_VID_0, reg); in analogix_dp_set_video_cr_mn()
971 reg = (m_value >> 8) & 0xff; in analogix_dp_set_video_cr_mn()
972 analogix_dp_write(dp, ANALOGIX_DP_M_VID_1, reg); in analogix_dp_set_video_cr_mn()
973 reg = (m_value >> 16) & 0xff; in analogix_dp_set_video_cr_mn()
974 analogix_dp_write(dp, ANALOGIX_DP_M_VID_2, reg); in analogix_dp_set_video_cr_mn()
976 reg = n_value & 0xff; in analogix_dp_set_video_cr_mn()
977 analogix_dp_write(dp, ANALOGIX_DP_N_VID_0, reg); in analogix_dp_set_video_cr_mn()
978 reg = (n_value >> 8) & 0xff; in analogix_dp_set_video_cr_mn()
979 analogix_dp_write(dp, ANALOGIX_DP_N_VID_1, reg); in analogix_dp_set_video_cr_mn()
980 reg = (n_value >> 16) & 0xff; in analogix_dp_set_video_cr_mn()
981 analogix_dp_write(dp, ANALOGIX_DP_N_VID_2, reg); in analogix_dp_set_video_cr_mn()
983 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_4); in analogix_dp_set_video_cr_mn()
984 reg &= ~FIX_M_VID; in analogix_dp_set_video_cr_mn()
985 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_4, reg); in analogix_dp_set_video_cr_mn()
995 u32 reg; in analogix_dp_set_video_timing_mode() local
998 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_10); in analogix_dp_set_video_timing_mode()
999 reg &= ~FORMAT_SEL; in analogix_dp_set_video_timing_mode()
1000 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_10, reg); in analogix_dp_set_video_timing_mode()
1002 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_10); in analogix_dp_set_video_timing_mode()
1003 reg |= FORMAT_SEL; in analogix_dp_set_video_timing_mode()
1004 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_10, reg); in analogix_dp_set_video_timing_mode()
1010 u32 reg; in analogix_dp_enable_video_master() local
1013 reg = analogix_dp_read(dp, ANALOGIX_DP_SOC_GENERAL_CTL); in analogix_dp_enable_video_master()
1014 reg &= ~VIDEO_MODE_MASK; in analogix_dp_enable_video_master()
1015 reg |= VIDEO_MASTER_MODE_EN | VIDEO_MODE_MASTER_MODE; in analogix_dp_enable_video_master()
1016 analogix_dp_write(dp, ANALOGIX_DP_SOC_GENERAL_CTL, reg); in analogix_dp_enable_video_master()
1018 reg = analogix_dp_read(dp, ANALOGIX_DP_SOC_GENERAL_CTL); in analogix_dp_enable_video_master()
1019 reg &= ~VIDEO_MODE_MASK; in analogix_dp_enable_video_master()
1020 reg |= VIDEO_MODE_SLAVE_MODE; in analogix_dp_enable_video_master()
1021 analogix_dp_write(dp, ANALOGIX_DP_SOC_GENERAL_CTL, reg); in analogix_dp_enable_video_master()
1027 u32 reg; in analogix_dp_start_video() local
1029 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_1); in analogix_dp_start_video()
1030 reg |= VIDEO_EN; in analogix_dp_start_video()
1031 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_1, reg); in analogix_dp_start_video()
1036 u32 reg; in analogix_dp_is_video_stream_on() local
1038 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_3); in analogix_dp_is_video_stream_on()
1039 analogix_dp_write(dp, ANALOGIX_DP_SYS_CTL_3, reg); in analogix_dp_is_video_stream_on()
1041 reg = analogix_dp_read(dp, ANALOGIX_DP_SYS_CTL_3); in analogix_dp_is_video_stream_on()
1042 if (!(reg & STRM_VALID)) in analogix_dp_is_video_stream_on()
1050 u32 reg; in analogix_dp_config_video_slave_mode() local
1052 reg = analogix_dp_read(dp, ANALOGIX_DP_FUNC_EN_1); in analogix_dp_config_video_slave_mode()
1053 reg &= ~(MASTER_VID_FUNC_EN_N | SLAVE_VID_FUNC_EN_N); in analogix_dp_config_video_slave_mode()
1054 reg |= MASTER_VID_FUNC_EN_N; in analogix_dp_config_video_slave_mode()
1055 analogix_dp_write(dp, ANALOGIX_DP_FUNC_EN_1, reg); in analogix_dp_config_video_slave_mode()
1057 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_10); in analogix_dp_config_video_slave_mode()
1058 reg &= ~INTERACE_SCAN_CFG; in analogix_dp_config_video_slave_mode()
1059 reg |= (dp->video_info.interlaced << 2); in analogix_dp_config_video_slave_mode()
1060 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_10, reg); in analogix_dp_config_video_slave_mode()
1062 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_10); in analogix_dp_config_video_slave_mode()
1063 reg &= ~VSYNC_POLARITY_CFG; in analogix_dp_config_video_slave_mode()
1064 reg |= (dp->video_info.v_sync_polarity << 1); in analogix_dp_config_video_slave_mode()
1065 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_10, reg); in analogix_dp_config_video_slave_mode()
1067 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_10); in analogix_dp_config_video_slave_mode()
1068 reg &= ~HSYNC_POLARITY_CFG; in analogix_dp_config_video_slave_mode()
1069 reg |= (dp->video_info.h_sync_polarity << 0); in analogix_dp_config_video_slave_mode()
1070 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_10, reg); in analogix_dp_config_video_slave_mode()
1072 reg = AUDIO_MODE_SPDIF_MODE | VIDEO_MODE_SLAVE_MODE; in analogix_dp_config_video_slave_mode()
1073 analogix_dp_write(dp, ANALOGIX_DP_SOC_GENERAL_CTL, reg); in analogix_dp_config_video_slave_mode()
1078 u32 reg; in analogix_dp_enable_scrambling() local
1080 reg = analogix_dp_read(dp, ANALOGIX_DP_TRAINING_PTN_SET); in analogix_dp_enable_scrambling()
1081 reg &= ~SCRAMBLING_DISABLE; in analogix_dp_enable_scrambling()
1082 analogix_dp_write(dp, ANALOGIX_DP_TRAINING_PTN_SET, reg); in analogix_dp_enable_scrambling()
1087 u32 reg; in analogix_dp_disable_scrambling() local
1089 reg = analogix_dp_read(dp, ANALOGIX_DP_TRAINING_PTN_SET); in analogix_dp_disable_scrambling()
1090 reg |= SCRAMBLING_DISABLE; in analogix_dp_disable_scrambling()
1091 analogix_dp_write(dp, ANALOGIX_DP_TRAINING_PTN_SET, reg); in analogix_dp_disable_scrambling()
1155 u32 reg; in analogix_dp_video_bist_enable() local
1164 reg = analogix_dp_read(dp, ANALOGIX_DP_VIDEO_CTL_10); in analogix_dp_video_bist_enable()
1165 reg &= ~FORMAT_SEL; in analogix_dp_video_bist_enable()
1166 analogix_dp_write(dp, ANALOGIX_DP_VIDEO_CTL_10, reg); in analogix_dp_video_bist_enable()
1184 u32 reg; in analogix_dp_aux_transfer() local
1195 reg = BUF_CLR; in analogix_dp_aux_transfer()
1196 analogix_dp_write(dp, ANALOGIX_DP_BUFFER_DATA_CTL, reg); in analogix_dp_aux_transfer()
1200 reg = AUX_TX_COMM_WRITE | AUX_TX_COMM_I2C_TRANSACTION; in analogix_dp_aux_transfer()
1202 reg |= AUX_TX_COMM_MOT; in analogix_dp_aux_transfer()
1206 reg = AUX_TX_COMM_READ | AUX_TX_COMM_I2C_TRANSACTION; in analogix_dp_aux_transfer()
1208 reg |= AUX_TX_COMM_MOT; in analogix_dp_aux_transfer()
1212 reg = AUX_TX_COMM_WRITE | AUX_TX_COMM_DP_TRANSACTION; in analogix_dp_aux_transfer()
1216 reg = AUX_TX_COMM_READ | AUX_TX_COMM_DP_TRANSACTION; in analogix_dp_aux_transfer()
1223 reg |= AUX_LENGTH(msg->size); in analogix_dp_aux_transfer()
1224 analogix_dp_write(dp, ANALOGIX_DP_AUX_CH_CTL_1, reg); in analogix_dp_aux_transfer()
1227 reg = AUX_ADDR_7_0(msg->address); in analogix_dp_aux_transfer()
1228 analogix_dp_write(dp, ANALOGIX_DP_AUX_ADDR_7_0, reg); in analogix_dp_aux_transfer()
1229 reg = AUX_ADDR_15_8(msg->address); in analogix_dp_aux_transfer()
1230 analogix_dp_write(dp, ANALOGIX_DP_AUX_ADDR_15_8, reg); in analogix_dp_aux_transfer()
1231 reg = AUX_ADDR_19_16(msg->address); in analogix_dp_aux_transfer()
1232 analogix_dp_write(dp, ANALOGIX_DP_AUX_ADDR_19_16, reg); in analogix_dp_aux_transfer()
1236 reg = buffer[i]; in analogix_dp_aux_transfer()
1238 reg); in analogix_dp_aux_transfer()
1244 reg = AUX_EN; in analogix_dp_aux_transfer()
1248 reg |= ADDR_ONLY; in analogix_dp_aux_transfer()
1250 analogix_dp_write(dp, ANALOGIX_DP_AUX_CH_CTL_2, reg); in analogix_dp_aux_transfer()
1253 reg, !(reg & AUX_EN), 500 * 1000); in analogix_dp_aux_transfer()
1262 reg, reg & RPLY_RECEIV, 20 * 1000); in analogix_dp_aux_transfer()
1271 reg = analogix_dp_read(dp, ANALOGIX_DP_AUX_CH_STA); in analogix_dp_aux_transfer()
1272 if ((reg & AUX_STATUS_MASK) == AUX_STATUS_TIMEOUT_ERROR) in analogix_dp_aux_transfer()
1278 reg = analogix_dp_read(dp, ANALOGIX_DP_BUFFER_DATA_CTL); in analogix_dp_aux_transfer()
1279 buf_data_count = BUF_DATA_COUNT(reg); in analogix_dp_aux_transfer()
1285 reg = analogix_dp_read(dp, ANALOGIX_DP_BUF_DATA_0 + in analogix_dp_aux_transfer()
1287 buffer[i] = (unsigned char)reg; in analogix_dp_aux_transfer()
1293 reg = analogix_dp_read(dp, ANALOGIX_DP_AUX_RX_COMM); in analogix_dp_aux_transfer()
1294 if (reg == AUX_RX_COMM_AUX_DEFER) in analogix_dp_aux_transfer()
1296 else if (reg == AUX_RX_COMM_I2C_DEFER) in analogix_dp_aux_transfer()
1316 u32 reg; in analogix_dp_enable_assr_mode() local
1319 reg = analogix_dp_read(dp, ANALOGIX_DP_LINK_POLICY); in analogix_dp_enable_assr_mode()
1320 reg |= ALTERNATE_SR_ENABLE; in analogix_dp_enable_assr_mode()
1321 analogix_dp_write(dp, ANALOGIX_DP_LINK_POLICY, reg); in analogix_dp_enable_assr_mode()
1323 reg = analogix_dp_read(dp, ANALOGIX_DP_LINK_POLICY); in analogix_dp_enable_assr_mode()
1324 reg &= ~ALTERNATE_SR_ENABLE; in analogix_dp_enable_assr_mode()
1325 analogix_dp_write(dp, ANALOGIX_DP_LINK_POLICY, reg); in analogix_dp_enable_assr_mode()
1331 u32 reg; in analogix_dp_get_assr_mode() local
1333 reg = analogix_dp_read(dp, ANALOGIX_DP_LINK_POLICY); in analogix_dp_get_assr_mode()
1335 return !!(reg & ALTERNATE_SR_ENABLE); in analogix_dp_get_assr_mode()