]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/gvt: Fix virtual display setup for BXT/APL
authorColin Xu <colin.xu@intel.com>
Mon, 9 Nov 2020 07:39:22 +0000 (15:39 +0800)
committerZhenyu Wang <zhenyuw@linux.intel.com>
Tue, 10 Nov 2020 06:46:00 +0000 (14:46 +0800)
commit4dc4ca5185b9b3016fdc12396b1a3ca3dfa7464b
treed7d3d398a4e5ea9d227e26ee4066832a64b8a8fd
parent9bb28c2c212b52a12319db89dad847e9724d6bfb
drm/i915/gvt: Fix virtual display setup for BXT/APL

Program display related vregs to proper value at initialization, setup
virtual monitor and hotplug.

vGPU virtual display vregs inherit the value from pregs. The virtual DP
monitor is always setup on PORT_B for BXT/APL. However the host may
connect monitor on other PORT or without any monitor connected. Without
properly setup PIPE/DDI/PLL related vregs, guest driver may not setup
the virutal display as expected, and the guest desktop may not be
created.
Since only one virtual display is supported, enable PIPE_A only. And
enable transcoder/DDI/PLL based on which port is setup for BXT/APL.

V2:
Revise commit message.

V3:
set_edid should on PORT_B for BXT.
Inject hpd event for BXT.

V4:
Temporarily disable vfio edid on BXT/APL until issue fixed.

V5:
Rebase to use new HPD define GEN8_DE_PORT_HOTPLUG for BXT.
Put vfio edid disabling on BXT/APL to a separate patch.

Acked-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Colin Xu <colin.xu@intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20201109073922.757759-1-colin.xu@intel.com
drivers/gpu/drm/i915/gvt/display.c
drivers/gpu/drm/i915/gvt/mmio.c