From: Jani Nikula <jani.nikula@linux.intel.com>
To: Naladala Ramanaidu <ramanaidu.naladala@intel.com>,
intel-gfx@lists.freedesktop.org
Cc: ankit.k.nautiyal@intel.com,
Naladala Ramanaidu <ramanaidu.naladala@intel.com>
Subject: Re: [PATCH v1 2/2] drm/i915/hdmi: Read EDID over GPIO when the debugfs flag is set
Date: Mon, 31 Aug 2026 17:02:14 +0300 [thread overview]
Message-ID: <9166040c46d8ec390662b19c9b4268311dc05896@intel.com> (raw)
In-Reply-To: <20260826152444.2822821-3-ramanaidu.naladala@intel.com>
On Wed, 26 Aug 2026, Naladala Ramanaidu <ramanaidu.naladala@intel.com> wrote:
> Normally the EDID is read over GMBUS, and GPIO bit-banging is only used
> if that read fails. Now the debugfs flag is checked first. If it is set,
> the DDC adapter is put in bit-banging mode before the read and put back
> after it.
>
> The flag is read once with READ_ONCE(), so the enable and the restore
> always match even if the flag changes at the same time. The GMBUS retry
> is not needed in this case, because the read already used GPIO.
This should just be folded to one patch that actually does something
with the debugfs.
>
> Assisted-by: Claude:claude-opus-5
> Signed-off-by: Naladala Ramanaidu <ramanaidu.naladala@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_hdmi.c | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
> index 38915f19d3e5..462ccfc840d4 100644
> --- a/drivers/gpu/drm/i915/display/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
> @@ -2555,13 +2555,23 @@ intel_hdmi_set_edid(struct drm_connector *_connector)
> struct i2c_adapter *ddc = connector->base.ddc;
> struct ref_tracker *wakeref;
> const struct drm_edid *drm_edid;
> + bool force_bit_banging = READ_ONCE(intel_hdmi->force_bit_banging);
> bool connected = false;
>
> wakeref = intel_display_power_get(display, POWER_DOMAIN_GMBUS);
>
> + if (force_bit_banging) {
> + drm_dbg_kms(display->drm,
> + "[CONNECTOR:%d:%s] HDMI EDID read forced to GPIO bit-banging\n",
> + connector->base.base.id, connector->base.name);
> + intel_gmbus_force_bit(ddc, true);
> + }
> +
Okay, now that I see the implementation... why is any of this HDMI
specific? You could make it independent of the connector type. There are
other connectors that use intel_gmbus_force_bit().
And you could just call intel_gmbus_force_bit() directly from the
debugfs handler. It already supports nesting with a count. You don't
have to modify any of this code, at all. The debug logging is there in
intel_gmbus_force_bit(). Everything is taken care of.
BR,
Jani.
> drm_edid = drm_edid_read_ddc(&connector->base, ddc);
>
> - if (!drm_edid && !intel_gmbus_is_forced_bit(ddc)) {
> + if (force_bit_banging)
> + intel_gmbus_force_bit(ddc, false);
> + else if (!drm_edid && !intel_gmbus_is_forced_bit(ddc)) {
> drm_dbg_kms(display->drm,
> "HDMI GMBUS EDID read failed, retry using GPIO bit-banging\n");
> intel_gmbus_force_bit(ddc, true);
--
Jani Nikula, Intel
next prev parent reply other threads:[~2026-08-31 14:02 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-26 15:24 [PATCH v1 0/2] drm/i915/hdmi: Add debugfs knob to force EDID reads over GPIO Naladala Ramanaidu
2026-08-26 15:24 ` [PATCH v1 1/2] drm/i915/hdmi: Add debugfs support " Naladala Ramanaidu
2026-08-31 13:49 ` Jani Nikula
2026-09-10 18:27 ` Naladala, Ramanaidu
2026-08-26 15:24 ` [PATCH v1 2/2] drm/i915/hdmi: Read EDID over GPIO when the debugfs flag is set Naladala Ramanaidu
2026-08-31 11:15 ` Nautiyal, Ankit K
2026-09-10 18:38 ` Naladala, Ramanaidu
2026-08-31 14:02 ` Jani Nikula [this message]
2026-09-10 18:32 ` Naladala, Ramanaidu
2026-08-26 16:24 ` ✓ i915.CI.BAT: success for drm/i915/hdmi: Add debugfs knob to force EDID reads over GPIO Patchwork
2026-08-26 23:02 ` ✗ i915.CI.Full: failure " Patchwork
-- strict thread matches above, loose matches on Subject: below --
2026-08-26 15:23 [PATCH v1 0/2] " Naladala Ramanaidu
2026-08-26 15:23 ` [PATCH v1 2/2] drm/i915/hdmi: Read EDID over GPIO when the debugfs flag is set Naladala Ramanaidu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9166040c46d8ec390662b19c9b4268311dc05896@intel.com \
--to=jani.nikula@linux.intel.com \
--cc=ankit.k.nautiyal@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=ramanaidu.naladala@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.