Displaying 11 results from an estimated 11 matches for "drm_dp_read_dpcd_cap".
Did you mean:
drm_dp_read_dpcd_caps
2020 Aug 11
0
[RFC 19/20] drm/i915/dp: Extract drm_dp_read_dpcd_caps()
...REV],
+ dpcd_ext[DP_DPCD_REV]);
+ return 0;
+ }
+
+ if (!memcmp(dpcd, dpcd_ext, sizeof(dpcd_ext)))
+ return 0;
+
+ DRM_DEBUG_KMS("%s: Base DPCD: %*ph\n",
+ aux->name, DP_RECEIVER_CAP_SIZE, dpcd);
+
+ memcpy(dpcd, dpcd_ext, sizeof(dpcd_ext));
+
+ return 0;
+}
+
+/**
+ * drm_dp_read_dpcd_caps() - read DPCD caps and extended DPCD caps if
+ * available
+ * @aux: DisplayPort AUX channel
+ * @dpcd: Buffer to store the resulting DPCD in
+ *
+ * Attempts to read the base DPCD caps for @aux. Additionally, this function
+ * checks for and reads the extended DPRX caps (%DP_DP13_DPCD_REV) if
+ *...
2020 Aug 19
2
[RFC 19/20] drm/i915/dp: Extract drm_dp_read_dpcd_caps()
...if (!memcmp(dpcd, dpcd_ext, sizeof(dpcd_ext)))
> + return 0;
> +
> + DRM_DEBUG_KMS("%s: Base DPCD: %*ph\n",
> + aux->name, DP_RECEIVER_CAP_SIZE, dpcd);
> +
> + memcpy(dpcd, dpcd_ext, sizeof(dpcd_ext));
> +
> + return 0;
> +}
> +
> +/**
> + * drm_dp_read_dpcd_caps() - read DPCD caps and extended DPCD caps if
> + * available
> + * @aux: DisplayPort AUX channel
> + * @dpcd: Buffer to store the resulting DPCD in
> + *
> + * Attempts to read the base DPCD caps for @aux. Additionally, this function
> + * checks for and reads the extended DPRX c...
2020 Aug 11
0
[RFC 20/20] drm/nouveau/kms: Start using drm_dp_read_dpcd_caps()
...utp->dp.dpcd;
- ret = drm_dp_dpcd_read(aux, DP_DPCD_REV, dpcd, DP_RECEIVER_CAP_SIZE);
- if (ret == DP_RECEIVER_CAP_SIZE && dpcd[DP_DPCD_REV]) {
- ret = drm_dp_read_desc(aux, &outp->dp.desc,
- drm_dp_is_branch(dpcd));
- if (ret < 0)
- goto out;
- } else {
+ ret = drm_dp_read_dpcd_caps(aux, dpcd);
+ if (ret < 0)
+ goto out;
+
+ ret = drm_dp_read_desc(aux, &outp->dp.desc, drm_dp_is_branch(dpcd));
+ if (ret < 0)
goto out;
- }
if (nouveau_mst) {
mstm = outp->dp.mstm;
--
2.26.2
2023 Jul 07
2
[PATCH] drm/nouveau/nvkm/dp: Add hack to fix DP 1.3+ DPCD issues
...he same connector.
Ideally to fix this, we want to start setting up the drm_dp_aux device in
NVKM before we've made contact with the DRM side - which should be pretty
easy to accomplish (I'm already working on it!). Until then however, let's
workaround this problem by porting a copy of drm_dp_read_dpcd_caps() into
NVKM - which should fix this issue.
Issue: https://gitlab.freedesktop.org/drm/nouveau/-/issues/211
Signed-off-by: Lyude Paul <lyude at redhat.com>
---
drivers/gpu/drm/nouveau/nvkm/engine/disp/dp.c | 48 ++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)
diff --git...
2020 Aug 11
29
[RFC 00/20] drm/dp, i915, nouveau: Cleanup nouveau HPD and add DP features from i915
...downstream DP clock limits for mode
validation
drm/i915/dp: Extract drm_dp_has_sink_count()
drm/i915/dp: Extract drm_dp_get_sink_count()
drm/nouveau/kms/nv50-: Add support for DP_SINK_COUNT
drm/nouveau/kms: Don't change EDID when it hasn't actually changed
drm/i915/dp: Extract drm_dp_read_dpcd_caps()
drm/nouveau/kms: Start using drm_dp_read_dpcd_caps()
drivers/gpu/drm/drm_dp_helper.c | 150 ++++++++++
drivers/gpu/drm/i915/display/intel_dp.c | 130 ++-------
drivers/gpu/drm/i915/display/intel_dp.h | 1 -
drivers/gpu/drm/i915/display/intel_lspcon.c | 2 +-
drivers/g...
2020 Aug 25
22
[RFC v4 00/20] drm/dp, i915, nouveau: Cleanup nouveau HPD and add DP features from i915
...downstream DP clock limits for mode
validation
drm/i915/dp: Extract drm_dp_has_sink_count()
drm/i915/dp: Extract drm_dp_get_sink_count()
drm/nouveau/kms/nv50-: Add support for DP_SINK_COUNT
drm/nouveau/kms: Don't change EDID when it hasn't actually changed
drm/i915/dp: Extract drm_dp_read_dpcd_caps()
drm/nouveau/kms: Start using drm_dp_read_dpcd_caps()
drivers/gpu/drm/drm_dp_helper.c | 167 +++++++++++
drivers/gpu/drm/i915/display/intel_dp.c | 124 ++------
drivers/gpu/drm/i915/display/intel_dp.h | 1 -
drivers/gpu/drm/i915/display/intel_lspcon.c | 2 +-
drivers/g...
2020 Aug 20
22
[RFC v2 00/20] drm/dp, i915, nouveau: Cleanup nouveau HPD and add DP features from i915
...downstream DP clock limits for mode
validation
drm/i915/dp: Extract drm_dp_has_sink_count()
drm/i915/dp: Extract drm_dp_get_sink_count()
drm/nouveau/kms/nv50-: Add support for DP_SINK_COUNT
drm/nouveau/kms: Don't change EDID when it hasn't actually changed
drm/i915/dp: Extract drm_dp_read_dpcd_caps()
drm/nouveau/kms: Start using drm_dp_read_dpcd_caps()
drivers/gpu/drm/drm_dp_helper.c | 167 +++++++++++
drivers/gpu/drm/i915/display/intel_dp.c | 124 ++------
drivers/gpu/drm/i915/display/intel_dp.h | 1 -
drivers/gpu/drm/i915/display/intel_lspcon.c | 2 +-
drivers/g...
2020 Aug 26
23
[PATCH v5 00/20] drm/dp, i915, nouveau: Cleanup nouveau HPD and add DP features from i915
...ream DP clock limits for mode
validation
drm/i915/dp: Extract drm_dp_read_sink_count_cap()
drm/i915/dp: Extract drm_dp_read_sink_count()
drm/nouveau/kms/nv50-: Add support for DP_SINK_COUNT
drm/nouveau/kms: Don't change EDID when it hasn't actually changed
drm/i915/dp: Extract drm_dp_read_dpcd_caps()
drm/nouveau/kms: Start using drm_dp_read_dpcd_caps()
drivers/gpu/drm/drm_dp_helper.c | 187 +++++++++++-
drivers/gpu/drm/drm_dp_mst_topology.c | 22 ++
drivers/gpu/drm/i915/display/intel_dp.c | 124 ++------
drivers/gpu/drm/i915/display/intel_dp.h | 1 -
drivers/...
2024 Dec 11
4
[PATCH v2 0/4] drm/dp: Rework LTTPR transparent mode handling and add support to msm driver
Looking at both i915 and nouveau DP drivers, both are setting the first
LTTPR (if found) in transparent mode first and then in non-transparent
mode, just like the DP v2.0 specification mentions in section 3.6.6.1.
Being part of the standard, setting the LTTPR in a specific operation mode
can be easily moved in the generic framework. So do that by adding a new
helper.
Then, the msm DP driver is
2025 Jan 03
4
[PATCH v3 0/4] drm/dp: Rework LTTPR transparent mode handling and add support to msm driver
Looking at both i915 and nouveau DP drivers, both are setting the first
LTTPR (if found) in transparent mode first and then in non-transparent
mode, just like the DP v2.0 specification mentions in section 3.6.6.1.
Being part of the standard, setting the LTTPR in a specific operation mode
can be easily moved in the generic framework. So do that by adding a new
helper.
Then, the msm DP driver is
2025 Feb 03
7
[PATCH v5 0/4] drm/dp: Rework LTTPR transparent mode handling and add support to msm driver
Looking at both i915 and nouveau DP drivers, both are setting the first
LTTPR (if found) in transparent mode first and then in non-transparent
mode, just like the DP v2.0 specification mentions in section 3.6.6.1.
Being part of the standard, setting the LTTPR in a specific operation mode
can be easily moved in the generic framework. So do that by adding a new
helper.
Then, the msm DP driver is