On 09/04/2022 05:36, Douglas Anderson wrote:
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 <[email protected]>
Signed-off-by: Douglas Anderson <[email protected]>

Reviewed-by: Dmitry Baryshkov <[email protected]>

---

  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.
         */


--
With best wishes
Dmitry

Reply via email to