From: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
To: Sonika Jindal <sonika.jindal@intel.com>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 3/3] drm/i915/bxt: WA for swapped HPD pins in A stepping
Date: Mon, 10 Aug 2015 10:58:55 +0530 [thread overview]
Message-ID: <55C83697.7020508@intel.com> (raw)
In-Reply-To: <1439183136-23798-4-git-send-email-sonika.jindal@intel.com>
Reviewed-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
On 8/10/2015 10:35 AM, Sonika Jindal wrote:
> WA for BXT A0/A1, where DDIB's HPD pin is swapped to DDIA, so enabling
> DDIA HPD pin in place of DDIB.
>
> v2: For DP, irq_port is used to determine the encoder instead of
> hpd_pin and removing the edp HPD logic because port A HPD is not
> present(Imre)
> v3: Rebased on top of Imre's patchset for enabling HPD on PORT A.
> Added hpd_pin swapping for intel_dp_init_connector, setting encoder
> for PORT_A as per the WA in irq_port (Imre)
> v4: Dont enable interrupt for edp, also reframe the description (Siva)
> v5: Don’t check for PORT_A in intel_ddi_init to update dig_port,
> instead avoid setting hpd_pin itself (Imre)
>
> Signed-off-by: Sonika Jindal <sonika.jindal@intel.com>
> ---
> drivers/gpu/drm/i915/intel_ddi.c | 10 +++++++++-
> drivers/gpu/drm/i915/intel_dp.c | 2 ++
> drivers/gpu/drm/i915/intel_hdmi.c | 9 ++++++++-
> 3 files changed, 19 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
> index e2c6f73..777e3a3 100644
> --- a/drivers/gpu/drm/i915/intel_ddi.c
> +++ b/drivers/gpu/drm/i915/intel_ddi.c
> @@ -3225,7 +3225,15 @@ void intel_ddi_init(struct drm_device *dev, enum port port)
> goto err;
>
> intel_dig_port->hpd_pulse = intel_dp_hpd_pulse;
> - dev_priv->hotplug.irq_port[port] = intel_dig_port;
> + /*
> + * On BXT A0/A1, sw needs to activate DDIA HPD logic and
> + * interrupts to check the external panel connection.
> + */
> + if (IS_BROXTON(dev_priv) && (INTEL_REVID(dev) < BXT_REVID_B0)
> + && port == PORT_B)
> + dev_priv->hotplug.irq_port[PORT_A] = intel_dig_port;
> + else
> + dev_priv->hotplug.irq_port[port] = intel_dig_port;
> }
>
> /* In theory we don't need the encoder->type check, but leave it just in
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 5a614c9..7fab3e5 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -5788,6 +5788,8 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
> break;
> case PORT_B:
> intel_encoder->hpd_pin = HPD_PORT_B;
> + if (IS_BROXTON(dev_priv) && (INTEL_REVID(dev) < BXT_REVID_B0))
> + intel_encoder->hpd_pin = HPD_PORT_A;
> break;
> case PORT_C:
> intel_encoder->hpd_pin = HPD_PORT_C;
> diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
> index 70bad5b..94fa716 100644
> --- a/drivers/gpu/drm/i915/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> @@ -1973,7 +1973,14 @@ void intel_hdmi_init_connector(struct intel_digital_port *intel_dig_port,
> intel_hdmi->ddc_bus = GMBUS_PIN_1_BXT;
> else
> intel_hdmi->ddc_bus = GMBUS_PIN_DPB;
> - intel_encoder->hpd_pin = HPD_PORT_B;
> + /*
> + * On BXT A0/A1, sw needs to activate DDIA HPD logic and
> + * interrupts to check the external panel connection.
> + */
> + if (IS_BROXTON(dev_priv) && (INTEL_REVID(dev) < BXT_REVID_B0))
> + intel_encoder->hpd_pin = HPD_PORT_A;
> + else
> + intel_encoder->hpd_pin = HPD_PORT_B;
> break;
> case PORT_C:
> if (IS_BROXTON(dev_priv))
--
regards,
Sivakumar
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2015-08-10 5:28 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-10 5:05 [PATCH 0/3] Add BXT A0/A1 WA for HPD swap in generic way Sonika Jindal
2015-08-10 5:05 ` [PATCH 1/3] drm/i915: Dont enable hpd for eDP Sonika Jindal
2015-08-10 5:24 ` Sivakumar Thulasimani
2015-08-10 11:37 ` Jani Nikula
2015-08-10 11:38 ` Sivakumar Thulasimani
2015-08-10 12:14 ` Jani Nikula
2015-08-10 12:16 ` Ville Syrjälä
2015-08-10 12:21 ` Sivakumar Thulasimani
2015-08-12 12:56 ` Daniel Vetter
2015-08-13 4:05 ` Sivakumar Thulasimani
2015-08-13 15:07 ` Ville Syrjälä
2015-08-10 5:05 ` [PATCH 2/3] drm/i915/bxt: Add HPD support for DDIA Sonika Jindal
2015-08-10 5:27 ` Sivakumar Thulasimani
2015-08-10 5:05 ` [PATCH 3/3] drm/i915/bxt: WA for swapped HPD pins in A stepping Sonika Jindal
2015-08-10 5:28 ` Sivakumar Thulasimani [this message]
2015-08-12 12:58 ` Daniel Vetter
2015-08-13 12:48 ` shuang.he
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=55C83697.7020508@intel.com \
--to=sivakumar.thulasimani@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=sonika.jindal@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.