![]() |
Re: Yes, the N8x0 has a 3d accelerator, now how do we make it work?
Quote:
|
Re: Yes, the N8x0 has a 3d accelerator, now how do we make it work?
OK, so, one of the original ideas by javispedro was to write our own WSEGL. I decided to follow up a bit on that idea.
A 'open enough' specification of wsegl.h can be found from http://qt.gitorious.org/qt/qt-gberg/...owervr/wsegl.h An example WSEGL can be found from http://qt.gitorious.com/qt/qt/blobs/.../pvrqwswsegl.c Now, this file mentions an interesting part of being a WSEGL: /* Swap the contents of a drawable to the screen */ static WSEGLError wseglSwapDrawable(WSEGLDrawableHandle _drawable, unsigned long data) So, my idea is to do the following: Have a WSEGL that our powervr.ini points to. This WSEGL is actually just dlopen()'ing the X11 WSEGL and wraps around it, replacing/extending some functions. The idea is then in static WSEGLError wseglSwapDrawable(WSEGLDrawableHandle _drawable, unsigned long data) to send a OMAPFB_UPDATE_WINDOW initially for the full screen when the procedure has been executed. For optimization (send only parts of screen), it should be possible to retrieve information on the drawable's nature in longer term. An initial skeleton of this 'wrapperwsegl' can be found at http://stskeeps.subnetmask.net/maemo...wrapperwsegl.c |
Re: Yes, the N8x0 has a 3d accelerator, now how do we make it work?
I've finished up the 'stub' WSEGL. It now outputs whenever any of the functions are being called.
http://stskeeps.subnetmask.net/maemo...wrapperwsegl.c I have put up a .so people can try for using as a WSEGL at http://stskeeps.subnetmask.net/maemo...rapperwsegl.so It's compiled in DIABLO_ARMEL with gcc -shared -o wrapperwsegl.so wrapperwsegl.c -ldl Drop the .so in /usr/lib You need to put in /etc/powervr.ini: [default] WindowSystem=wrapperwsegl.so .. and let me know of the results (I'm not at home at the moment, so I can't test myself). |
Re: Yes, the N8x0 has a 3d accelerator, now how do we make it work?
Quote:
|
Re: Yes, the N8x0 has a 3d accelerator, now how do we make it work?
Quote:
Jesse~ |
Re: Yes, the N8x0 has a 3d accelerator, now how do we make it work?
Well, my WSEGL trick worked, see above URL(s) for .so to try out.. I run a ./xegltest unmodified. There's some HW recovery issues still I need to look into, but I see two spinning triangles but sometimes goes to a slow framerate.
Video to come. This is cool. |
Re: Yes, the N8x0 has a 3d accelerator, now how do we make it work?
Keep up the great work Stskeeps. We all look forward to your hard work paying off. :D
Jesse~ |
Re: Yes, the N8x0 has a 3d accelerator, now how do we make it work?
This is interesting... Had to blow off the dust from my old N810 to try this out. I did all the "installation steps" as requested but don't know how to run the xegltest?
The file /etc/powervr.ini didn't exist. I did create that file. Correct? How can I tell if the wrapper is running? Should I see something with lsmod? |
Re: Yes, the N8x0 has a 3d accelerator, now how do we make it work?
Thanks indeed!
Quote:
At least looks like we might be able to skip an unneeded framebuffer copy with a custom WSEGL. "XV_WSEGL" anyone? ;) |
Re: Yes, the N8x0 has a 3d accelerator, now how do we make it work?
EDIT: This is my 1000th post on TMO. Time to retire? :>
OK, step by step guide for my current setup, from a fresh N810 with openssh installed. You'll need the Graphics SDK stuff obviously. 1. Flash this kernel - config at http://stskeeps.subnetmask.net/maemo.org/gl/.config 2. SCP OMAP24xx_MBX_SDK_N8xx/bin/binary_omap2420_linux_debug to /root/binary_omap2420_linux_debug 3. Copy omaplcd.ko and mbxaccess.ko into the same directory. This is the driver from http://gitorious.org/mbx-n8x0/mbx-n8x0-modules along with nobackbuffers.patch to save some DMA memory. 4. Copy *.so from binary_omap2420_linux_debug to /usr/lib and run ldconfig 5. Copy mbxdaemon from binary_omap2420_linux_debug to /usr/bin 6. Put in /etc/powervr.ini: [default] WindowSystem=wrapperwsegl.so and upload http://stskeeps.subnetmask.net/maemo...rapperwsegl.so to /usr/lib 4. Start up the MBX daemon.. Code:
cd /root/binary*debug ln -s /usr/lib/libXau.so.6 /usr/lib/libXau.so.0 5. As user, that is, from your X-Terminal, now: Code:
cd /root/binary_omap2420_linux_debug |
All times are GMT. The time now is 15:03. |
vBulletin® Version 3.8.8