[RFC PATCH 3/6] drm/dp: Add is_hpd_asserted() callback to struct drm_dp_aux

Douglas Anderson dianders at chromium.org
Sat Apr 9 02:36:25 UTC 2022


Sometimes it's useful for users of the DP AUX bus (like panels) to be
able to poll HPD. Let's add a callback that allows DP AUX busses
drivers to provide this.

Suggested-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
Signed-off-by: Douglas Anderson <dianders at chromium.org>
---

 include/drm/dp/drm_dp_helper.h | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/include/drm/dp/drm_dp_helper.h b/include/drm/dp/drm_dp_helper.h
index dad1442c91df..a12951319573 100644
--- a/include/drm/dp/drm_dp_helper.h
+++ b/include/drm/dp/drm_dp_helper.h
@@ -2021,6 +2021,20 @@ struct drm_dp_aux {
 	ssize_t (*transfer)(struct drm_dp_aux *aux,
 			    struct drm_dp_aux_msg *msg);
 
+	/**
+	 * @is_hpd_asserted: returns true if HPD is asserted
+	 *
+	 * This is mainly useful for eDP panels drivers to query whether
+	 * an eDP panel has finished powering on. This is an optional function.
+	 *
+	 * NOTE: this function specifically reports the state of the HPD pin
+	 * that's associated with the DP AUX channel. This is different from
+	 * the HPD concept in much of the rest of DRM which is more about
+	 * physical presence of a display. For eDP, for instance, a display is
+	 * assumed always present even if the HPD pin is deasserted.
+	 */
+	bool (*is_hpd_asserted)(struct drm_dp_aux *aux);
+
 	/**
 	 * @i2c_nack_count: Counts I2C NACKs, used for DP validation.
 	 */
-- 
2.35.1.1178.g4f1659d476-goog



More information about the dri-devel mailing list