From: "Antonino A. Daplas" <adaplas@gmail.com>
To: linux-fbdev-devel@lists.sourceforge.net
Cc: Clive.Jenkins@xerox.com
Subject: Re: Frame swapping
Date: Fri, 09 Dec 2005 05:18:18 +0800 [thread overview]
Message-ID: <4398A31A.70309@gmail.com> (raw)
In-Reply-To: <35786B99AB3FDC45A8215724617919736D9180@gbrwgceumf01.eu.xerox.net>
Jenkins, Clive wrote:
> How is frame swapping done, using the mechanisms provided
> by FB (in 2.4 and 2.6)?
> Can anyone point me to any good code examples in the
> existing FB device drivers?
>
> ["Frame swapping" or "video page flipping" is switching
> to an alternate framebuffer memory area during the
> vertical blank period. This is a common technique to
> achieve animation or a single clean change of picture.]
Use the pan display ioctl, FBIOPAN_DISPLAY. Basically, set
var->yres_virtual to be at least 2x var->yres so you can have
2 video buffers, one visible, one offscreen. Then just do a
ypan ioctl to set which buffer becomes visible and which
becomes offscreen.
Doing it during vblank is a little difficult. You can poll
the VGA registers (which is slow), or set up an interrupt
handler for the driver you are using that waits for vblank.
See www.directfb.org for code on how this can be done. Also,
the directfb source have patches to some drivers that implements
the wating for vblank, such as in matroxfb.
Tony
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
next prev parent reply other threads:[~2005-12-08 21:25 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-08 15:24 Frame swapping Jenkins, Clive
2005-12-08 21:18 ` Antonino A. Daplas [this message]
-- strict thread matches above, loose matches on Subject: below --
2005-12-09 9:37 Jenkins, Clive
2005-12-09 12:27 ` Antonino A. Daplas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4398A31A.70309@gmail.com \
--to=adaplas@gmail.com \
--cc=Clive.Jenkins@xerox.com \
--cc=linux-fbdev-devel@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.