Hello Pekka<br><br><div class="gmail_quote">On Fri, Jul 13, 2012 at 1:30 PM, Pekka Paalanen <span dir="ltr"><<a href="mailto:ppaalanen@gmail.com" target="_blank">ppaalanen@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Fri, 13 Jul 2012 12:58:45 +0530<br>
<div class="im">Abhijit Potnis <<a href="mailto:abhijitpotnis@gmail.com">abhijitpotnis@gmail.com</a>> wrote:<br>
<br>
> Hello ,<br>
><br>
</div><div class="im">> Is there any plan to have(& maintain) a GLES2 >> framebuffer back-end for<br>
> Weston on the weston git, so as to have Weston run on hardware's that do<br>
> support GLES2 on framebuffer ?<br>
> Say for example ARM targets like the beagle-board. I know that the GLES2 >><br>
> framebuffer implementations would become redundant once the hardware<br>
> vendors<br>
> start supporting wayland on their boards. But it would still serve the<br>
> purpose of running/testing weston (and a few software rendered apps) on<br>
> hardware that<br>
> don't yet have support for Wayland from the vendor.<br>
<br>
</div>Hi Abhijit,<br>
<br>
the problem with GLES2-on-fb is that the APIs involved are not<br>
standard, so there cannot be a single backend for all such cases. The<br>
DRM backend relies on DRM, Mesa and GBM, and the Android backend relies<br>
on Android libs.<br></blockquote><div><br>Ya, I do agree. With GLES2-on-fb we would end up having an implementation<br> for each board or for a group of similar boards. <br><br>My question is, can it be possible that generic part of GLES2-on-fb be separated<br>
out and only the system specific part be implemented for each different board. Say like <br>in case of android, what lies in compositor-android.c except for config creation part is pretty <br>much generic and it may work on few other common set of systems other that google nexus<br>
( Android & other flavours of linux as well ). And the implementation which is in <br>android-framebuffer.cpp would be categorised as the system specific one. <br><br>Can there be an abstraction in the above said way ? And would Weston git be ready to <br>
accommodate several such back-ends for numerous boards ?<br>
<br> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Even when hw vendors do start supporting Wayland, that will probably<br>
mean the client-server interaction, which is standardised. The<br>
server-fb interaction will likely still require some special code, as<br>
I'm not convinced everyone would start writing DRM-drivers for their<br>
gfx hw.<br></blockquote><div> </div><div>:)<br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
What you *can* do, is write a new Weston backend and send it upstream.<br>
There is already a backend for Android, which has nothing to with DRM<br>
or Mesa.<br>
<br></blockquote><div><br>I was able to write a back-end for my system. Its minimalist but <br>none-the-less, works! There are few more glitches that I have to sort and I <br>am looking into them. I shall put it across once they are completely tested.<br>
<br><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
I set up the Android backend code so, that most of it can be built<br>
without an Android tree, and it is built by default. That will at least<br>
keep the code building, when someone changes Weston's generic parts, but<br>
cannot try it on Android. Although the major reason why that happened<br>
was that Android libs are C++, and I couldn't do without a conversion<br>
layer.<br>
<br>
For input devices, we can share the existing evdev code, if your<br>
hardware has evdev input drivers in the kernel. I sent a patch series<br>
recently to implement that for the Android backend, but I need to redo<br>
it.<br>
<br></blockquote><div><br>Yes. Could you please point me to these evdev patches. They would be helpfull.<br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">

Does your embedded system have udev or not? If it does, and you are<br>
serious about writing a backend, we need to re-think with krh how to<br>
organise the code.<br>
<br></blockquote><div><br>The code organization as mentioned by me above is my humble suggestion.<br>I would like to hear your feedback on this.<br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">

<br>
Thanks,<br>
pq<br>
</blockquote></div><br>PS: I am very naive in this area, pardon me if the above questions sound completely absurd !<br clear="all"><br>-- <br>Regards,<br>Abhijit Potnis<br><br>