Home
last modified time | relevance | path

Searched refs:dpcd (Results 1 – 25 of 29) sorted by relevance

12

/linux/include/drm/display/
H A Ddrm_dp_helper.h48 int drm_dp_read_clock_recovery_delay(struct drm_dp_aux *aux, const u8 dpcd[DP_RECEIVER_CAP_SIZE],
50 int drm_dp_read_channel_eq_delay(struct drm_dp_aux *aux, const u8 dpcd[DP_RECEIVER_CAP_SIZE],
54 const u8 dpcd[DP_RECEIVER_CAP_SIZE]);
57 const u8 dpcd[DP_RECEIVER_CAP_SIZE]);
135 bool drm_dp_vsc_sdp_supported(struct drm_dp_aux *aux, const u8 dpcd[DP_RECEIVER_CAP_SIZE]);
136 bool drm_dp_as_sdp_supported(struct drm_dp_aux *aux, const u8 dpcd[DP_RECEIVER_CAP_SIZE]);
141 drm_dp_max_link_rate(const u8 dpcd[DP_RECEIVER_CAP_SIZE]) in drm_dp_max_link_rate()
143 return drm_dp_bw_code_to_link_rate(dpcd[DP_MAX_LINK_RATE]); in drm_dp_max_link_rate()
147 drm_dp_max_lane_count(const u8 dpcd[DP_RECEIVER_CAP_SIZE]) in drm_dp_max_lane_count()
149 return dpcd[DP_MAX_LANE_COUNT] & DP_MAX_LANE_COUNT_MASK; in drm_dp_max_lane_count()
[all …]
/linux/drivers/gpu/drm/nouveau/nvkm/engine/disp/
H A Ddp.c242 if (lt->outp->dp.dpcd[DPCD_RC00_DPCD_REV] >= 0x14 && in nvkm_dp_train_eq()
243 lt->outp->dp.dpcd[DPCD_RC03] & DPCD_RC03_TPS4_SUPPORTED) in nvkm_dp_train_eq()
246 if (lt->outp->dp.dpcd[DPCD_RC00_DPCD_REV] >= 0x12 && in nvkm_dp_train_eq()
247 lt->outp->dp.dpcd[DPCD_RC02] & DPCD_RC02_TPS3_SUPPORTED) in nvkm_dp_train_eq()
252 usec = (lt->outp->dp.dpcd[DPCD_RC0E] & DPCD_RC0E_AUX_RD_INTERVAL) * 4000; in nvkm_dp_train_eq()
284 if (lt->outp->dp.dpcd[DPCD_RC00_DPCD_REV] < 0x14 && !lt->repeater) in nvkm_dp_train_cr()
285 usec = (lt->outp->dp.dpcd[DPCD_RC0E] & DPCD_RC0E_AUX_RD_INTERVAL) * 4000; in nvkm_dp_train_cr()
318 .pc2 = outp->dp.dpcd[DPCD_RC02] & DPCD_RC02_TPS3_SUPPORTED, in nvkm_dp_train_link()
327 sink[0] = (outp->dp.rate[rate].dpcd < 0) ? ior->dp.bw : 0; in nvkm_dp_train_link()
338 if (outp->dp.rate[rate].dpcd >= 0) { in nvkm_dp_train_link()
[all …]
H A Doutp.h48 u8 dpcd[DP_RECEIVER_CAP_SIZE]; member
51 int dpcd; /* -1, or index into SUPPORTED_LINK_RATES table */ member
H A Duoutp.c90 outp->dp.dpcd[DPCD_RC02] & DPCD_RC02_ENHANCED_FRAME_CAP, in nvkm_uoutp_mthd_dp_sst()
118 memcpy(outp->dp.dpcd, args->v0.dpcd, sizeof(outp->dp.dpcd)); in nvkm_uoutp_mthd_dp_train()
140 outp->dp.rate[i].dpcd = args->v0.rate[i].dpcd; in nvkm_uoutp_mthd_dp_rates()
/linux/drivers/gpu/drm/gma500/
H A Dcdv_intel_dp.c264 uint8_t dpcd[4]; member
327 if (intel_dp->dpcd[DP_DPCD_REV] >= 0x11) { in cdv_intel_dp_max_lane_count()
328 max_lane_count = intel_dp->dpcd[DP_MAX_LANE_COUNT] & 0x1f; in cdv_intel_dp_max_lane_count()
343 int max_link_bw = intel_dp->dpcd[DP_MAX_LINK_RATE]; in cdv_intel_dp_max_link_bw()
1075 if (intel_dp->dpcd[DP_DPCD_REV] >= 0x11 && in cdv_intel_dp_mode_set()
1076 (intel_dp->dpcd[DP_MAX_LANE_COUNT] & DP_ENHANCED_FRAME_CAP)) { in cdv_intel_dp_mode_set()
1111 if (intel_dp->dpcd[DP_DPCD_REV] < 0x11) in cdv_intel_dp_sink_dpms()
1670 if (cdv_intel_dp_aux_native_read(encoder, 0x000, intel_dp->dpcd, in cdv_dp_detect()
1671 sizeof (intel_dp->dpcd)) == sizeof (intel_dp->dpcd)) in cdv_dp_detect()
1673 if (intel_dp->dpcd[DP_DPCD_REV] != 0) in cdv_dp_detect()
[all …]
/linux/drivers/gpu/drm/hisilicon/hibmc/dp/
H A Ddp_link.c213 drm_dp_link_train_clock_recovery_delay(dp->aux, dp->dpcd); in hibmc_dp_link_training_cr()
266 drm_dp_link_train_channel_eq_delay(dp->aux, dp->dpcd); in hibmc_dp_link_training_channel_eq()
330 dp->link.cap.link_rate = dp->dpcd[DP_MAX_LINK_RATE]; in hibmc_dp_update_caps()
334 dp->link.cap.lanes = dp->dpcd[DP_MAX_LANE_COUNT] & DP_MAX_LANE_COUNT_MASK; in hibmc_dp_update_caps()
344 ret = drm_dp_read_dpcd_caps(dp->aux, dp->dpcd); in hibmc_dp_link_training()
/linux/drivers/gpu/drm/i915/display/
H A Dintel_dp.c180 max_rate = drm_dp_bw_code_to_link_rate(intel_dp->dpcd[DP_MAX_LINK_RATE]); in max_dprx_rate()
199 return drm_dp_max_lane_count(intel_dp->dpcd); in max_dprx_lane_count()
245 if (drm_dp_128b132b_supported(intel_dp->dpcd)) { in intel_dp_set_dpcd_sink_rates()
1101 if (!drm_dp_is_branch(intel_dp->dpcd)) in dfp_can_convert_from_rgb()
1118 if (!drm_dp_is_branch(intel_dp->dpcd)) in dfp_can_convert_from_ycbcr444()
1156 (!drm_dp_is_branch(intel_dp->dpcd) || in intel_dp_output_format()
3425 drm_dp_enhanced_frame_cap(intel_dp->dpcd); in intel_dp_compute_config()
3547 return intel_dp->dpcd[DP_DPCD_REV] == 0x11 && in downstream_hpd_needs_d0()
3548 drm_dp_is_branch(intel_dp->dpcd) && in downstream_hpd_needs_d0()
3785 if (intel_dp->dpcd[DP_DPCD_REV] < 0x11) in intel_dp_set_power()
[all …]
H A Dintel_psr.c509 if (!(connector->dp.psr_caps.dpcd[1] & DP_PSR2_SU_GRANULARITY_REQUIRED)) { in _psr_compute_su_granularity()
547 val = connector->dp.panel_replay_caps.dpcd[INTEL_PR_DPCD_INDEX(DP_PANEL_REPLAY_CAP_CAPABILITY)]; in compute_pr_dsc_support()
584 if (!(connector->dp.panel_replay_caps.dpcd[INTEL_PR_DPCD_INDEX(DP_PANEL_REPLAY_CAP_CAPABILITY)] & in _panel_replay_compute_su_granularity()
595 …w = le16_to_cpu(*(__le16 *)&connector->dp.panel_replay_caps.dpcd[INTEL_PR_DPCD_INDEX(DP_PANEL_REPL… in _panel_replay_compute_su_granularity()
596 …y = connector->dp.panel_replay_caps.dpcd[INTEL_PR_DPCD_INDEX(DP_PANEL_REPLAY_CAP_Y_GRANULARITY)] ?… in _panel_replay_compute_su_granularity()
613 &connector->dp.panel_replay_caps.dpcd, in _panel_replay_init_dpcd()
614 sizeof(connector->dp.panel_replay_caps.dpcd)); in _panel_replay_init_dpcd()
618 if (!(connector->dp.panel_replay_caps.dpcd[INTEL_PR_DPCD_INDEX(DP_PANEL_REPLAY_CAP_SUPPORT)] & in _panel_replay_init_dpcd()
629 if (!(connector->dp.panel_replay_caps.dpcd[INTEL_PR_DPCD_INDEX(DP_PANEL_REPLAY_CAP_SUPPORT)] & in _panel_replay_init_dpcd()
640 if (connector->dp.panel_replay_caps.dpcd[INTEL_PR_DPCD_INDEX(DP_PANEL_REPLAY_CAP_SUPPORT)] & in _panel_replay_init_dpcd()
[all …]
H A Dintel_dp_mst.c498 drm_dp_128b132b_supported(connector->mst.dp->dpcd); in hblank_expansion_quirk_needs_dsc()
1641 u8 dpcd[DP_RECEIVER_CAP_SIZE]; in detect_dsc_hblank_expansion_quirk() local
1656 if (drm_dp_read_dpcd_caps(aux, dpcd) < 0) in detect_dsc_hblank_expansion_quirk()
1659 if (drm_dp_read_desc(aux, &desc, drm_dp_is_branch(dpcd)) < 0) in detect_dsc_hblank_expansion_quirk()
1672 if (!drm_dp_128b132b_supported(dpcd) && in detect_dsc_hblank_expansion_quirk()
1673 !(dpcd[DP_RECEIVE_PORT_0_CAP_0] & DP_HBLANK_EXPANSION_CAPABLE)) in detect_dsc_hblank_expansion_quirk()
2062 drm_dp_enhanced_frame_cap(intel_dp->dpcd)); in intel_dp_mst_prepare_probe()
H A Dintel_dp_tunnel.c302 u8 dpcd[DP_RECEIVER_CAP_SIZE]; in intel_dp_tunnel_resume() local
325 err = intel_dp_read_dprx_caps(intel_dp, dpcd); in intel_dp_tunnel_resume()
H A Dintel_display_types.h573 u8 dpcd[DP_PANEL_REPLAY_CAP_SIZE]; member
585 u8 dpcd[EDP_PSR_RECEIVER_CAP_SIZE]; member
1797 u8 dpcd[DP_RECEIVER_CAP_SIZE]; member
H A Dintel_vrr.c58 if (!drm_dp_sink_can_do_video_without_timing_msa(intel_dp->dpcd)) in intel_vrr_is_capable()
/linux/drivers/gpu/drm/i915/gvt/
H A Ddisplay.c536 kfree(port->dpcd); in clean_virtual_dp_monitor()
537 port->dpcd = NULL; in clean_virtual_dp_monitor()
569 port->dpcd = kzalloc_obj(*(port->dpcd)); in setup_virtual_dp_monitor()
570 if (!port->dpcd) { in setup_virtual_dp_monitor()
579 memcpy(port->dpcd->data, dpcd_fix_data, DPCD_HEADER_SIZE); in setup_virtual_dp_monitor()
580 port->dpcd->data_valid = true; in setup_virtual_dp_monitor()
581 port->dpcd->data[DP_SINK_COUNT] = 0x1; in setup_virtual_dp_monitor()
H A Dhandlers.c1146 static void dp_aux_ch_ctl_link_training(struct intel_vgpu_dpcd_data *dpcd, in dp_aux_ch_ctl_link_training() argument
1152 dpcd->data[DP_LANE0_1_STATUS] |= DP_LANE_CR_DONE | in dp_aux_ch_ctl_link_training()
1155 dpcd->data[DP_LANE2_3_STATUS] |= DP_LANE_CR_DONE | in dp_aux_ch_ctl_link_training()
1161 dpcd->data[DP_LANE0_1_STATUS] |= DP_LANE_CHANNEL_EQ_DONE | in dp_aux_ch_ctl_link_training()
1163 dpcd->data[DP_LANE0_1_STATUS] |= DP_LANE_SYMBOL_LOCKED | in dp_aux_ch_ctl_link_training()
1166 dpcd->data[DP_LANE2_3_STATUS] |= DP_LANE_CHANNEL_EQ_DONE | in dp_aux_ch_ctl_link_training()
1168 dpcd->data[DP_LANE2_3_STATUS] |= DP_LANE_SYMBOL_LOCKED | in dp_aux_ch_ctl_link_training()
1171 dpcd->data[DP_LANE_ALIGN_STATUS_UPDATED] |= in dp_aux_ch_ctl_link_training()
1177 dpcd->data[DP_SINK_STATUS] = DP_RECEIVE_PORT_0_STATUS | in dp_aux_ch_ctl_link_training()
1193 struct intel_vgpu_dpcd_data *dpcd = NULL; in dp_aux_ch_ctl_mmio_write() local
[all …]
/linux/drivers/gpu/drm/bridge/synopsys/
H A Ddw-dp.c279 u8 dpcd[DP_RECEIVER_CAP_SIZE]; member
507 memset(link->dpcd, 0, sizeof(link->dpcd)); in dw_dp_link_reset()
517 ret = drm_dp_read_dpcd_caps(&dp->aux, link->dpcd); in dw_dp_link_parse()
521 drm_dp_read_desc(&dp->aux, &link->desc, drm_dp_is_branch(link->dpcd)); in dw_dp_link_parse()
523 if (drm_dp_read_sink_count_cap(connector, link->dpcd, &link->desc)) { in dw_dp_link_parse()
535 link->vsc_sdp_supported = drm_dp_vsc_sdp_supported(&dp->aux, link->dpcd); in dw_dp_link_parse()
537 link->revision = link->dpcd[DP_DPCD_REV]; in dw_dp_link_parse()
540 drm_dp_max_link_rate(link->dpcd)); in dw_dp_link_parse()
542 drm_dp_max_lane_count(link->dpcd)); in dw_dp_link_parse()
544 link->caps.enhanced_framing = drm_dp_enhanced_frame_cap(link->dpcd); in dw_dp_link_parse()
[all …]
/linux/drivers/gpu/drm/nouveau/nvif/
H A Doutp.c113 nvif_outp_dp_train(struct nvif_outp *outp, u8 dpcd[DP_RECEIVER_CAP_SIZE], u8 lttprs, in nvif_outp_dp_train()
126 memcpy(args.dpcd, dpcd, sizeof(args.dpcd)); in nvif_outp_dp_train()
148 args.rate[i].dpcd = rate->dpcd; in nvif_outp_dp_rates()
/linux/drivers/gpu/drm/nouveau/include/nvif/
H A Doutp.h102 int dpcd; /* -1 for non-indexed rates */ member
107 int nvif_outp_dp_train(struct nvif_outp *, u8 dpcd[DP_RECEIVER_CAP_SIZE],
H A Dif0012.h228 __s8 dpcd; member
243 __u8 dpcd[DP_RECEIVER_CAP_SIZE]; member
/linux/drivers/gpu/drm/xlnx/
H A Dzynqmp_dp.c406 u8 dpcd[DP_RECEIVER_CAP_SIZE]; member
787 drm_dp_link_train_clock_recovery_delay(&dp->aux, dp->dpcd); in zynqmp_dp_link_train_cr()
835 if (dp->dpcd[DP_DPCD_REV] >= DP_V1_2 && in zynqmp_dp_link_train_ce()
836 dp->dpcd[DP_MAX_LANE_COUNT] & DP_TPS3_SUPPORTED) in zynqmp_dp_link_train_ce()
852 drm_dp_link_train_channel_eq_delay(&dp->aux, dp->dpcd); in zynqmp_dp_link_train_ce()
950 drm_dp_enhanced_frame_cap(dp->dpcd), in zynqmp_dp_train()
951 dp->dpcd[DP_MAX_DOWNSPREAD] & in zynqmp_dp_train()
1700 ret = drm_dp_dpcd_read(&dp->aux, 0x0, dp->dpcd, in __zynqmp_dp_bridge_detect()
1701 sizeof(dp->dpcd)); in __zynqmp_dp_bridge_detect()
1708 drm_dp_max_link_rate(dp->dpcd), in __zynqmp_dp_bridge_detect()
[all …]
/linux/drivers/gpu/drm/msm/dp/
H A Ddp_ctrl.c394 const u8 *dpcd = ctrl->panel->dpcd; in msm_dp_ctrl_config_ctrl() local
403 if (drm_dp_alternate_scrambler_reset_cap(dpcd)) in msm_dp_ctrl_config_ctrl()
415 if (drm_dp_enhanced_frame_cap(dpcd)) in msm_dp_ctrl_config_ctrl()
1430 ctrl->panel->dpcd, dp_phy, false); in msm_dp_ctrl_link_train_1()
1539 ctrl->panel->dpcd, dp_phy, false); in msm_dp_ctrl_clear_training_pattern()
1554 ctrl->panel->dpcd, dp_phy, false); in msm_dp_ctrl_link_train_2()
1560 if (drm_dp_tps4_supported(ctrl->panel->dpcd)) { in msm_dp_ctrl_link_train_2()
1563 } else if (drm_dp_tps3_supported(ctrl->panel->dpcd)) { in msm_dp_ctrl_link_train_2()
1626 const u8 *dpcd = ctrl->panel->dpcd; in msm_dp_ctrl_link_train() local
1639 if (drm_dp_max_downspread(dpcd)) in msm_dp_ctrl_link_train()
[all …]
H A Ddp_panel.h32 u8 dpcd[DP_RECEIVER_CAP_SIZE]; member
/linux/drivers/gpu/drm/bridge/cadence/
H A Dcdns-mhdp8546-core.c1331 u8 dpcd[DP_RECEIVER_CAP_SIZE]) in cdns_mhdp_fill_sink_caps()
1339 mhdp->sink.ssc = !!(dpcd[DP_MAX_DOWNSPREAD] & in cdns_mhdp_fill_sink_caps()
1344 if (drm_dp_tps3_supported(dpcd)) in cdns_mhdp_fill_sink_caps()
1346 if (drm_dp_tps4_supported(dpcd)) in cdns_mhdp_fill_sink_caps()
1350 mhdp->sink.fast_link = !!(dpcd[DP_MAX_DOWNSPREAD] & in cdns_mhdp_fill_sink_caps()
1356 u8 dpcd[DP_RECEIVER_CAP_SIZE], amp[2]; in cdns_mhdp_link_up() local
1372 err = drm_dp_dpcd_read(&mhdp->aux, addr, dpcd, DP_RECEIVER_CAP_SIZE); in cdns_mhdp_link_up()
1378 mhdp->link.revision = dpcd[0]; in cdns_mhdp_link_up()
1379 mhdp->link.rate = drm_dp_bw_code_to_link_rate(dpcd[1]); in cdns_mhdp_link_up()
1380 mhdp->link.num_lanes = dpcd[2] & DP_MAX_LANE_COUNT_MASK; in cdns_mhdp_link_up()
[all …]
/linux/drivers/gpu/drm/bridge/
H A Dtc358767.c359 u8 dpcd[DP_RECEIVER_CAP_SIZE]; member
843 ret = drm_dp_dpcd_read(&tc->aux, DP_DPCD_REV, tc->link.dpcd, in tc_get_display_props()
848 revision = tc->link.dpcd[DP_DPCD_REV]; in tc_get_display_props()
849 rate = drm_dp_max_link_rate(tc->link.dpcd); in tc_get_display_props()
850 num_lanes = drm_dp_max_lane_count(tc->link.dpcd); in tc_get_display_props()
886 drm_dp_enhanced_frame_cap(tc->link.dpcd) ? in tc_get_display_props()
1194 if (drm_dp_enhanced_frame_cap(tc->link.dpcd)) in tc_main_link_enable()
1245 (drm_dp_enhanced_frame_cap(tc->link.dpcd) ? in tc_main_link_enable()
1519 if (drm_dp_enhanced_frame_cap(tc->link.dpcd)) in tc_edp_stream_enable()
/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_mode.h554 u8 dpcd[DP_RECEIVER_CAP_SIZE]; member
/linux/drivers/gpu/drm/amd/display/amdgpu_dm/
H A Damdgpu_dm_helpers.c543 DRM_INFO("DM_MST: DP%x, %d-lane link detected\n", aconnector->mst_mgr.dpcd[0], in dm_helpers_dp_mst_start_top_mgr()
544 aconnector->mst_mgr.dpcd[2] & DP_MAX_LANE_COUNT_MASK); in dm_helpers_dp_mst_start_top_mgr()

12