| /Linux-v5.15/drivers/gpu/drm/i915/display/ |
| D | intel_dp_link_training.c | 38 static void intel_dp_reset_lttpr_common_caps(struct intel_dp *intel_dp) in intel_dp_reset_lttpr_common_caps() argument 40 memset(intel_dp->lttpr_common_caps, 0, sizeof(intel_dp->lttpr_common_caps)); in intel_dp_reset_lttpr_common_caps() 43 static void intel_dp_reset_lttpr_count(struct intel_dp *intel_dp) in intel_dp_reset_lttpr_count() argument 45 intel_dp->lttpr_common_caps[DP_PHY_REPEATER_CNT - in intel_dp_reset_lttpr_count() 60 static u8 *intel_dp_lttpr_phy_caps(struct intel_dp *intel_dp, in intel_dp_lttpr_phy_caps() argument 63 return intel_dp->lttpr_phy_caps[dp_phy - DP_PHY_LTTPR1]; in intel_dp_lttpr_phy_caps() 66 static void intel_dp_read_lttpr_phy_caps(struct intel_dp *intel_dp, in intel_dp_read_lttpr_phy_caps() argument 69 u8 *phy_caps = intel_dp_lttpr_phy_caps(intel_dp, dp_phy); in intel_dp_read_lttpr_phy_caps() 74 if (drm_dp_read_lttpr_phy_caps(&intel_dp->aux, dp_phy, phy_caps) < 0) { in intel_dp_read_lttpr_phy_caps() 75 drm_dbg_kms(&dp_to_i915(intel_dp)->drm, in intel_dp_read_lttpr_phy_caps() [all …]
|
| D | intel_pps.c | 17 static void pps_init_delays(struct intel_dp *intel_dp); 18 static void pps_init_registers(struct intel_dp *intel_dp, bool force_disable_vdd); 20 intel_wakeref_t intel_pps_lock(struct intel_dp *intel_dp) in intel_pps_lock() argument 22 struct drm_i915_private *dev_priv = dp_to_i915(intel_dp); in intel_pps_lock() 34 intel_wakeref_t intel_pps_unlock(struct intel_dp *intel_dp, in intel_pps_unlock() argument 37 struct drm_i915_private *dev_priv = dp_to_i915(intel_dp); in intel_pps_unlock() 46 vlv_power_sequencer_kick(struct intel_dp *intel_dp) in vlv_power_sequencer_kick() argument 48 struct drm_i915_private *dev_priv = dp_to_i915(intel_dp); in vlv_power_sequencer_kick() 49 struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp); in vlv_power_sequencer_kick() 50 enum pipe pipe = intel_dp->pps.pps_pipe; in vlv_power_sequencer_kick() [all …]
|
| D | intel_psr.c | 86 static bool psr_global_enabled(struct intel_dp *intel_dp) in psr_global_enabled() argument 88 struct drm_i915_private *i915 = dp_to_i915(intel_dp); in psr_global_enabled() 90 switch (intel_dp->psr.debug & I915_PSR_DEBUG_MODE_MASK) { in psr_global_enabled() 100 static bool psr2_global_enabled(struct intel_dp *intel_dp) in psr2_global_enabled() argument 102 switch (intel_dp->psr.debug & I915_PSR_DEBUG_MODE_MASK) { in psr2_global_enabled() 111 static void psr_irq_control(struct intel_dp *intel_dp) in psr_irq_control() argument 113 struct drm_i915_private *dev_priv = dp_to_i915(intel_dp); in psr_irq_control() 125 imr_reg = TRANS_PSR_IMR(intel_dp->psr.transcoder); in psr_irq_control() 127 trans_shift = intel_dp->psr.transcoder; in psr_irq_control() 132 if (intel_dp->psr.debug & I915_PSR_DEBUG_IRQ) in psr_irq_control() [all …]
|
| D | intel_dp.c | 104 bool intel_dp_is_edp(struct intel_dp *intel_dp) in intel_dp_is_edp() argument 106 struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp); in intel_dp_is_edp() 111 static void intel_dp_unset_edid(struct intel_dp *intel_dp); 112 static int intel_dp_dsc_compute_bpp(struct intel_dp *intel_dp, u8 dsc_max_bpc); 115 static void intel_dp_set_sink_rates(struct intel_dp *intel_dp) in intel_dp_set_sink_rates() argument 123 if (drm_dp_has_quirk(&intel_dp->desc, DP_DPCD_QUIRK_CAN_DO_MAX_LINK_RATE_3_24_GBPS)) { in intel_dp_set_sink_rates() 127 memcpy(intel_dp->sink_rates, quirk_rates, sizeof(quirk_rates)); in intel_dp_set_sink_rates() 128 intel_dp->num_sink_rates = ARRAY_SIZE(quirk_rates); in intel_dp_set_sink_rates() 133 max_rate = drm_dp_bw_code_to_link_rate(intel_dp->dpcd[DP_MAX_LINK_RATE]); in intel_dp_set_sink_rates() 134 max_lttpr_rate = drm_dp_lttpr_max_link_rate(intel_dp->lttpr_common_caps); in intel_dp_set_sink_rates() [all …]
|
| D | intel_pps.h | 16 struct intel_dp; 19 intel_wakeref_t intel_pps_lock(struct intel_dp *intel_dp); 20 intel_wakeref_t intel_pps_unlock(struct intel_dp *intel_dp, intel_wakeref_t wakeref); 25 void intel_pps_backlight_on(struct intel_dp *intel_dp); 26 void intel_pps_backlight_off(struct intel_dp *intel_dp); 29 bool intel_pps_vdd_on_unlocked(struct intel_dp *intel_dp); 30 void intel_pps_vdd_off_unlocked(struct intel_dp *intel_dp, bool sync); 31 void intel_pps_on_unlocked(struct intel_dp *intel_dp); 32 void intel_pps_off_unlocked(struct intel_dp *intel_dp); 33 void intel_pps_check_power_unlocked(struct intel_dp *intel_dp); [all …]
|
| D | intel_dp_aux.c | 36 intel_dp_aux_wait_done(struct intel_dp *intel_dp) in intel_dp_aux_wait_done() argument 38 struct drm_i915_private *i915 = dp_to_i915(intel_dp); in intel_dp_aux_wait_done() 39 i915_reg_t ch_ctl = intel_dp->aux_ch_ctl_reg(intel_dp); in intel_dp_aux_wait_done() 54 intel_dp->aux.name, timeout_ms, status); in intel_dp_aux_wait_done() 60 static u32 g4x_get_aux_clock_divider(struct intel_dp *intel_dp, int index) in g4x_get_aux_clock_divider() argument 62 struct drm_i915_private *dev_priv = dp_to_i915(intel_dp); in g4x_get_aux_clock_divider() 74 static u32 ilk_get_aux_clock_divider(struct intel_dp *intel_dp, int index) in ilk_get_aux_clock_divider() argument 76 struct drm_i915_private *dev_priv = dp_to_i915(intel_dp); in ilk_get_aux_clock_divider() 77 struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp); in ilk_get_aux_clock_divider() 95 static u32 hsw_get_aux_clock_divider(struct intel_dp *intel_dp, int index) in hsw_get_aux_clock_divider() argument [all …]
|
| D | intel_dp.h | 25 struct intel_dp; 34 void intel_dp_adjust_compliance_config(struct intel_dp *intel_dp, 42 void intel_dp_set_link_params(struct intel_dp *intel_dp, 44 int intel_dp_get_link_train_fallback_values(struct intel_dp *intel_dp, 48 void intel_dp_set_power(struct intel_dp *intel_dp, u8 mode); 49 void intel_dp_configure_protocol_converter(struct intel_dp *intel_dp, 51 void intel_dp_sink_set_decompression_state(struct intel_dp *intel_dp, 60 bool intel_dp_is_edp(struct intel_dp *intel_dp); 69 int intel_dp_max_link_rate(struct intel_dp *intel_dp); 70 int intel_dp_max_lane_count(struct intel_dp *intel_dp); [all …]
|
| D | intel_psr.h | 15 struct intel_dp; 22 void intel_psr_init_dpcd(struct intel_dp *intel_dp); 23 void intel_psr_enable(struct intel_dp *intel_dp, 26 void intel_psr_disable(struct intel_dp *intel_dp, 28 void intel_psr_update(struct intel_dp *intel_dp, 31 int intel_psr_debug_set(struct intel_dp *intel_dp, u64 value); 38 void intel_psr_init(struct intel_dp *intel_dp); 39 void intel_psr_compute_config(struct intel_dp *intel_dp, 43 void intel_psr_irq_handler(struct intel_dp *intel_dp, u32 psr_iir); 44 void intel_psr_short_pulse(struct intel_dp *intel_dp); [all …]
|
| D | g4x_dp.c | 106 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in intel_dp_prepare() local 111 intel_dp_set_link_params(intel_dp, in intel_dp_prepare() 134 intel_dp->DP = intel_de_read(dev_priv, intel_dp->output_reg) & DP_DETECTED; in intel_dp_prepare() 137 intel_dp->DP |= DP_VOLTAGE_0_4 | DP_PRE_EMPHASIS_0; in intel_dp_prepare() 138 intel_dp->DP |= DP_PORT_WIDTH(pipe_config->lane_count); in intel_dp_prepare() 144 intel_dp->DP |= DP_SYNC_HS_HIGH; in intel_dp_prepare() 146 intel_dp->DP |= DP_SYNC_VS_HIGH; in intel_dp_prepare() 147 intel_dp->DP |= DP_LINK_TRAIN_OFF_CPT; in intel_dp_prepare() 149 if (drm_dp_enhanced_frame_cap(intel_dp->dpcd)) in intel_dp_prepare() 150 intel_dp->DP |= DP_ENHANCED_FRAMING; in intel_dp_prepare() [all …]
|
| D | intel_dp_mst.c | 54 struct intel_dp *intel_dp = &intel_mst->primary->dp; in intel_dp_mst_compute_link_config() local 60 bool constant_n = drm_dp_has_quirk(&intel_dp->desc, DP_DPCD_QUIRK_CONSTANT_N); in intel_dp_mst_compute_link_config() 73 slots = drm_dp_atomic_find_vcpi_slots(state, &intel_dp->mst_mgr, in intel_dp_mst_compute_link_config() 76 drm_dp_get_vc_payload_bw(&intel_dp->mst_mgr, in intel_dp_mst_compute_link_config() 108 struct intel_dp *intel_dp = &intel_mst->primary->dp; in intel_dp_mst_compute_config() local 135 limits.max_clock = intel_dp_max_link_rate(intel_dp); in intel_dp_mst_compute_config() 138 limits.max_lane_count = intel_dp_max_lane_count(intel_dp); in intel_dp_mst_compute_config() 151 intel_dp_adjust_compliance_config(intel_dp, pipe_config, &limits); in intel_dp_mst_compute_config() 176 struct intel_dp *mst_port) in intel_dp_mst_transcoder_mask() 212 struct intel_dp *intel_dp = &intel_mst->primary->dp; in intel_dp_mst_compute_config_late() local [all …]
|
| D | intel_dp_link_training.h | 12 struct intel_dp; 14 int intel_dp_init_lttpr_and_dprx_caps(struct intel_dp *intel_dp); 16 void intel_dp_get_adjust_train(struct intel_dp *intel_dp, 20 void intel_dp_program_link_training_pattern(struct intel_dp *intel_dp, 23 void intel_dp_set_signal_levels(struct intel_dp *intel_dp, 26 void intel_dp_start_link_train(struct intel_dp *intel_dp, 28 void intel_dp_stop_link_train(struct intel_dp *intel_dp,
|
| D | intel_dp_aux_backlight.c | 103 struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder); in intel_dp_aux_supports_hdr_backlight() local 104 struct drm_dp_aux *aux = &intel_dp->aux; in intel_dp_aux_supports_hdr_backlight() 136 struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder); in intel_dp_aux_hdr_get_backlight() local 140 if (drm_dp_dpcd_readb(&intel_dp->aux, INTEL_EDP_HDR_GETSET_CTRL_PARAMS, &tmp) != 1) { in intel_dp_aux_hdr_get_backlight() 156 if (drm_dp_dpcd_read(&intel_dp->aux, INTEL_EDP_BRIGHTNESS_NITS_LSB, buf, in intel_dp_aux_hdr_get_backlight() 170 struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder); in intel_dp_aux_hdr_set_aux_backlight() local 176 if (drm_dp_dpcd_write(&intel_dp->aux, INTEL_EDP_BRIGHTNESS_NITS_LSB, buf, in intel_dp_aux_hdr_set_aux_backlight() 203 struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder); in intel_dp_aux_hdr_enable_backlight() local 207 ret = drm_dp_dpcd_readb(&intel_dp->aux, INTEL_EDP_HDR_GETSET_CTRL_PARAMS, &old_ctrl); in intel_dp_aux_hdr_enable_backlight() 226 if (drm_dp_dpcd_writeb(&intel_dp->aux, INTEL_EDP_HDR_GETSET_CTRL_PARAMS, ctrl) != 1) in intel_dp_aux_hdr_enable_backlight() [all …]
|
| D | intel_lspcon.c | 55 static struct intel_dp *lspcon_to_intel_dp(struct intel_lspcon *lspcon) in lspcon_to_intel_dp() 80 struct intel_dp *dp = lspcon_to_intel_dp(lspcon); in lspcon_detect_vendor() 125 struct intel_dp *dp = lspcon_to_intel_dp(lspcon); in lspcon_detect_hdr_capability() 143 struct intel_dp *intel_dp = lspcon_to_intel_dp(lspcon); in lspcon_get_current_mode() local 145 struct i2c_adapter *adapter = &intel_dp->aux.ddc; in lspcon_get_current_mode() 147 if (drm_lspcon_get_mode(intel_dp->aux.drm_dev, adapter, ¤t_mode)) { in lspcon_get_current_mode() 180 struct intel_dp *intel_dp = lspcon_to_intel_dp(lspcon); in lspcon_change_mode() local 183 struct i2c_adapter *adapter = &intel_dp->aux.ddc; in lspcon_change_mode() 185 err = drm_lspcon_get_mode(intel_dp->aux.drm_dev, adapter, ¤t_mode); in lspcon_change_mode() 196 err = drm_lspcon_set_mode(intel_dp->aux.drm_dev, adapter, mode); in lspcon_change_mode() [all …]
|
| D | intel_dp_aux.h | 11 struct intel_dp; 15 void intel_dp_aux_fini(struct intel_dp *intel_dp); 16 void intel_dp_aux_init(struct intel_dp *intel_dp);
|
| D | intel_display_debugfs.c | 253 struct intel_dp *intel_dp = in i915_psr_sink_status_show() local 257 if (!CAN_PSR(intel_dp)) { in i915_psr_sink_status_show() 265 ret = drm_dp_dpcd_readb(&intel_dp->aux, DP_PSR_STATUS, &val); in i915_psr_sink_status_show() 283 psr_source_status(struct intel_dp *intel_dp, struct seq_file *m) in psr_source_status() argument 285 struct drm_i915_private *dev_priv = dp_to_i915(intel_dp); in psr_source_status() 289 if (intel_dp->psr.psr2_enabled) { in psr_source_status() 304 EDP_PSR2_STATUS(intel_dp->psr.transcoder)); in psr_source_status() 321 EDP_PSR_STATUS(intel_dp->psr.transcoder)); in psr_source_status() 331 static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp) in intel_psr_status() argument 333 struct drm_i915_private *dev_priv = dp_to_i915(intel_dp); in intel_psr_status() [all …]
|
| D | intel_ddi.c | 280 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in intel_ddi_init_dp_buf_reg() local 284 intel_dp->DP = dig_port->saved_port_bits | in intel_ddi_init_dp_buf_reg() 286 intel_dp->DP |= DDI_PORT_WIDTH(crtc_state->lane_count); in intel_ddi_init_dp_buf_reg() 289 intel_dp->DP |= ddi_buf_phy_link_rate(crtc_state->port_clock); in intel_ddi_init_dp_buf_reg() 291 intel_dp->DP |= DDI_BUF_CTL_TC_PHY_OWNERSHIP; in intel_ddi_init_dp_buf_reg() 996 static u8 intel_ddi_dp_voltage_max(struct intel_dp *intel_dp, in intel_ddi_dp_voltage_max() argument 999 struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base; in intel_ddi_dp_voltage_max() 1020 static u8 intel_ddi_dp_preemph_max(struct intel_dp *intel_dp) in intel_ddi_dp_preemph_max() argument 1042 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in icl_ddi_combo_vswing_program() local 1045 intel_dp->hobl_active = is_hobl_buf_trans(ddi_translations); in icl_ddi_combo_vswing_program() [all …]
|
| D | intel_display_types.h | 551 struct intel_dp *mst_port; 1535 struct intel_dp { struct 1590 u32 (*get_aux_clock_divider)(struct intel_dp *dp, int index); argument 1595 u32 (*get_aux_send_ctl)(struct intel_dp *dp, int send_bytes, argument 1598 i915_reg_t (*aux_ch_ctl_reg)(struct intel_dp *dp); argument 1599 i915_reg_t (*aux_ch_data_reg)(struct intel_dp *dp, int index); argument 1602 void (*prepare_link_retrain)(struct intel_dp *intel_dp, argument 1604 void (*set_link_train)(struct intel_dp *intel_dp, argument 1607 void (*set_idle_link_train)(struct intel_dp *intel_dp, argument 1609 void (*set_signal_levels)(struct intel_dp *intel_dp, argument [all …]
|
| D | intel_ddi.h | 17 struct intel_dp; 62 u32 bxt_signal_levels(struct intel_dp *intel_dp, 64 u32 ddi_signal_levels(struct intel_dp *intel_dp,
|
| D | g4x_dp.h | 17 struct intel_dp; 21 enum pipe vlv_active_pipe(struct intel_dp *intel_dp);
|
| D | intel_ddi_buf_trans.c | 1306 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in tgl_get_combo_buf_trans_edp() local 1311 } else if (dev_priv->vbt.edp.hobl && !intel_dp->hobl_failed) { in tgl_get_combo_buf_trans_edp() 1354 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in dg1_get_combo_buf_trans_edp() local 1359 else if (dev_priv->vbt.edp.hobl && !intel_dp->hobl_failed) in dg1_get_combo_buf_trans_edp() 1399 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in rkl_get_combo_buf_trans_edp() local 1404 } else if (dev_priv->vbt.edp.hobl && !intel_dp->hobl_failed) { in rkl_get_combo_buf_trans_edp() 1445 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in adls_get_combo_buf_trans_edp() local 1449 else if (i915->vbt.edp.hobl && !intel_dp->hobl_failed) in adls_get_combo_buf_trans_edp() 1487 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in adlp_get_combo_buf_trans_edp() local 1492 } else if (dev_priv->vbt.edp.hobl && !intel_dp->hobl_failed) { in adlp_get_combo_buf_trans_edp()
|
| D | intel_vrr.c | 14 struct intel_dp *intel_dp; in intel_vrr_is_capable() local 22 intel_dp = intel_attached_dp(to_intel_connector(connector)); in intel_vrr_is_capable() 30 drm_dp_sink_can_do_video_without_timing_msa(intel_dp->dpcd) && in intel_vrr_is_capable()
|
| D | intel_vrr.h | 16 struct intel_dp;
|
| D | intel_dp_hdcp.c | 396 struct intel_dp *dp = &dig_port->dp; in intel_dp_hdcp2_wait_for_msg() 449 struct intel_dp *dp = &dig_port->dp; in intel_dp_hdcp2_write_msg() 847 struct intel_dp *intel_dp = &dig_port->dp; in intel_dp_hdcp_init() local 855 else if (!intel_dp_is_edp(intel_dp)) in intel_dp_hdcp_init()
|
| D | intel_dpio_phy.c | 873 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in chv_phy_pre_encoder_enable() local 874 struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp); in chv_phy_pre_encoder_enable() 1056 struct intel_dp *intel_dp = enc_to_intel_dp(encoder); in vlv_phy_pre_encoder_enable() local 1057 struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp); in vlv_phy_pre_encoder_enable()
|
| /Linux-v5.15/drivers/gpu/drm/gma500/ |
| D | cdv_intel_dp.c | 327 struct cdv_intel_dp *intel_dp = encoder->dev_priv; in cdv_intel_dp_max_lane_count() local 330 if (intel_dp->dpcd[DP_DPCD_REV] >= 0x11) { in cdv_intel_dp_max_lane_count() 331 max_lane_count = intel_dp->dpcd[DP_MAX_LANE_COUNT] & 0x1f; in cdv_intel_dp_max_lane_count() 345 struct cdv_intel_dp *intel_dp = encoder->dev_priv; in cdv_intel_dp_max_link_bw() local 346 int max_link_bw = intel_dp->dpcd[DP_MAX_LINK_RATE]; in cdv_intel_dp_max_link_bw() 383 struct cdv_intel_dp *intel_dp = intel_encoder->dev_priv; in cdv_intel_edp_panel_vdd_on() local 386 if (intel_dp->panel_on) { in cdv_intel_edp_panel_vdd_on() 397 msleep(intel_dp->panel_power_up_delay); in cdv_intel_edp_panel_vdd_on() 418 struct cdv_intel_dp *intel_dp = intel_encoder->dev_priv; in cdv_intel_edp_panel_on() local 421 if (intel_dp->panel_on) in cdv_intel_edp_panel_on() [all …]
|