Pankaj
unread,Sep 15, 2009, 11:17:06 PM9/15/09Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to android-porting
Hi all,
We are looking for one serious change in the Android's SurfaceFlinger,
as of now Android supports only one display thorugh framebuffer 0 (/
dev/graphics/fb0), but we want to add support for multiple frame
buffer (fb0/fb1/fb2). After looking into the surfaceflinger and
related module we came to know that we need to change the
surfaceflinger, following are some of the changes we have found to be
done (although I am not quite sure about these)
1: From SurfaceFlinger::readyToRun() we have to create secondary
displays and initialize them.
2: Make size of mGraphicsPlane (array of GraphicsPlane) as 2 (or n=no
of display)
3: From DisplayHardware::init while creating the EGLDisplayHardware
pass the dpy value and open the corresponding fb (0 or 1) depending on
dpy value.
But what I am not getting is that does we need to change the
initialization of EGLDisplay depending on this dpy values. Basically
what changes related with egl we need to do if we want to initialize
multiple displays.
In surfaceFlinger.cpp in many of the APIs (such as threadLoop,
handlePageFlip), the reference of HardwareDisplay is obtained from
graphicsPlane(0), so what if we have mulitple graphics plane?
If any body have worked or have any idea about this please share ...
or correct me if I am wrong somewhere..
Thanks
Pankaj