]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
drm/vblank: Allow dynamic per-crtc max_vblank_count
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 27 Nov 2018 18:20:04 +0000 (20:20 +0200)
committerKhalid Elmously <khalid.elmously@canonical.com>
Thu, 26 Sep 2019 04:34:52 +0000 (00:34 -0400)
commitc6c4694fb457f57662c903e9329dd1777ad7b4a3
tree527edf398563fdbb9b951b38e33a722f301eecba
parent12082bbd3dfe199f04412857854e8f26bbaf5792
drm/vblank: Allow dynamic per-crtc max_vblank_count

BugLink: https://bugs.launchpad.net/bugs/1844558
[ Upstream commit ed20151a7699bb2c77eba3610199789a126940c4 ]

On i965gm we need to adjust max_vblank_count dynamically
depending on whether the TV encoder is used or not. To
that end add a per-crtc max_vblank_count that takes
precedence over its device wide counterpart. The driver
can now call drm_crtc_set_max_vblank_count() to configure
the per-crtc value before calling drm_vblank_on().

Also looks like there was some discussion about exynos needing
similar treatment.

v2: Drop the extra max_vblank_count!=0 check for the
    WARN(last!=current), will take care of it in i915 code (Daniel)
    WARN_ON(!inmodeset) (Daniel)
    WARN_ON(dev->max_vblank_count)
    Pimp up the docs (Daniel)

Cc: stable@vger.kernel.org
Cc: Inki Dae <inki.dae@samsung.com>
Cc: Daniel Vetter <daniel@ffwll.ch>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20181127182004.28885-1-ville.syrjala@linux.intel.com
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
drivers/gpu/drm/drm_vblank.c
include/drm/drm_device.h
include/drm/drm_vblank.h