drm/i915: Setting pch_id for HSW/BDW in virtual environment
authorXiong Zhang <xiong.y.zhang@intel.com>
Thu, 15 Jun 2017 03:11:45 +0000 (11:11 +0800)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 6 Jul 2017 09:30:27 +0000 (11:30 +0200)
commit817aef5d86f124e94bfc871ecd6fb2afa4f55417
treef43e4ed84e01ea4db9110f93a881b6b6d270ece8
parent0a7a0986559d85c9926cbe5b1570212e09008a7c
drm/i915: Setting pch_id for HSW/BDW in virtual environment

In a IGD passthrough environment, the real ISA bridge may doesn't exist.
then pch_id couldn't be correctly gotten from ISA bridge, but pch_id is
used to identify LPT_H and LPT_LP. Currently i915 treat all LPT pch as
LPT_H,then errors occur when i915 runs on LPT_LP machines with igd
passthrough.

This patch set pch_id for HSW/BDW according to IGD type and isn't fully
correct. But it solves such issue on HSW/BDW ult/ulx machines.
QA CI system is blocked by this issue for a long time, it's better that
we could merge it to unblock QA CI system.

We know the root cause is in device model of virtual passthrough, and
will resolve it in the future with several parts cooperation in kernel,
qemu and xen.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99938

Signed-off-by: Xiong Zhang <xiong.y.zhang@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1497496305-5364-1-git-send-email-xiong.y.zhang@intel.com
drivers/gpu/drm/i915/i915_drv.c