Hi guys,
since several days I'm trying to run a Qt OpenGL application on my 
Beaglebone Black.

I've installed the official Debian image 
(from http://beagleboard.org/latest-images/) on the micro sd (not emmc) and 
compiled and installed the 3.12 kernel from Robert C Nelson's linux-dev git 
repository.
Then I ran the sgx-build-modules.sh script, which was also provided in 
Robert's repository and copied it to the BBB, ran the install scripts for 
pvrsrv etc. (After changing this 
line 
https://github.com/RobertCNelson/linux-dev/blob/am33x-v3.12/sgx_build_modules.sh#L272
 
from "no" to "yes") the graphics sdk examples ran properly (evilskull, 
etc.).


Now I've downloaded qt-4.8.6 and configured it with the correct mkspecs and 
this configure directive:

./configure -v -opensource -confirm-license -prefix /opt/qt -embedded arm 
-platform qws/linux-x86-g++ -xplatform qws/linux-am335x-g++ -depths 
16,24,32 -no-mmx -no-3dnow -no-sse -no-sse2 -no-ssse3 -no-glib -no-cups 
-no-largefile -no-accessibility -no-openssl -no-gtkstyle -qt-mouse-pc 
-qt-mouse-linuxtp -qt-mouse-linuxinput -plugin-mouse-linuxtp 
-plugin-mouse-pc -fast -little-endian -host-big-endian -no-pch 
-no-sql-ibase -no-sql-mysql -no-sql-odbc -no-sql-psql -no-sql-sqlite 
-no-sql-sqlite2 -no-webkit -no-qt3support -nomake examples -nomake demos 
-nomake docs -nomake translations -qt-mouse-tslib -opengl es2 
-plugin-gfx-powervr 
-D QT_NO_QWS_CURSOR -D QT_QWS_CLIENTBLIT
 

 I used the same compiler which was downloaded with the kernel building 
script (gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux). Everything 
configured and maked successfully. Then I copied the neccessary files 
(libs, plugins, examples) to the BBB.

But now the problems begin. When I want to run the hellogl_es example, it 
says "can't create surface":

debian@beaglebone:/opt/qt/examples/opengl/hellogl_es2$ sudo ./hellogl_es2 
-qws -display powervr 

*QEglContext::createSurface(): Unable to create EGL surface, error = 0x300b*


The program starts but only shows a completely green opengl  surface 
(still, the graphics sdk examples run properly). I tried it with running 
and stopped lightdm, everytime I get the same error.


I think it's a very simple step to get Qt OpenGL working, but I've tried 
everything without success. Maybe I've missed only a patch which isn't 
currently in the linux-dev repository or anything?


Many thanks in advance!

Greetings,
Marcel






Here some additional information:

debian@beaglebone:/$ *uname -a*
Linux beaglebone 3.12.13-bone12 #1 SMP Fri May 16 00:42:31 CEST 2014 armv7l 
GNU/Linux




debian@beaglebone:/$ *lsmod*
Module                  Size  Used by
omaplfb                12039  0
pvrsrvkm              178364  1 omaplfb
usb_f_acm               5166  1
u_serial                9640  3 usb_f_acm
g_multi                32477  0
u_rndis                 8723  1 g_multi
u_ether                12283  1 g_multi
libcomposite           34176  2 usb_f_acm,g_multi
snd_soc_omap            2834  0
snd_pcm_dmaengine       6073  1 snd_soc_omap

 


debian@beaglebone:/$ *sgx_init_test*
----------------------- Start -----------------------
Try calling PVRSRVConnect with an invalid argument:
 OK
Call PVRSRVConnect with a valid argument:
 OK
Try calling PVRSRVEnumerateDevices with invalid puiNumDevices:
 OK
Get number of devices from PVRSRVEnumerateDevices:
 OK
.... Reported 1 devices
.... Device Number  | Device Type
            0000    | PVRSRV_DEVICE_ID_SGX
Attempt to acquire device 0:
 OK
Getting SGX Client info
 OK
.... ui32ProcessID:13147
Display Class API: enumerate devices
 OK
PVRSRVEnumerateDeviceClass() returns 1 display device(s)
 OK
Attempt to create memory context for SGX:
 OK
Display Class API: open device
 OK
Display Class API: Get display info
 OK
.... Name:PowerVR OMAP Linux Display Driver
.... MaxSwapChains:1
.... MaxSwapChainBuffers:1
.... MinSwapInterval:0
.... MaxSwapInterval:1
Display Class API: enumerate display formats
 OK
 OK
.... Display format 0 - Pixelformat:1
Display Class API: enumerate display dimensions
 OK
 OK
.... Display dimensions 0 - ByteStride:2560 Width:1280 Height:1024
Display Class API: get the system (primary) buffer
 OK
.... Shared heap 0 - HeapID:0x7000000 DevVAddr:0x1000 Size:0x87fe000 
Attr:0x2014200
.... Shared heap 1 - HeapID:0x7000001 DevVAddr:0xc800000 Size:0xfff000 
Attr:0x2024200
.... Shared heap 2 - HeapID:0x7000002 DevVAddr:0xe400000 Size:0x7f000 
Attr:0x2024200
.... Shared heap 3 - HeapID:0x7000003 DevVAddr:0xf000000 Size:0x3ff000 
Attr:0x2024200
.... Shared heap 4 - HeapID:0x7000004 DevVAddr:0xf400000 Size:0x4ff000 
Attr:0x2014200
.... Shared heap 5 - HeapID:0x7000005 DevVAddr:0xfc00000 Size:0x1ff000 
Attr:0x2014200
.... Shared heap 6 - HeapID:0x7000006 DevVAddr:0xdc00000 Size:0x7ff000 
Attr:0x2014200
.... Shared heap 7 - HeapID:0x7000007 DevVAddr:0xe800000 Size:0x7ff000 
Attr:0x2014200
.... Shared heap 8 - HeapID:0x7000008 DevVAddr:0xd800000 Size:0x3ff000 
Attr:0x2024200
.... Shared heap 9 - HeapID:0x7000009 DevVAddr:0x8800000 Size:0x0 
Attr:0x2024200
.... Shared heap 10 - HeapID:0x700000a DevVAddr:0x8800000 Size:0x3fff000 
Attr:0x2014200
Display Class API: map display surface to SGX
 OK
Misc Info API: Query the SGX features from host driver
 OK
.... SGX Host driver DDK version: 1.10.0.2359475
Misc Info API: Query the SGX features from microkernel
 OK
.... Hardware core designer: 0, HW core revision: 1.2.5
.... Hardware core ID: 112, name: SGX 520/530
.... SGX microkernel DDK version: 1.10.0.2359475
.... SGX microkernel software core ID: SGX 530, revision: 10205
SGX microkernel build options
.... DEBUG: disabled
.... PDUMP: disabled
.... PVRSRV_USSE_EDM_STATUS_DEBUG: disabled
.... SUPPORT_HW_RECOVERY: enabled
.... PVR_SECURE_HANDLES: enabled
.... SGX_BYPASS_SYSTEM_CACHE: disabled
.... SGX_DMS_AGE_ENABLE: disabled
.... SGX_FAST_DPM_INIT: disabled
.... SGX_FEATURE_WRITEBACK_DCU: disabled
.... SGX_FEATURE_MP: disabled
.... SGX_FEATURE_MP_CORE_COUNT: 1
.... SGX_FEATURE_SYSTEM_CACHE: disabled
.... SGX_SUPPORT_HWPROFILING: disabled
.... SUPPORT_ACTIVE_POWER_MANAGEMENT: disabled
.... SUPPORT_DISPLAYCONTROLLER_TILING: disabled
.... SUPPORT_PERCONTEXT_PB: enabled
.... SUPPORT_SGX_HWPERF: enabled
.... SUPPORT_SGX_MMU_DUMMY_PAGE: disabled
.... SUPPORT_SGX_PRIORITY_SCHEDULING: enabled
.... USE_SUPPORT_NO_TA3D_OVERLAP: disabled
SLCSize = 0, ClockSpeed = 200000000
Display Class API: unmap display surface from SGX
 OK
Attempt to destroy memory context for SGX:
 OK
Display Class API: close the device
 OK
SGXReleaseClientInfo:
 OK
PVRSRVDisconnect:
 OK
---------------------End loop 1---------------------





 

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to