All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Peres <martin.peres@linux.intel.com>
To: "Zhang, Xiong Y" <xiong.y.zhang@intel.com>,
	"ville.syrjala@linux.intel.com" <ville.syrjala@linux.intel.com>
Cc: "intel-gfx@lists.freedesktop.org" <intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH] drm/i915: Setting pch_id for Gen7.5+ in virtual environment
Date: Fri, 31 Mar 2017 12:37:00 +0300	[thread overview]
Message-ID: <bc96fec7-7ae5-8238-dc61-9850cbc3ee0c@linux.intel.com> (raw)
In-Reply-To: <8082FF9BCB2B054996454E47167FF4EC1C491B42@SHSMSX104.ccr.corp.intel.com>



On 30/03/17 08:39, Zhang, Xiong Y wrote:
>> On Wed, Mar 29, 2017 at 05:02:47PM +0800, Xiong Zhang wrote:
>>> In a virtual passthrough environment, the ISA bridge isn't able to
>>> be passed through. So pch_id couldn't be gotten from ISA bridge, but
>>> pch_id is used to identify LPT_H and LPT_LP, this patch set pch_id
>>> according to IGD type.
>>>
>>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99938
>>>
>>> Signed-off-by: Xiong Zhang <xiong.y.zhang@intel.com>
>>> ---
>>>  drivers/gpu/drm/i915/i915_drv.c | 8 ++++++++
>>>  1 file changed, 8 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/i915/i915_drv.c
>> b/drivers/gpu/drm/i915/i915_drv.c
>>> index 8b807a9..32a9bff 100644
>>> --- a/drivers/gpu/drm/i915/i915_drv.c
>>> +++ b/drivers/gpu/drm/i915/i915_drv.c
>>> @@ -135,9 +135,17 @@ static enum intel_pch intel_virt_detect_pch(struct
>> drm_i915_private *dev_priv)
>>>  		DRM_DEBUG_KMS("Assuming CouarPoint PCH\n");
>>>  	} else if (IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv)) {
>>>  		ret = PCH_LPT;
>>> +		if (IS_HSW_ULT(dev_priv) || IS_BDW_ULT(dev_priv))
>>> +			dev_priv->pch_id = INTEL_PCH_LPT_LP_DEVICE_ID_TYPE;
>>> +		else
>>> +			dev_priv->pch_id = INTEL_PCH_LPT_DEVICE_ID_TYPE;
>>>  		DRM_DEBUG_KMS("Assuming LynxPoint PCH\n");
>>>  	} else if (IS_SKYLAKE(dev_priv) || IS_KABYLAKE(dev_priv)) {
>>>  		ret = PCH_SPT;
>>> +		if (IS_SKL_ULT(dev_priv) || IS_KBL_ULT(dev_priv))
>>> +			dev_priv->pch_id = INTEL_PCH_SPT_LP_DEVICE_ID_TYPE;
>>> +		else
>>> +			dev_priv->pch_id = INTEL_PCH_SPT_DEVICE_ID_TYPE;
>>
>> I'm not 100% sure the ULT/ULX <=> LP thing always holds. I *think* it
>> should but I've never been able to convince myself totally.
> [Zhang, Xiong Y] For BDW ULT/ULX, it should be LP. A picture from https://gfxspecs.intel.com/Predator/Home/Index/4216 could confirm this.
> For HSW ULT/ULX, I couldn't find a material to confirm this.
> Anyway I copy this condition from the WARN_ON() in intel_detect_pch()
>
> For SKL/KBL ULT/ULX, I couldn't find a material to confirm this neither.
>
>> As far as KBL goes, maybe we want PCH_KBP for it? Although I don't actually
>> know why we even make the distinction between the two since they seem
>> identical for us, and we don't distinguish LPT vs. WPT either. Rodrigo?
> [Zhang, Xiong Y] For PCH_KBP, I couldn't find out which KBL type will co-work with it.
> As the real ISA Bridge doesn't exist in a emulated guest machine, we couldn't get the real and accurate pch_id in guest. In such passthrough virtual environment, the only real HW is IGD which is passed through to guest, we could only assume the pch_id from this IGD.
> Fortunately pch_id is only used to identify LPT_LP and LPT_H currently.
> Without this patch, pch_id is totally wrong. And on LPT_LP platform without this patch, the local HDMI/DP display couldn't lightup when guest boot up. But this patch could only remedy part of pch_id. Currently I have two plans to improve this patch:
> 1) only remain pch_id assuming for HSW and BDW, as this is really we need to fix the bug.
>   Delete pch_id assuming for SKL and KBL, as currently i915 driver don't use it.
> 2) Claim this patch's limitation in commit message.
> Any suggestion ?

Guys, any updates on this?

This blocks the testing of the following tests on fi-bdw-gvtdvm:
igt@drv_module_reload@basic-reload
igt@drv_module_reload@basic-reload-final
igt@drv_module_reload@basic-reload-inject
igt@gem_exec_suspend@basic-s3
igt@gem_exec_suspend@basic-s4-devices
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c

Thanks,
Martin
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  parent reply	other threads:[~2017-03-31  9:37 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-29  9:02 [PATCH] drm/i915: Setting pch_id for Gen7.5+ in virtual environment Xiong Zhang
2017-03-29  9:15 ` ✓ Fi.CI.BAT: success for " Patchwork
2017-03-29 11:22 ` [PATCH] " Ville Syrjälä
2017-03-30  5:39   ` Zhang, Xiong Y
2017-03-30  6:33     ` Jani Nikula
2017-03-31  9:37     ` Martin Peres [this message]
2017-04-12 14:00       ` Martin Peres

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=bc96fec7-7ae5-8238-dc61-9850cbc3ee0c@linux.intel.com \
    --to=martin.peres@linux.intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=ville.syrjala@linux.intel.com \
    --cc=xiong.y.zhang@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.