Thread (26 messages) 26 messages, 5 authors, 2005-03-16

Re: [patch] radeonfb: FB_WAITFORVSYNC implementation

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2005-03-12 23:21:42

On Sat, 2005-03-12 at 12:56 -0500, Jon Smirl wrote:
1) where is the list of valid modes computed? in-kernel or user space.
Technically either will work but each has plus and minuses. Right now
radeonfb can do both.

1a) #1 is computing the mode list, not setting the mode. The mode is
always set in the kernel.
At first, I would keep the current mecanism. After all, parsing the EDID
and building the modelist is quite simple. Let the kernel driver do it,
pick a default mode, and let userland optionally change that. That gives
us at least a working boot mode for splash/console before userland is
available. fbdev now has an API for userland to add/remove entries to
modelists, we can extend on that.
2) multiheads implies buffer management, this needs to be coordinated with DRM
Yes. That's the main issue with the merge imho. My initial version will
do like MacOS, and cut the framebuffer in 2 apertures split in the
middle. That's the simplest way to get 2 independant access swappers.
This is necessary if we want completely independant framebuffer accesses
to /dev/fbN and /dev/fbN+1 with different bit depth. It may not stay
necessary in the long run if we have some lock for fb access, like X
has, in which case we can just switch the swapper settings before each
access.
 
3) fbdev needs to implement hardware cursors
That isn't terribly difficult.
4) The fb_info struct doesn't work too well for multiple heads. It
really should be split up into fb_device/fb_head.
Well, when I look at other OSes, they don't do that neither. They
basically behave like if there was one device per head. All we need, I
think, is the necessary infos to let userland know which heads are
"linked" to a given device, but I don't think the fbdev layer has to
care about the concept of "device". All it cares about is a "head" which
is what fb_info represents.
5) driver initiated secondary card reset needs to be implement via a
user space helper.

6) fbcon is tied way too closely to fb_info. There should be an
interface instead of just letting it muck around in fbdev data
structures.
It's been very significantly split already, but yes, it could probably
be separated a bit more, though there again, we can go step by step,
there is no need to rewrite the whole world at once.

Ben.




-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help