Thread (7 messages) 7 messages, 4 authors, 2007-09-16

Re: Best way to support mulitple planes?

flat view

From: Ville Syrjälä <syrjala@sci.fi>
Date: 2007-09-13 21:10:31

On Thu, Sep 13, 2007 at 02:50:54PM -0500, Timur Tabi wrote:
Hi, I'm new to the framebuffer subsystem, so forgive me if this is a FAQ. 
I've spent the past couple hours scouring web sites and sample code, but I 
don't have a definitive answer to my question.

I have a device that supports three planes - memory areas that the hardware 
reads from to generate the physical image.  Each plane supports an alpha 
channel for each pixel, and the hardware just blends all three planes together 
when it draws the image.

Currently, our driver create three framebuffer devices, /dev/fb0, /dev/fb1, 
and /dev/fb2, which means three calls to register_framebuffer().  Is this the 
correct way to do it?
It is one way. At least omapfb does things the same way, and it has some
custom ioctls to control the planes. Another way would be to have one
fb device and implement support for the extra planes in user space.
The reason I ask is that our hardware can only handle three planes if the 
resolution is 1024x768 or below.  I can't figure out any way of telling the 
framebuffer subsystem that if it switches to 1280x1024 in plane 0, that plane 
1 and 2 no longer exist.  Any suggestions on how to handle that?
Perhaps return an error for any ioctls when the plane is not available,
or implement a custom ioctl which carries that information. You could
also leave that up to user space to know. It seems to me that you'll need
a customized user space solution anyway (eg. a DirectFB gfx driver or a
custom kdrive X server).

-- 
Ville Syrjälä
syrjala@sci.fi
http://www.sci.fi/~syrjala/

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help