]> git.baikalelectronics.ru Git - kernel.git/commit
staging: vboxvideo: Change address of scanout buffer on page-flip
authorHans de Goede <hdegoede@redhat.com>
Mon, 10 Sep 2018 18:30:39 +0000 (20:30 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 11 Sep 2018 16:39:54 +0000 (18:39 +0200)
commitd43770121954607917ff82c72ba68f3a002f7e7a
tree1dfaa4a83e05d59d98a585a1830c4fb1d1f164c6
parentf23805bf1a6b06ea8c82c4dde549403e22ba97c6
staging: vboxvideo: Change address of scanout buffer on page-flip

Commit 3561126df3a0 ("staging: vboxvideo: Add page-flip support") only
calls vbox_crtc_do_set_base() on page-flips, but despite that function's
name it only pins the new fb, unpins the old fb and sets
vbox_crtc->fb_offset. It does not program the hardware to scan out at the
new vbox_crtc->fb_offset value.

This was causing only every other frame (assuming page-flipping between 2
buffers) to be shown since we kept scanning out of the old (now unpinned!)
buffer.

This commit fixes this by adding code to vbox_crtc_page_flip() to tell
the hardware to scanout from the new fb_offset.

Fixes: 3561126df3a0 ("staging: vboxvideo: Add page-flip support")
Cc: Steve Longerbeam <steve_longerbeam@mentor.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/vboxvideo/vbox_mode.c