Reply
Thread Tools
Posts: 99 | Thanked: 49 times | Joined on Jan 2007 @ Tampere, Finland
#21
Originally Posted by Stskeeps View Post
I have heard from my TI contact and he said 'I will look in to it and will do want I can.' (assuming he means 'what' and not 'want'). That looks good
Is it already time to give up with 3D driver or has this TI guy given any comments if he could do something about it? (Yes, it stupid to ask since you would most likely report here if the guy actually had done something )
 
Stskeeps's Avatar
Posts: 1,671 | Thanked: 11,478 times | Joined on Jun 2008 @ Warsaw, Poland
#22
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
__________________
As you go on to other communities, remember to build them around politeness, respect, trust and humility. Be wary of poisonous people and deal with them before they end up killing your community.. Seen it happen to too many IRC channels, forums, open source projects.
 

The Following 13 Users Say Thank You to Stskeeps For This Useful Post:
Stskeeps's Avatar
Posts: 1,671 | Thanked: 11,478 times | Joined on Jun 2008 @ Warsaw, Poland
#23
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).
__________________
As you go on to other communities, remember to build them around politeness, respect, trust and humility. Be wary of poisonous people and deal with them before they end up killing your community.. Seen it happen to too many IRC channels, forums, open source projects.
 

The Following 10 Users Say Thank You to Stskeeps For This Useful Post:
marshel's Avatar
Posts: 13 | Thanked: 8 times | Joined on Aug 2009 @ Brazil - Piracicaba/SP
#24
Originally Posted by Stskeeps View Post
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).
is it made for 810 or can i test it on 800 as well? can it harm or brick the system and how i get a good report to send you with if it is ok or not?
__________________
--marshel--
brazilian n800 owner
curious by nature
 
jperez2009's Avatar
Posts: 250 | Thanked: 122 times | Joined on May 2009 @ Colorado
#25
Originally Posted by marshel View Post
is it made for 810 or can i test it on 800 as well? can it harm or brick the system and how i get a good report to send you with if it is ok or not?
If you have to ask, I don't think you should test it. lol

Jesse~
__________________
N900 + GameGripper + Emulators + Kernel Power = <3
Request: NSF/SPC/GBS/USF/PSF/GSF/2SF/Adlib Player or Add-on for N900
 

The Following User Says Thank You to jperez2009 For This Useful Post:
Stskeeps's Avatar
Posts: 1,671 | Thanked: 11,478 times | Joined on Jun 2008 @ Warsaw, Poland
#26
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.
__________________
As you go on to other communities, remember to build them around politeness, respect, trust and humility. Be wary of poisonous people and deal with them before they end up killing your community.. Seen it happen to too many IRC channels, forums, open source projects.
 

The Following 20 Users Say Thank You to Stskeeps For This Useful Post:
jperez2009's Avatar
Posts: 250 | Thanked: 122 times | Joined on May 2009 @ Colorado
#27
Keep up the great work Stskeeps. We all look forward to your hard work paying off.

Jesse~
__________________
N900 + GameGripper + Emulators + Kernel Power = <3
Request: NSF/SPC/GBS/USF/PSF/GSF/2SF/Adlib Player or Add-on for N900
 
Mara's Avatar
Posts: 1,310 | Thanked: 820 times | Joined on Mar 2006 @ Irving, TX
#28
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?

Last edited by Mara; 2010-06-19 at 21:52. Reason: typo in powervr.ini
 
javispedro's Avatar
Posts: 2,355 | Thanked: 5,249 times | Joined on Jan 2009 @ Barcelona
#29
Thanks indeed!
Originally Posted by Stskeeps View Post
but I see two spinning triangles but sometimes goes to a slow framerate.
Yes, exactly what I was experiencing with the manual omapfb call after swap buffers (well, more like a complete and periodic halt) .

At least looks like we might be able to skip an unneeded framebuffer copy with a custom WSEGL. "XV_WSEGL" anyone?
 
Stskeeps's Avatar
Posts: 1,671 | Thanked: 11,478 times | Joined on Jun 2008 @ Warsaw, Poland
#30
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
insmod mbxaccess.ko
insmod omaplcd.ko
mbxaccess_maj=`grep ""mbx"$" /proc/devices | cut -b1,2,3`
/bin/rm -f /dev/mbx
/bin/mknod /dev/mbx c $mbxaccess_maj 0

disp_maj=`grep "omaplcd$" /proc/devices | cut -b1,2,3`
/bin/rm -f /dev/omaplcd
/bin/mknod /dev/omaplcd c $disp_maj 0
chmod a+rw /dev/mbx /dev/omaplcd
sleep 5
/usr/bin/mbxdaemon &
4. Fix up libXau.0 link:

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
./xegltest &
You should now see spinning triangles with some stalls. In the x-terminal you'll observe a bunch of MBX hardware recovery messages..
__________________
As you go on to other communities, remember to build them around politeness, respect, trust and humility. Be wary of poisonous people and deal with them before they end up killing your community.. Seen it happen to too many IRC channels, forums, open source projects.

Last edited by Stskeeps; 2010-06-20 at 08:05.
 

The Following 17 Users Say Thank You to Stskeeps For This Useful Post:
Reply

Tags
accelerated, nokia n8x0


 
Forum Jump


All times are GMT. The time now is 20:17.