From: Geert Uytterhoeven <geert@linux-m68k.org>
To: arun c <arun.edarath@gmail.com>
Cc: linux-fbdev-devel@lists.sourceforge.net
Subject: Re: How to implement rotation for framebuffer?
Date: Fri, 4 Apr 2008 12:34:08 +0200 (CEST) [thread overview]
Message-ID: <Pine.LNX.4.64.0804041230490.24006@anakin> (raw)
In-Reply-To: <c656a4d20804040202g370948e2pa4d70b1f693df2cd@mail.gmail.com>
On Fri, 4 Apr 2008, arun c wrote:
> I am working on 2430SDP. SDP has omap2430 as the processor and it's
> display controller supports rotation of framebuffer in hardware.
>
> I will explain the hardware rotation in brief.
>
> 1) One Physical framebuffer is allocated in memory
> 2) This physical address ( as well as width and height) is programmed in the
> VRFB Module (the hardware rotation engine, it stands for virtual rotated
> frame buffer)
> 3)Then VRFB gives you 4 addresses ( virtual addresses which are
> transparent to applications)
> VBA0 --> Address for 0 degree rotation
> VBA90 --> Address for 90 degree rotation
> VBA180 --> Address for 180 degree rotation
> VBA270 --> Address for 270 degree rotation
>
> Rotation is achieved like this
> Assume you want 90 degree rotation
>
> Processor writes all picture data to VBA90 space and lcd reads all
> data from VBA0 space
>
> For this kind of implementation i need to change fb_fix_screeninfo
> members (smem_start ,smem_len) and fb_info member( screen_base)
> dynamically according to degree of rotation.
Yep, that's correct.
> Please anybody suggest me good ways to implement this kind of
> rotation in my driver or point me to some code so that i can refer and
> implement the same.
Very simple: any change of struct fb_var_screeninfo may cause a change
of fb_fix_screeninfo.
Hence if an application requests to change the rotation angle by
changing fb_var_screeninfo.rotate and issuing an FBIOPUT_VSCREENINFO
ioctl, you update your fb_fix_screeninfo and fb_info.screen_base.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
next prev parent reply other threads:[~2008-04-04 10:34 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-04 9:02 How to implement rotation for framebuffer? arun c
2008-04-04 10:34 ` Geert Uytterhoeven [this message]
2008-04-08 5:03 ` arun c
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=Pine.LNX.4.64.0804041230490.24006@anakin \
--to=geert@linux-m68k.org \
--cc=arun.edarath@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox