]> git.proxmox.com Git - mirror_ubuntu-hirsute-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)
commita5a8ef937cfa79167f4b2a5602092b8d14fd6b9a
treed7d3d398a4e5ea9d227e26ee4066832a64b8a8fd
parent385fc38c1f97387c47113254d8de2cb0dbf133bd
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