Writing Kdrive DDX driver
Franco Catrin L.
fcatrin at tuxpan.com
Fri Dec 14 05:52:20 PST 2007
manisha salve <msalve at gmail.com> ha escrito:
> Thanks Franco ,
>
> One more query i have regarding Pixmap , Is pixmap nothing but Framebuffer
> itself ???
> I will give the program flow below with function name and file name:
[DIX program flow]
> From this flow , framebuffer is the Pixmap buffer on which all the graphics
> operations are performed(correct me if i am wrong)
I recommend you not to look at DIX code to understand what your driver
has to implement. You can look at it later to see what you can
improve in your friver but at first time you should look at an
existing driver code [1]
When Init function is called, you will receive a KdScreenInfo struct
where you have to fill in a Driver struct[2]. Your Driver struct is
based in VesaScreenPrivRec and there you can add a pointer to your
allocated framebuffer. [3]
> It is important for me to know on which buffer acceleration operations
> should be performed.I have to pass that address to the graphic
> controller.
When your driver's enableAccel is called you will receive that Driver
struct where you can get the framebuffer address to use in your
accelerated funcions [4]
> Iam not using MMIO to map the hardware registers . I am
> using ioctls provided
> my graphics controller kernel driver , to program the hardware.
You can use anything you have in hand. That's private to your driver [5]
[1]
http://webcvs.freedesktop.org/xserver/xserver/hw/kdrive/neomagic/?pathrev=HEAD
[2] neomagic.c/neoScreenInit
[3] neomagic.h/_neoScreenInfo
[4] neo_draw.c/neoDrawEnable
[5] neomagic.h/_neoCardInfo
--
Franco Catrin L.
http://www.tuxpan.com/fcatrin
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.
More information about the xorg-arch
mailing list