Lines Matching refs:outp

28 #include "outp.h"
274 ctrl->displayId = BIT(sor->asy.outp->index);
293 ctrl->displayId = BIT(sor->asy.outp->index);
326 ctrl->displayId = BIT(sor->asy.outp->index);
351 ctrl->displayId = BIT(sor->asy.outp->index);
374 ctrl->displayId = BIT(sor->asy.outp->index);
393 ctrl->displayId = BIT(sor->asy.outp->index);
473 struct nvkm_outp *outp = sor->asy.outp;
474 struct nvkm_disp *disp = outp->disp;
482 ctrl->displayId = BIT(outp->index);
495 r535_sor_hdmi_ctrl_audio_mute(struct nvkm_outp *outp, bool mute)
497 struct nvkm_disp *disp = outp->disp;
505 ctrl->displayId = BIT(outp->index);
511 r535_sor_hdmi_ctrl_audio(struct nvkm_outp *outp, bool enable)
513 struct nvkm_disp *disp = outp->disp;
521 ctrl->displayId = BIT(outp->index);
549 r535_sor_hdmi_ctrl_audio(sor->asy.outp, enable);
550 r535_sor_hdmi_ctrl_audio_mute(sor->asy.outp, !enable);
572 ctrl->displayId = BIT(sor->asy.outp->index);
680 r535_outp_release(struct nvkm_outp *outp)
682 outp->disp->rm.assigned_sors &= ~BIT(outp->ior->id);
683 outp->ior->asy.outp = NULL;
684 outp->ior = NULL;
688 r535_outp_acquire(struct nvkm_outp *outp, bool hda)
690 struct nvkm_disp *disp = outp->disp;
701 ctrl->displayId = BIT(outp->index);
713 if (ctrl->sorAssignListWithTag[or].displayMask & BIT(outp->index)) {
728 nvkm_outp_acquire_ior(outp, NVKM_OUTP_USER, ior);
758 r535_outp_inherit(struct nvkm_outp *outp)
760 struct nvkm_disp *disp = outp->disp;
770 if (displayid == BIT(outp->index)) {
835 r535_outp_dfp_get_info(struct nvkm_outp *outp)
838 struct nvkm_disp *disp = outp->disp;
845 ctrl->displayId = BIT(outp->index);
861 r535_outp_detect(struct nvkm_outp *outp)
864 struct nvkm_disp *disp = outp->disp;
873 ctrl->displayMask = BIT(outp->index);
881 if (ctrl->displayMask & BIT(outp->index)) {
882 ret = r535_outp_dfp_get_info(outp);
894 r535_dp_mst_id_put(struct nvkm_outp *outp, u32 id)
897 struct nvkm_disp *disp = outp->disp;
910 r535_dp_mst_id_get(struct nvkm_outp *outp, u32 *pid)
913 struct nvkm_disp *disp = outp->disp;
923 ctrl->displayId = BIT(outp->index);
936 r535_dp_drive(struct nvkm_outp *outp, u8 lanes, u8 pe[4], u8 vs[4])
939 struct nvkm_disp *disp = outp->disp;
946 ctrl->displayId = BIT(outp->index);
956 r535_dp_train_target(struct nvkm_outp *outp, u8 target, bool mst, u8 link_nr, u8 link_bw)
958 struct nvkm_disp *disp = outp->disp;
973 if (outp->dp.dpcd[DPCD_RC02] & DPCD_RC02_ENHANCED_FRAME_CAP)
977 (outp->dp.dpcd[DPCD_RC02] & 0x20) &&
978 !(outp->dp.dpcd[DPCD_RC03] & DPCD_RC03_TPS4_SUPPORTED))
989 ctrl->displayId = BIT(outp->index);
1018 r535_dp_train(struct nvkm_outp *outp, bool retrain)
1020 for (int target = outp->dp.lttprs; target >= 0; target--) {
1021 int ret = r535_dp_train_target(outp, target, outp->dp.lt.mst,
1022 outp->dp.lt.nr,
1023 outp->dp.lt.bw);
1032 r535_dp_rates(struct nvkm_outp *outp)
1035 struct nvkm_disp *disp = outp->disp;
1037 if (outp->conn->info.type != DCB_CONNECTOR_eDP ||
1038 !outp->dp.rates || outp->dp.rate[0].dpcd < 0)
1041 if (WARN_ON(outp->dp.rates > ARRAY_SIZE(ctrl->linkRateTbl)))
1049 ctrl->displayId = BIT(outp->index);
1050 for (int i = 0; i < outp->dp.rates; i++)
1051 ctrl->linkRateTbl[outp->dp.rate[i].dpcd] = outp->dp.rate[i].rate * 10 / 200;
1057 r535_dp_aux_xfer(struct nvkm_outp *outp, u8 type, u32 addr, u8 *data, u8 *psize)
1059 struct nvkm_disp *disp = outp->disp;
1069 ctrl->displayId = BIT(outp->index);
1094 r535_dp_aux_pwr(struct nvkm_outp *outp, bool pu)
1100 r535_dp_release(struct nvkm_outp *outp)
1102 if (!outp->dp.lt.bw) {
1103 if (!WARN_ON(!outp->dp.rates))
1104 outp->dp.lt.bw = outp->dp.rate[0].rate / 27000;
1106 outp->dp.lt.bw = 0x06;
1109 outp->dp.lt.nr = 0;
1111 r535_dp_train_target(outp, 0, outp->dp.lt.mst, outp->dp.lt.nr, outp->dp.lt.bw);
1112 r535_outp_release(outp);
1116 r535_dp_acquire(struct nvkm_outp *outp, bool hda)
1120 ret = r535_outp_acquire(outp, hda);
1143 r535_tmds_edid_get(struct nvkm_outp *outp, u8 *data, u16 *psize)
1146 struct nvkm_disp *disp = outp->disp;
1155 ctrl->displayId = BIT(outp->index);
1190 struct nvkm_outp *outp;
1266 ret = nvkm_outp_new_(&r535_tmds, disp, id, &dcbE, &outp);
1313 ret = nvkm_outp_new_(&r535_dp, disp, id, &dcbE, &outp);
1317 outp->dp.mst = mst;
1318 outp->dp.increased_wm = wm;
1322 outp->conn = conn;
1323 list_add_tail(&outp->head, &disp->outps);