How to write an X driver..?

Florian Echtler floe at butterbrot.org
Sun Jan 25 23:46:32 PST 2009


>> Yes shadowfb does just that. A couple of drivers implement it, look at
>> nv or radeon for example. On the plus side you get a very small driver
>> and you just have to implement a copy hook, the regions are determined
>> by the X server for you.
> Or avivo is a much more simple example.
Writing my thesis took up most of my time recently, so the followup took a 
while. I noticed that the fbdev driver uses mmap to access the 
framebuffer. If I would take the framebuffer route, would that mean that 
despite shadowfb, the in-kernel driver would still have to do a sort of 
diff on the contents? With write() and read(), I would know the offset of 
the change inside the framebuffer, but with mmap, I wouldn't be notified 
of the change, right?

If that is correct, it would probably make more sense to directly go for 
the X driver instead of the framebuffer. However, even avivo is still 
quite a bunch of code to read and understand. Is there any further 
documentation?

Many thanks, Yours, Florian
-- 
"_Nothing_ brightens up my morning. Coffee simply provides a shade of
grey just above the pitch-black of the infinite depths of the _abyss_."



More information about the xorg mailing list