[PATCH 0/2] Refactor to per-vGPU accurate vblank emulator
Colin Xu
Colin.Xu at intel.com
Mon Nov 9 08:02:21 UTC 2020
Re-send for comments.
The vgpu_update_refresh_rate() part need further amendment since the PLL
part of BXL/APL is different compared with other GEN9.
On 2020-11-09 16:00, Colin Xu wrote:
> The patch set includes two patches:
> Patch 1/2: Get accurate vGPU virtual display refresh rate from vreg
> Patch 2/2: Use per-vGPU vblank emulator at dynamic & accurate refresh rate.
>
> The patch set resovles below issues:
> - 16ms matches the refresh rate at 62.5Hz (instead of 60Hz) which isn't
> belong to standard timing. This leads to some frame drop or glitch issue
> during video playback. Since SW expect at least 16.667ms peroid for 60Hz
> or may need higher resolution, however vblank emulator only works at 16.
> - Doesn't respect the fact that with current virtual EDID timing set,
> not all resolutions are enabled at 60Hz. For example, current virtual
> EDID actually supports refresh rate like 56Hz, 59.97Hz, 60Hz, 75Hz, etc.
> - Current vblank emulator use single hrtimer for all vGPUs. Regardsless
> how guest changing the resolution, all vsync interupts are injected at
> 16ms interval.
>
> With the patch set, the actual refresh rate from guest can now always
> match guest OS resolution settings.
> To run quick test, launch a web browser and goto URL: www.displayhz.com
>
> Colin Xu (2):
> drm/i915/gvt: Get accurate vGPU virtual display refresh rate from vreg
> drm/i915/gvt: Refactor GVT vblank emulator for vGPU virtual display
>
> drivers/gpu/drm/i915/gvt/display.c | 113 ++++++++++++++++-----------
> drivers/gpu/drm/i915/gvt/display.h | 13 ++-
> drivers/gpu/drm/i915/gvt/gvt.c | 21 ++++-
> drivers/gpu/drm/i915/gvt/gvt.h | 13 ++-
> drivers/gpu/drm/i915/gvt/handlers.c | 113 +++++++++++++++++++++++++--
> drivers/gpu/drm/i915/gvt/interrupt.c | 31 ++------
> drivers/gpu/drm/i915/gvt/interrupt.h | 6 --
> drivers/gpu/drm/i915/gvt/vgpu.c | 2 -
> 8 files changed, 217 insertions(+), 95 deletions(-)
>
--
Best Regards,
Colin Xu
More information about the intel-gvt-dev
mailing list