This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Building OpenGL on the AM335x EVM

Other Parts Discussed in Thread: AM3358, AM3352, AM3357, AM3356, AM3354, AM3359

I'm trying to cross-compile a simple OpenGL application for the AM335x EVM and I'm not sure where the libraries are to link to.

My compile command is:

arm-linux-gnueabihf-g++  test.cpp -o am335x_part1 -lGL -lGLU -lglut

And the first part of my path is the link to the TI SDK directory:

PATH=/home/mike/ti-sdk-am335x-evm-06.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin:$PATH

When I run this compile command I get:

test.cpp:1:21: fatal error: GL/glut.h: No such file or directory
compilation terminated.

Which isn't totally surprising, it's probably trying to pull from the headers on my host system instead of anything in the SDK for the EVM. I'm wondering if someone can point me to the proper directories for OpenGL headers for the AM335x using the SDK. If not, are there any links to wiki's regarding how to build OpenGL for the EVM?

Thanks.

My program for reference:

#include <GL/glut.h>

void display(void)
{
  glClearColor(0,0,0,0);
  glClear(GL_COLOR_BUFFER_BIT);

  glBegin(GL_TRIANGLES);
  {
    glColor3f(1,0,0);
    glVertex2f(0,0);

    glColor3f(0,1,0);
    glVertex2f(.5,0);

    glColor3f(0,0,1);
    glVertex2f(.5,.5);
  }
  glEnd();

  glutSwapBuffers();
}

void reshape(int w, int h)
{

}

int main(int argc, char **argv) {
  glutInit(&argc, argv);
  
  glutInitDisplayMode(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA);  
  glutInitWindowPosition(200,200);
  glutInitWindowSize(512,512);
  glutCreateWindow("Part 1");
  glutDisplayFunc(display);
  glutReshapeFunc(reshape);
  
  glutMainLoop();

  return 0;
}

  • Hi Miroslav,

        Thanks for the link, I have downloaded and installed the binary from that location. When I went through the steps everything seemed to go well, but the build fails. Maybe you can help me understand why that is. Here is what I did:

    I’ve downloaded Graphics_SDK_setuplinux_4_10_00_01.bin. I found the details for my supported device at the link you noted:

    TI   SOC Name

    SGX   Core

    SGX   Core Revision

    SDK   folder suffix

    Max   SGX Core Frequency (MHz)

    AM335x

    SGX530

    1.2.5

    es8.x

    200

     

    I did a chmod 777 on the downloaded binary and started the setup procedure. I picked all the default options, so it was a full install to:

    /home/mike/Graphics_SDK_4_10_00_01

    My relevant TI directories look like:

    /home/mike/Graphics_SDK_4_10_00_01
    /home/mike/ti-sdk-am335x-evm-06.00.00.00

    My path is setup with the TI toolchain:

    mike@mike-VirtualBox:~/Graphics_SDK_4_10_00_01$ echo $PATH
    
    /home/mike/ti-sdk-am335x-evm-06.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin:/usr/local/Trolltech/Qt-4.8.5/bin:/home/mike/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/mike/bin
    

    Changed the following to Rules.make:

    HOME=$(SDK_INSTALL_DIR)/graphics

    to

    HOME=/home/mike

    GRAPHICS_INSTALL_DIR didn’t need to be changed as it was:

    GRAPHICS_INSTALL_DIR =$(HOME)/Graphics_SDK_4_10_00_01


    Toolchain path changed from:

    CSTOOL_DIR=$(LINUX_DEVKIT_PATH)

    to:

    CSTOOL_DIR= /home/mike/ti-sdk-am335x-evm-06.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin

    Tool prefix changed from:

    CSTOOL_PREFIX=`basename $CROSS_COMPILE`

    to:

    CSTOOL_PREFIX=arm-linux-gnueabihf-

    Note: this doesn’t match either of the examples in the doc, but it’s what’s found in the toolchain bin directory ie: arm-linux-gnueabihf-gcc

    The kernel install directory is changed from:

    KERNEL_INSTALL_DIR=$(LINUXKERNEL_INSTALL_DIR)

    to:

    KERNEL_INSTALL_DIR=/home/mike/ti-sdk-am335x-evm-06.00.00.00/board-support/linux-3.2.0-psp04.06.00.11

    The filesystem install directory is updated from:

    TARGETFS_INSTALL_DIR=$(DESTDIR)

    to:

    TARGETFS_INSTALL_DIR=/home/mike/ti-sdk-am335x-evm-06.00.00.00/filesystem/test

    Where test is an extracted version of what is in the tisdk-rootfs-image-am335x-evm.tar.gz

    Those are all the changes I made, I wanted to do a full build for the AM335x so I used the sample command for that:

    make BUILD=release OMAPES=8.x all - This command will build the complete graphics SDK for AM335x.

    The build fails and almost imminently spits out an error:

    mike@mike-VirtualBox:~/Graphics_SDK_4_10_00_01$ make BUILD=release OMAPES=8.x all
    building the sgx kernel modules...
    make[1]: Entering directory `/home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM'
    make[1]: Leaving directory `/home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM'
    make[1]: Entering directory `/home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM'
    make -C /home/mike/ti-sdk-am335x-evm-06.00.00.00/board-support/linux-3.2.0-psp04.06.00.11 M=`pwd`
    make[2]: Entering directory `/home/mike/ti-sdk-am335x-evm-06.00.00.00/board-support/linux-3.2.0-psp04.06.00.11' 

      WARNING: Symbol version dump /home/mike/ti-sdk-am335x-evm-06.00.00.00/board-support/linux-3.2.0-psp04.06.00.11/Module.symvers is missing; modules will have no dependencies and modversions.

       LD      /home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM/services4/3rdparty/bufferclass_ti/built-in.o
     CC [M]  /home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM/services4/3rdparty/bufferclass_ti/bc_cat.o
    In file included from include/linux/gfp.h:4:0,
                     from include/linux/kmod.h:22,
                     from include/linux/module.h:13,                 from /home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM/services4/3rdparty/bufferclass_ti/bc_cat.c:29:
    include/linux/mmzone.h:18:30: fatal error: generated/bounds.h: No such file or directory

    compilation terminated.
    make[4]: *** [/home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM/services4/3rdparty/bufferclass_ti/bc_cat.o] Error 1
    make[3]: *** [/home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM/services4/3rdparty/bufferclass_ti] Error 2
    make[2]: *** [_module_/home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM] Error 2
    make[2]: Leaving directory `/home/mike/ti-sdk-am335x-evm-06.00.00.00/board-support/linux-3.2.0-psp04.06.00.11'
    make[1]: *** [all] Error 2
    make[1]: Leaving directory `/home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM'
    make: *** [buildkernel] Error 2

  • Before going down this path, please note that you are trying to build desktop OpenGL, and it is not supported in this platform. The driver only supports OpenGL ES(1.1/2.0).  Same goes for GLUT.


    To get started with OpenGLES you can use the examples on the Graphics SDK as you are progressing below thread, or can use something like sgxperf.

  • Prabindh Sundareson said:

    Before going down this path, please note that you are trying to build desktop OpenGL, and it is not supported in this platform.

    I am? That is not my goal. The OpenGL program I listed in my original post was something I compiled on my Desktop, which I wanted to cross-compile onto the AM335x EVM. Are you saying something about that code will not work on the EVM?

    Prabindh Sundareson said:


    To get started with OpenGLES you can use the examples on the Graphics SDK

     
    Which examples are you suggesting I look at? When I go to:
    ~/Graphics_SDK_4_10_00_01/gfxsdkdemos

    There is only a gfxinstallinfo.txt file in there which states "release8.x". Could you point me to what you're talking about? I'm just trying to build something which is OpenGL and runs on the AM335x EVM, I'd like to be able to cross compile it on X86 for verification, but that's not required.
  • Found the problem preventing the Graphics SDK from building, there was an issue with my main TI SDK build area. I cleaned it out and rebuit "linux", now the Graphics SDK has built successfully. I found the .ko's:

    ~/Graphics_SDK_4_10_00_01$ find . -name *.ko ./gfx_rel_es8.x/pvrsrvkm.ko ./gfx_rel_es8.x/omaplfb.ko ./gfx_rel_es8.x/bufferclass_ti.ko

    Now when I look at the next step it says:

    Step 2 : soc demo script verification

    • The graphics SDK comes with a SOC specific startup script that takes care of installing the right set of graphics driver libraries and kernel modules.
    • AM335x Execution instructions

      • Run the script /etc/init.d/335x-demo at Linux command prompt after the AM335x EVM boots up.

    So I took a look at this script in: ~/Graphics_SDK_4_10_00_01$ cat targetfs/335x-demo

    #!/bin/sh
    
    
    SGX_REVISION=0x10205
    BUILDTYPE="$(cat /opt/gfxsdkdemos/gfxinstallinfo.txt)"
    
    echo $SGX_REVISION
    echo $BUILDTYPE
    
      if test $BUILDTYPE = "release8.x"
      then
        echo "installing 8.x SGX release user libraries"
        cd /opt/gfxlibraries/gfx_rel_es8.x
        ./install.sh --no-x
    

    Now there is no /opt/gfxsdkdemos directory on my file system. I assume I need to copy the one from the Graphics SDK root directory to /opt. Is there any additional undocumented steps I need to take?

  • My cross compile finished with the command:

        make BUILD=debug OMAPES=8.x all

    I moved the install file to my SD card hosting the root file system for the EVM:

        sudo cp ~/Graphics_SDK_4_10_00_01/targetfs/335x-demo /media/rootfs/etc/init.d

    And copied the demo and library directories to the correct locations as well:

        sudo cp -r ~/Graphics_SDK_4_10_00_01/gfxsdkdemos/ /media/rootfs/opt

        sudo mkdir /media/rootfs/opt/gfxlibraries

        sudo cp -r ~/Graphics_SDK_4_10_00_01/gfx_dbg_es8.x /media/rootfs/opt/gfxlibraries/

    I then also copied the gfx_check.sh from the debug page (http://processors.wiki.ti.com/index.php/SGXDbg) to my home directory on the SD card, then powered up the EVM. The full log can be seen here:

    1513.Graphics_SDK_log.txt

    But the highlights are what happened when I ran the 335x-demo script:

    root@am335x-evm:/etc/init.d# ./e 335x-demo
    0x10205
    debug8.x
    installing 8.x SGX debug user libraries
    Installing PowerVR Consumer/Embedded DDK 'sgxddk_1.10@2359475' on target
    File system installation root is /
    Nothing to un-install.
    boot script rc.pvr -> /etc/init.d/rc.pvr
    kernel module pvrsrvkm.ko -> /lib/modules/3.2.0/extra/pvrsrvkm.ko
    kernel module omaplfb.ko -> /lib/modules/3.2.0/extra/omaplfb.ko
    shared library libGLES_CM.so -> /usr/lib/libGLES_CM.so.1.10.2359475
    shared library libusc.so -> /usr/lib/libusc.so.1.10.2359475
    shared library libGLESv2.so -> /usr/lib/libGLESv2.so.1.10.2359475
    shared library libglslcompiler.so -> /usr/lib/libglslcompiler.so.1.10.2359475
    shared library libIMGegl.so -> /usr/lib/libIMGegl.so.1.10.2359475
    shared library libEGL.so -> /usr/lib/libEGL.so.1.10.2359475
    shared library libpvr2d.so -> /usr/lib/libpvr2d.so.1.10.2359475
    shared library libpvrPVR2D_BLITWSEGL.so -> /usr/lib/libpvrPVR2D_BLITWSEGL.so.1.1
    0.2359475
    shared library libpvrPVR2D_FLIPWSEGL.so -> /usr/lib/libpvrPVR2D_FLIPWSEGL.so.1.1
    0.2359475
    shared library libpvrPVR2D_FRONTWSEGL.so -> /usr/lib/libpvrPVR2D_FRONTWSEGL.so.1
    .10.2359475
    shared library libpvrPVR2D_LINUXFBWSEGL.so -> /usr/lib/libpvrPVR2D_LINUXFBWSEGL.
    so.1.10.2359475
    shared library libsrv_um.so -> /usr/lib/libsrv_um.so.1.10.2359475
    shared library libsrv_init.so -> /usr/lib/libsrv_init.so.1.10.2359475
    shared library libPVRScopeServices.so -> /usr/lib/libPVRScopeServices.so.1.10.23
    59475
    binary pvrsrvctl -> /usr/local/bin/pvrsrvctl
    binary sgx_init_test -> /usr/local/bin/sgx_init_test
    binary services_test -> /usr/local/bin/services_test
    binary sgx_blit_test -> /usr/local/bin/sgx_blit_test
    binary sgx_clipblit_test -> /usr/local/bin/sgx_clipblit_test
    binary sgx_flip_test -> /usr/local/bin/sgx_flip_test
    binary sgx_render_flip_test -> /usr/local/bin/sgx_render_flip_test
    binary pvr2d_test -> /usr/local/bin/pvr2d_test
    shader glsltest1_vertshader.txt -> /usr/local/bin/glsltest1_vertshader.txt
    shader glsltest1_fragshaderA.txt -> /usr/local/bin/glsltest1_fragshaderA.txt
    shader glsltest1_fragshaderB.txt -> /usr/local/bin/glsltest1_fragshaderB.txt
    
    Installation complete!
    
    You may now reboot your target.
    
    ./rc.pvr: line 34: /usr/local/bin/pvrsrvctl: No such file or directory
    

    I think rebooted and check the information from the script:

    root@am335x-evm:/home# ./gfx_check.sh
    WSEGL settings
    [default]
    WindowSystem=libpvrPVR2D_FRONTWSEGL.so.1
    ------
    ARM CPU information
    Processor : ARMv7 Processor rev 2 (v7l)
    BogoMIPS : 718.02
    Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls
    CPU implementer : 0x41
    CPU architecture: 7
    CPU variant : 0x3
    CPU part : 0xc08
    CPU revision : 2
    Hardware : am335xevm
    Revision : 0000
    Serial : 0000000000000000
    ------
    SGX driver information
    cat: can't open '/proc/pvr/version': No such file or directory
    ------
    Framebuffer settings
    mode "800x480-62"
        # D: 30.000 MHz, H: 32.433 kHz, V: 61.895 Hz
        geometry 800 480 800 960 32
        timings 33333 39 39 29 13 47 2
        rgba 8/16,8/8,8/0,8/24
    endmode
    Frame buffer device information:
        Name        : DA8xx FB Drv
        Address     : 0x9f400000
        Size        : 3072000
        Type        : PACKED PIXELS
        Visual      : TRUECOLOR
        XPanStep    : 0
        YPanStep    : 1
        YWrapStep   : 0
        LineLength  : 3200
        Accelerator : No
    ------
    Rotation settings
    0
    ------
    Kernel Module information
    Module                  Size  Used by
    g_mass_storage         37599  0
    wl12xx_sdio             3986  0
    wl12xx                202633  0
    mac80211              289010  1 wl12xx
    cfg80211              189234  2 mac80211,wl12xx
    ------
    Boot settings
    console=ttyO0,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait ip=none
    ------
    Linux Kernel version
    Linux am335x-evm 3.2.0 #1 Thu Feb 20 07:57:35 EST 2014 armv7l GNU/Linux
    

    I could see the correct modules didn't appear to be loaded, so I did a depmod -a and rebooted again. Same results.
    So I tried to insmod the ko's manually:

    
    root@am335x-evm:/opt/gfxlibraries/gfx_dbg_es8.x# insmod pvrsrvkm.ko
    [   52.068206] PVR: PVRCore_Init
    [   52.073791] PVR: PVRSRVDriverProbe(pDevice=df7f9400)
    [   52.079101] PVR: EnableSystemClocks: Enabling System Clocks
    [   52.085083] PVR: GPTIMER11 clock is 24MHz
    [   52.089904] ------------[ cut here ]------------
    [   52.094787] WARNING: at fs/sysfs/dir.c:481 sysfs_add_one+0x88/0xa8()
    [   52.101440] sysfs: cannot create duplicate filename '/bus/platform/devices/pv
    rsrvkm'
    [   52.109527] Modules linked in: pvrsrvkm(O+) g_mass_storage wl12xx_sdio(O) wl1
    2xx(O) mac80211(O) cfg80211(O) [last unloaded: wl12xx_sdio]
    [   52.122375] Backtrace:
    [   52.124938] [<c0017dbc>] (dump_backtrace+0x0/0x10c) from [<c041437c>] (dump_s
    tack+0x18/0x1c)
    [   52.133758]  r6:c00fc5f8 r5:00000009 r4:de161d18 r3:c05f7f0c
    [   52.139709] [<c0414364>] (dump_stack+0x0/0x1c) from [<c003f1dc>] (warn_slowpa
    th_common+0x54/0x6c)
    [   52.149017] [<c003f188>] (warn_slowpath_common+0x0/0x6c) from [<c003f298>] (w
    arn_slowpath_fmt+0x38/0x40)
    [   52.158905]  r8:00000001 r7:df3cf000 r6:df3cf000 r5:df3d8e50 r4:ffffffef
    [   52.165740] r3:00000009
    [   52.168487] [<c003f260>] (warn_slowpath_fmt+0x0/0x40) from [<c00fc5f8>] (sysf
    s_add_one+0x88/0xa8)
    [   52.177764]  r3:df3cf000 r2:c05117ac
    [   52.181518] [<c00fc570>] (sysfs_add_one+0x0/0xa8) from [<c00fce94>] (sysfs_do
    _create_link+0xf8/0x1e0)
    [   52.191131]  r7:de161d70 r6:df013db0 r5:df3d8e50 r4:df3d8f40
    [   52.197082] [<c00fcd9c>] (sysfs_do_create_link+0x0/0x1e0) from [<c00fcf90>] (
    sysfs_create_link+0x14/0x18)
    [   52.207061] [<c00fcf7c>] (sysfs_create_link+0x0/0x18) from [<c021fd30>] (bus_
    add_device+0xcc/0x184)
    [   52.216522] [<c021fc64>] (bus_add_device+0x0/0x184) from [<c021e090>] (device
    _add+0x430/0x574)
    [   52.225524]  r8:00000000 r7:c0617920 r6:bf1f70b0 r5:00000000 r4:bf1f70a8
    [   52.232360] r3:00000000
    [   52.235107] [<c021dc60>] (device_add+0x0/0x574) from [<c02223a0>] (platform_d
    evice_add+0xfc/0x1e8)
    [   52.244476] [<c02222a4>] (platform_device_add+0x0/0x1e8) from [<c02226d8>] (p
    latform_device_register+0x28/0x2c)
    [   52.255004]  r7:de160000 r6:c063e4c0 r5:bf1f7280 r4:bf1f70a0
    [   52.261260] [<c02226b0>] (platform_device_register+0x0/0x2c) from [<bf2080ec>
    ] (PVRCore_Init+0xec/0x398 [pvrsrvkm])
    [   52.272186]  r4:bf1f7280 r3:00000000
    [   52.276031] [<bf208000>] (PVRCore_Init+0x0/0x398 [pvrsrvkm]) from [<c000876c>
    ] (do_one_initcall+0x128/0x1a8)
    [   52.286315] [<c0008644>] (do_one_initcall+0x0/0x1a8) from [<c006c004>] (sys_i
    nit_module+0x3e4/0x1b68)
    [   52.295989] [<c006bc20>] (sys_init_module+0x0/0x1b68) from [<c0014740>] (ret_
    fast_syscall+0x0/0x30)
    [   52.305450] ---[ end trace a9fbf893cfba41eb ]---
    [   52.310363] PVR: PVRSRVDriverRemove(pDevice=df7f9400)
    [   52.315887] PVR: DisableSystemClocks: Disabling System Clocks
    [   52.322113] PVR_K:(Error): PVRCore_Init: unable to register platform device (
    -17) [999, home/mike/Graphics_SDK_4_10_00_01/GFX_Linux_KM/services4/srvkm/env/li
    nux/module.c]
    Error: could not insert module pvrsrvkm.ko: File exists
    root@am335x-evm:/opt/gfxlibraries/gfx_dbg_es8.x# insmod omaplfb.ko
    [   86.441619] omaplfb: Unknown symbol PVRGetDisplayClassJTable (err 0)
    Error: could not insert module omaplfb.ko: Unknown symbol in module
    root@am335x-evm:/opt/gfxlibraries/gfx_dbg_es8.x# insmod bufferclass_ti.ko
    [   92.481597] bufferclass_ti: Unknown symbol PVRGetBufferClassJTable (err 0)
    Error: could not insert module bufferclass_ti.ko: Unknown symbol in module
    

    So the pvrsrvkm.ko says it's already there (even though I don't see it in the lsmod listing) and the other two have some error...There's one further issue, that the instructions say:

    "To cross check whether system is fine(ready to run X apps) make sure lsmod command on EVM shows pvrsrvkm.ko, drm.ko
    ...
     One can run the unit test application present under /usr/local/XSGX/bin/glxgears to confirm the system is fine."

    Neither drm.ko nor glxgears can be found on the target or the build machine... so all this is throwing a lot of red flags. I tried one of the demos anyway:

    root@am335x-evm:/opt/gfxsdkdemos/ogles# ./OGLESLighting

    It just executes the command quitely and nothing is seen on the display. Any input here?

  • WSEGL settings

    cat: /etc/powervr.ini:    no this file

    ------

    ARM CPU information

    processor        : 0

    vendor_id        : GenuineIntel

    cpu family        : 6

    model                : 60

    model name        : Intel(R) Core(TM) i5-4200M CPU @ 2.50GHz

    stepping        : 3

    microcode        : 0x12

    cpu MHz                : 800.000

    cache size        : 3072 KB

    physical id        : 0

    siblings        : 4

    core id                : 0

    cpu cores        : 2

    apicid                : 0

    initial apicid        : 0

    fpu                : yes

    fpu_exception        : yes

    cpuid level        : 13

    wp                : yes

    flags                : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid

    bogomips        : 4988.97

    clflush size        : 64

    cache_alignment        : 64

    address sizes        : 39 bits physical, 48 bits virtual

    power management:

     

    processor        : 1

    vendor_id        : GenuineIntel

    cpu family        : 6

    model                : 60

    model name        : Intel(R) Core(TM) i5-4200M CPU @ 2.50GHz

    stepping        : 3

    microcode        : 0x12

    cpu MHz                : 800.000

    cache size        : 3072 KB

    physical id        : 0

    siblings        : 4

    core id                : 0

    cpu cores        : 2

    apicid                : 1

    initial apicid        : 1

    fpu                : yes

    fpu_exception        : yes

    cpuid level        : 13

    wp                : yes

    flags                : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid

    bogomips        : 4988.97

    clflush size        : 64

    cache_alignment        : 64

    address sizes        : 39 bits physical, 48 bits virtual

    power management:

     

    processor        : 2

    vendor_id        : GenuineIntel

    cpu family        : 6

    model                : 60

    model name        : Intel(R) Core(TM) i5-4200M CPU @ 2.50GHz

    stepping        : 3

    microcode        : 0x12

    cpu MHz                : 800.000

    cache size        : 3072 KB

    physical id        : 0

    siblings        : 4

    core id                : 1

    cpu cores        : 2

    apicid                : 2

    initial apicid        : 2

    fpu                : yes

    fpu_exception        : yes

    cpuid level        : 13

    wp                : yes

    flags                : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid

    bogomips        : 4988.97

    clflush size        : 64

    cache_alignment        : 64

    address sizes        : 39 bits physical, 48 bits virtual

    power management:

     

    processor        : 3

    vendor_id        : GenuineIntel

    cpu family        : 6

    model                : 60

    model name        : Intel(R) Core(TM) i5-4200M CPU @ 2.50GHz

    stepping        : 3

    microcode        : 0x12

    cpu MHz                : 800.000

    cache size        : 3072 KB

    physical id        : 0

    siblings        : 4

    core id                : 1

    cpu cores        : 2

    apicid                : 3

    initial apicid        : 3

    fpu                : yes

    fpu_exception        : yes

    cpuid level        : 13

    wp                : yes

    flags                : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid

    bogomips        : 4988.97

    clflush size        : 64

    cache_alignment        : 64

    address sizes        : 39 bits physical, 48 bits virtual

    power management:

     

    ------

    SGX driver information

    cat: /proc/pvr/version:    no this file

    ------

    Framebuffer settings

    ./check.sh: 12: ./check.sh: fbset: not found

    ------

    Rotation settings

    0

    ------

    Kernel Module information

    Module                  Size  Used by

    hid_generic            12548  0 

    usbhid                 53014  0 

    hid                   101762  2 hid_generic,usbhid

    pci_stub               12622  1 

    vboxpci                23194  0 

    vboxnetadp             25670  0 

    vboxnetflt             27613  0 

    vboxdrv               339502  3 vboxnetadp,vboxnetflt,vboxpci

    rfcomm                 69130  0 

    bnep                   19704  2 

    bluetooth             372041  10 bnep,rfcomm

    nfsd                  280346  13 

    auth_rpcgss            54717  1 nfsd

    nfs_acl                12837  1 nfsd

    nfs                   180906  0 

    lockd                  94016  2 nfs,nfsd

    sunrpc                271857  23 nfs,nfsd,auth_rpcgss,lockd,nfs_acl

    fscache                58860  1 nfs

    snd_hda_codec_realtek    56475  1 

    snd_hda_codec_hdmi     41154  1 

    nls_iso8859_1          12713  1 

    x86_pkg_temp_thermal    14162  0 

    coretemp               13435  0 

    kvm_intel             138567  0 

    kvm                   431754  1 kvm_intel

    crct10dif_pclmul       14289  0 

    crc32_pclmul           13113  0 

    ghash_clmulni_intel    13259  0 

    aesni_intel            55624  3 

    aes_x86_64             17131  1 aesni_intel

    lrw                    13286  1 aesni_intel

    gf128mul               14951  1 lrw

    glue_helper            13990  1 aesni_intel

    ablk_helper            13597  1 aesni_intel

    cryptd                 20359  3 ghash_clmulni_intel,aesni_intel,ablk_helper

    joydev                 17377  0 

    uvcvideo               80885  0 

    videobuf2_vmalloc      13216  1 uvcvideo

    videobuf2_memops       13362  1 videobuf2_vmalloc

    videobuf2_core         40499  1 uvcvideo

    videodev              133509  2 uvcvideo,videobuf2_core

    arc4                   12608  2 

    snd_seq_midi           13324  0 

    snd_seq_midi_event     14899  1 snd_seq_midi

    snd_rawmidi            30095  1 snd_seq_midi

    microcode              23656  0 

    snd_hda_intel          52267  5 

    rtl8192ce              53550  0 

    snd_hda_codec         188738  3 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel

    rtl_pci                26641  1 rtl8192ce

    psmouse                97655  0 

    rtlwifi                63229  2 rtl_pci,rtl8192ce

    snd_seq                61560  2 snd_seq_midi_event,snd_seq_midi

    snd_hwdep              13602  1 snd_hda_codec

    snd_pcm               102033  3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel

    snd_seq_device         14497  3 snd_seq,snd_rawmidi,snd_seq_midi

    rtl8192c_common        49527  1 rtl8192ce

    serio_raw              13413  0 

    mac80211              597268  3 rtl_pci,rtlwifi,rtl8192ce

    cfg80211              480503  2 mac80211,rtlwifi

    lpc_ich                21080  0 

    nouveau               943749  1 

    i915                  661468  5 

    rtsx_pci_ms            18151  0 

    memstick               16760  1 rtsx_pci_ms

    snd_page_alloc         18710  2 snd_pcm,snd_hda_intel

    mei_me                 18421  0 

    mxm_wmi                13021  1 nouveau

    mei                    77782  1 mei_me

    ttm                    84169  1 nouveau

    snd_timer              29433  2 snd_pcm,snd_seq

    drm_kms_helper         52710  2 i915,nouveau

    snd                    69141  21 snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec,snd_hda_intel,snd_seq_device,snd_seq_midi

    drm                   297056  7 ttm,i915,drm_kms_helper,nouveau

    i2c_algo_bit           13413  2 i915,nouveau

    soundcore              12680  1 snd

    video                  19318  2 i915,nouveau

    wmi                    19070  2 mxm_wmi,nouveau

    mac_hid                13205  0 

    lp                     17759  0 

    parport                42299  1 lp

    rtsx_pci_sdmmc         23527  0 

    ahci                   25819  3 

    r8169                  67581  0 

    libahci                32009  1 ahci

    rtsx_pci               45546  2 rtsx_pci_ms,rtsx_pci_sdmmc

    mii                    13934  1 r8169

    ------

    Boot settings

    BOOT_IMAGE=/boot/vmlinuz-3.11.0-20-generic.efi.signed root=UUID=320e5c82-d396-4b56-8ff6-bf7fa2b6fb01 ro quiet splash vt.handoff=7

    ------

    Linux Kernel version

    Linux lltang-X3Pro 3.11.0-20-generic #35-Ubuntu SMP Fri May 2 21:32:49 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

     

  • We setup SDK5,and run the script
    wubin@wubin-X3Pro:~/Graphics_SDK_5_01_01_02$ ./check.sh
    the result is up.
    What is the problem for us?
    we use AM3358
  • What's the matter below on our Am3352 board?Would you please help us to verify it? THankyou.
    root@am335x-evm:/mnt/nfs# insmod pvrsrvkm.ko
    Disabling lock debugging due to kernel taint
    root@am335x-evm:/mnt/nfs# insmod omaplfb.ko
    Unable to handle kernel NULL pointer dereference at virtual address 00000000
    pgd = ce120000
    [00000000] *pgd=8e4ec831, *pte=00000000, *ppte=00000000
    Internal error: Oops: 17 [#1]
    Modules linked in: omaplfb(O+) pvrsrvkm(O)
    CPU: 0 Tainted: G O (3.2.0-gd53561e-dirty #112)
    PC is at AllocateDeviceID+0xc/0x54 [pvrsrvkm]
    LR is at PVRSRVRegisterDCDeviceKM+0xfc/0x188 [pvrsrvkm]
    pc : [<bf006d2c>] lr : [<bf00299c>] psr: 40000013
    sp : ce0f1e40 ip : ce0f1e50 fp : ce0f1e4c
    r10: 00177000 r9 : 00000000 r8 : 00000000
    r7 : ce1a787c r6 : 00000000 r5 : ce1a7804 r4 : 00000000
    r3 : ce202e80 r2 : 00000001 r1 : ce202e88 r0 : 00000000
    Flags: nZcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
    Control: 10c5387d Table: 8e120019 DAC: 00000015
    Process insmod (pid: 1387, stack limit = 0xce0f02f0)
    Stack: (0xce0f1e40 to 0xce0f2000)
    1e40: ce0f1e74 ce0f1e50 bf00299c bf006d2c ce512d00 ce202e80 ce1a7800 00000000
    1e60: 00000000 00177000 ce0f1eac ce0f1e78 bf037e1c bf0028ac c07eb1e0 c07eb1e0
    1e80: 00000000 d09e1000 bf038fec 00000001 bf039034 ce512d80 00000001 bf03b000
    1ea0: ce0f1ebc ce0f1eb0 bf03b010 bf037a20 ce0f1efc ce0f1ec0 c0008690 bf03b00c
    1ec0: ce0f1eec bf038fec 00000001 bf039034 ce512d80 bf038fec 00000001 bf039034
    1ee0: ce512d80 00000001 c0063df4 0000001c ce0f1fa4 ce0f1f00 c0066520 c0008600
    1f00: bf038ff8 c0019644 00000000 c0063eec 00000000 c03fa690 00000001 c054b170
    1f20: 00000000 00000000 00000000 00000000 00000000 00000000 d09e1000 00007fbe
    1f40: d09e659c d09e6463 d09e87cc ce202e80 00002128 00002738 00000000 00000000
    1f60: 0000001e 0000001f 0000000f 0000000d 0000000c 00000000 00000002 40264b08
    1f80: 00000000 00021d90 00000080 c0013ae8 ce0f0000 00000000 00000000 ce0f1fa8
    1fa0: c0013940 c0064e30 40264b08 00000000 400c5000 00007fbe 4017b230 00000002
    1fc0: 40264b08 00000000 00021d90 00000080 000210b0 00007fbe 4017b230 00000000
    1fe0: 402145a0 beb80ad8 40173b24 402145b0 80000010 400c5000 00000000 00000000
    Backtrace:
    [<bf006d20>] (AllocateDeviceID+0x0/0x54 [pvrsrvkm]) from [<bf00299c>] (PVRSRVRegisterDCDeviceKM+0xfc/0x188 [pvrsrvkm])
    [<bf0028a0>] (PVRSRVRegisterDCDeviceKM+0x0/0x188 [pvrsrvkm]) from [<bf037e1c>] (OMAPLFBInit+0x408/0x5a0 [omaplfb])
    r7:00177000 r6:00000000 r5:00000000 r4:ce1a7800
    [<bf037a14>] (OMAPLFBInit+0x0/0x5a0 [omaplfb]) from [<bf03b010>] (OMAPLFB_Init+0x10/0x34 [omaplfb])
    [<bf03b000>] (OMAPLFB_Init+0x0/0x34 [omaplfb]) from [<c0008690>] (do_one_initcall+0x9c/0x16c)
    [<c00085f4>] (do_one_initcall+0x0/0x16c) from [<c0066520>] (sys_init_module+0x16fc/0x1884)
    [<c0064e24>] (sys_init_module+0x0/0x1884) from [<c0013940>] (ret_fast_syscall+0x0/0x30)
    Code: e89da830 e1a0c00d e92dd800 e24cb004 (e5902000)
    ---[ end trace 39e43c85a5b1ea1c ]---
    Segmentation fault
  • Amon,

    Which SDK are you using?  What's your Linux setup?

    From what I found, after you've properly built and installed everything, you need to run /etc/init.d/335x-demo at boot.  This is what sets everything up properly for graphics.  There's a message at the end of the script saying to reboot, but please ignore that.  In my experience that script is required to run at every boot.  After the script has run you should be able to do an "lsmod" and see all the modules inserted.

    Brad

  • Dear Brad

    we use SDK6.0 with 3.2 kernel,setup on Ubuntu system 12.04

    In my experience that script is required to run at every boot. --------------what do you mean that at every boot, would you please explain more for me?

    Now we redo all the steps in the doc. and turn 335x-demo  

    the log is as follows: it said 'usr/local/bin/pvrsrvctl: SrvInit failed (already initialized?) (err=4)', 

    root@am335x-evm:~# /etc/init.d/335x-demo
    0x10205
    debug8.x
    /dev/mem opened.
    Memory mapped at address 0x40166000.
    Read at address  0x44E0007C (0x4016607c): 0x00030000
    Write at address 0x44E0007C (0x4016607c): 0x00000002, readback 0x00000002
    installing 8.x SGX debug user libraries

    Installing PowerVR Consumer/Embedded DDK 'sgxddk_1.10@2359475' on target

    File system installation root is /

    Uninstalling existing version sgxddk_1.10@2359475
    Uninstallation completed.
    boot script rc.pvr -> /etc/init.d/rc.pvr
    kernel module pvrsrvkm.ko -> /lib/modules/3.2.0-gd53561e-dirty/extra/pvrsrvkm.ko
    kernel module omaplfb.ko -> /lib/modules/3.2.0-gd53561e-dirty/extra/omaplfb.ko
    shared library libGLES_CM.so -> /usr/lib/libGLES_CM.so.1.10.2359475
    shared library libusc.so -> /usr/lib/libusc.so.1.10.2359475
    shared library libGLESv2.so -> /usr/lib/libGLESv2.so.1.10.2359475
    shared library libglslcompiler.so -> /usr/lib/libglslcompiler.so.1.10.2359475
    shared library libIMGegl.so -> /usr/lib/libIMGegl.so.1.10.2359475
    shared library libEGL.so -> /usr/lib/libEGL.so.1.10.2359475
    shared library libpvr2d.so -> /usr/lib/libpvr2d.so.1.10.2359475
    shared library libpvrPVR2D_BLITWSEGL.so -> /usr/lib/libpvrPVR2D_BLITWSEGL.so.1.10.2359475
    shared library libpvrPVR2D_FLIPWSEGL.so -> /usr/lib/libpvrPVR2D_FLIPWSEGL.so.1.10.2359475
    shared library libpvrPVR2D_FRONTWSEGL.so -> /usr/lib/libpvrPVR2D_FRONTWSEGL.so.1.10.2359475
    shared library libpvrPVR2D_LINUXFBWSEGL.so -> /usr/lib/libpvrPVR2D_LINUXFBWSEGL.so.1.10.2359475
    shared library libpvrEWS_WSEGL.so -> /usr/lib/libpvrEWS_WSEGL.so.1.10.2359475
    shared library libpvrEWS_REMWSEGL.so -> /usr/lib/libpvrEWS_REMWSEGL.so.1.10.2359475
    shared library libsrv_um.so -> /usr/lib/libsrv_um.so.1.10.2359475
    shared library libsrv_init.so -> /usr/lib/libsrv_init.so.1.10.2359475
    shared library libPVRScopeServices.so -> /usr/lib/libPVRScopeServices.so.1.10.2359475
    shared library libews.so -> /usr/lib/libews.so.1.10.2359475
    binary pvrsrvctl -> /usr/local/bin/pvrsrvctl
    binary sgx_init_test -> /usr/local/bin/sgx_init_test
    binary ews_server -> /usr/local/bin/ews_server
    binary ews_server_es2 -> /usr/local/bin/ews_server_es2
    binary services_test -> /usr/local/bin/services_test
    binary sgx_blit_test -> /usr/local/bin/sgx_blit_test
    binary sgx_clipblit_test -> /usr/local/bin/sgx_clipblit_test
    binary sgx_flip_test -> /usr/local/bin/sgx_flip_test
    binary sgx_render_flip_test -> /usr/local/bin/sgx_render_flip_test
    binary pvr2d_test -> /usr/local/bin/pvr2d_test
    binary gles1test1 -> /usr/local/bin/gles1test1
    binary gles1_texture_stream -> /usr/local/bin/gles1_texture_stream
    binary gles2test1 -> /usr/local/bin/gles2test1
    shader glsltest1_vertshader.txt -> /usr/local/bin/glsltest1_vertshader.txt
    shader glsltest1_fragshaderA.txt -> /usr/local/bin/glsltest1_fragshaderA.txt
    shader glsltest1_fragshaderB.txt -> /usr/local/bin/glsltest1_fragshaderB.txt
    binary gles2_texture_stream -> /usr/local/bin/gles2_texture_stream
    binary eglinfo -> /usr/local/bin/eglinfo
    binary ews_test_gles1 -> /usr/local/bin/ews_test_gles1
    binary ews_test_gles2 -> /usr/local/bin/ews_test_gles2
    shader ews_test_gles2_main.vert -> /usr/local/bin/ews_test_gles2_main.vert
    shader ews_test_gles2_main.frag -> /usr/local/bin/ews_test_gles2_main.frag
    shader ews_test_gles2_pp.vert -> /usr/local/bin/ews_test_gles2_pp.vert
    shader ews_test_gles2_pp.frag -> /usr/local/bin/ews_test_gles2_pp.frag
    binary ews_test_swrender -> /usr/local/bin/ews_test_swrender

    Installation complete!
    You may now reboot your target.

    Disabling lock debugging due to kernel taint
    +++++++++++++ PVRCore_Init 1031 +++++++++++++
    +++++++++++++ PVRCore_Init 1046 +++++++++++++
    PVR: PVRCore_Init
    +++++++++++++ PVRCore_Init 1051 +++++++++++++
    +++++++++++++ PVRCore_Init 1057 +++++++++++++
    +++++++++++++ PVRCore_Init 1064 +++++++++++++
    +++++++++++++ PVRCore_Init 1071 +++++++++++++
    +++++++++++++ PVRCore_Init 1074 +++++++++++++
    +++++++++++++ PVRCore_Init 1083 +++++++++++++
    +++++++++++++ PVRCore_Init 1097 +++++++++++++
    +++++++++++++ PVRCore_Init 1112 +++++++++++++
    +++++++++++++ PVRCore_Init 1151 +++++++++++++
    PVR: PVRCore_Init: major device 251
    +++++++++++++ PVRCore_Init 1176 +++++++++++++
    +++++++++++++ PVRCore_Init 1194 +++++++++++++
    +++++++++++++ PVRSRVOpen 839 +++++++++++++
    +++++++++++++ PVRSRVOpen 853 +++++++++++++
    PVR:(Error): OpenServices: Cannot open device driver /dev/pvrsrvkm. [79, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVInitSrvConnect: PVRSRVConnect failed [2413, /bridged_pvr_glue.c]
    PVR:(Error): SrvInit: PVRSRVInitSrvConnect failed (4) [37, /srvinit.c]
    /usr/local/bin/pvrsrvctl: SrvInit failed (already initialized?) (err=4)
    root@am335x-evm:~# ls -l /dev/pvrsrvkm                                                                                                        
    crw-rw-rw-    1 root     root      251,   0 Jun 26 02:24 /dev/pvrsrvkm

  • Dear Miroslav,
    Would you please confirm for me that OPENGL SDK is not supported by 3352 and supported by 3354/3358/3359?
  • FUNCTION AM3352 AM3354 AM3356 AM3357 AM3358 AM3359
    ARM Cortex-A8 Yes Yes Yes Yes Yes Yes
    Frequency(1) 300 MHz 600 MHz 300 MHz 300 MHz 600 MHz 600 MHz
    600 MHz 800 MHz 600 MHz 600 MHz 800 MHz 800 MHz
    800 MHz 1000 MHz 800 MHz 800 MHz 1000 MHz
    1000 MHz
    MIPS(2) 600 1200 600 600 1200 1200
    1200 1600 1200 1200 1600 1600
    1600 2000 1600 1600 2000
    2000
    On-Chip L1 Cache 64 KB 64 KB 64 KB 64 KB 64 KB 64 KB
    On-Chip L2 Cache 256 KB 256 KB 256 KB 256 KB 256 KB 256 KB
    Graphics Accelerator (SGX530) - 3D - - 3D 3D

    I read the 335x doc, 3352 is not support SGX530, is that means not support opengl SDK?
  • new log with PM_RUNTIME=1,

    root@am335x-evm:~# /etc/init.d/335x-demo
    0x10205
    debug8.x
    /dev/mem opened.
    Memory mapped at address 0x40083000.
    Read at address 0x44E0007C (0x4008307c): 0x00030000
    Write at address 0x44E0007C (0x4008307c): 0x00000002, readback 0x00000002
    installing 8.x SGX debug user libraries
    Installing PowerVR Consumer/Embedded DDK 'sgxddk_1.10@2359475' on target
    File system installation root is /
    Uninstalling existing version sgxddk_1.10@2359475
    Uninstallation completed.
    boot script rc.pvr -> /etc/init.d/rc.pvr
    kernel module pvrsrvkm.ko -> /lib/modules/3.2.0-gd53561e-dirty/extra/pvrsrvkm.ko
    kernel module omaplfb.ko -> /lib/modules/3.2.0-gd53561e-dirty/extra/omaplfb.ko
    shared library libGLES_CM.so -> /usr/lib/libGLES_CM.so.1.10.2359475
    shared library libusc.so -> /usr/lib/libusc.so.1.10.2359475
    shared library libGLESv2.so -> /usr/lib/libGLESv2.so.1.10.2359475
    shared library libglslcompiler.so -> /usr/lib/libglslcompiler.so.1.10.2359475
    shared library libIMGegl.so -> /usr/lib/libIMGegl.so.1.10.2359475
    shared library libEGL.so -> /usr/lib/libEGL.so.1.10.2359475
    shared library libpvr2d.so -> /usr/lib/libpvr2d.so.1.10.2359475
    shared library libpvrPVR2D_BLITWSEGL.so -> /usr/lib/libpvrPVR2D_BLITWSEGL.so.1.10.2359475
    shared library libpvrPVR2D_FLIPWSEGL.so -> /usr/lib/libpvrPVR2D_FLIPWSEGL.so.1.10.2359475
    shared library libpvrPVR2D_FRONTWSEGL.so -> /usr/lib/libpvrPVR2D_FRONTWSEGL.so.1.10.2359475
    shared library libpvrPVR2D_LINUXFBWSEGL.so -> /usr/lib/libpvrPVR2D_LINUXFBWSEGL.so.1.10.2359475
    shared library libpvrEWS_WSEGL.so -> /usr/lib/libpvrEWS_WSEGL.so.1.10.2359475
    shared library libpvrEWS_REMWSEGL.so -> /usr/lib/libpvrEWS_REMWSEGL.so.1.10.2359475
    shared library libsrv_um.so -> /usr/lib/libsrv_um.so.1.10.2359475
    shared library libsrv_init.so -> /usr/lib/libsrv_init.so.1.10.2359475
    shared library libPVRScopeServices.so -> /usr/lib/libPVRScopeServices.so.1.10.2359475
    shared library libews.so -> /usr/lib/libews.so.1.10.2359475
    binary pvrsrvctl -> /usr/local/bin/pvrsrvctl
    binary sgx_init_test -> /usr/local/bin/sgx_init_test
    binary ews_server -> /usr/local/bin/ews_server
    binary ews_server_es2 -> /usr/local/bin/ews_server_es2
    binary services_test -> /usr/local/bin/services_test
    binary sgx_blit_test -> /usr/local/bin/sgx_blit_test
    binary sgx_clipblit_test -> /usr/local/bin/sgx_clipblit_test
    binary sgx_flip_test -> /usr/local/bin/sgx_flip_test
    binary sgx_render_flip_test -> /usr/local/bin/sgx_render_flip_test
    binary pvr2d_test -> /usr/local/bin/pvr2d_test
    binary gles1test1 -> /usr/local/bin/gles1test1
    binary gles1_texture_stream -> /usr/local/bin/gles1_texture_stream
    binary gles2test1 -> /usr/local/bin/gles2test1
    shader glsltest1_vertshader.txt -> /usr/local/bin/glsltest1_vertshader.txt
    shader glsltest1_fragshaderA.txt -> /usr/local/bin/glsltest1_fragshaderA.txt
    shader glsltest1_fragshaderB.txt -> /usr/local/bin/glsltest1_fragshaderB.txt
    binary gles2_texture_stream -> /usr/local/bin/gles2_texture_stream
    binary eglinfo -> /usr/local/bin/eglinfo
    binary ews_test_gles1 -> /usr/local/bin/ews_test_gles1
    binary ews_test_gles2 -> /usr/local/bin/ews_test_gles2
    shader ews_test_gles2_main.vert -> /usr/local/bin/ews_test_gles2_main.vert
    shader ews_test_gles2_main.frag -> /usr/local/bin/ews_test_gles2_main.frag
    shader ews_test_gles2_pp.vert -> /usr/local/bin/ews_test_gles2_pp.vert
    shader ews_test_gles2_pp.frag -> /usr/local/bin/ews_test_gles2_pp.frag
    binary ews_test_swrender -> /usr/local/bin/ews_test_swrender
    Installation complete!
    You may now reboot your target.
    Disabling lock debugging due to kernel taint
    +++++++++++++ PVRCore_Init 1031 +++++++++++++
    +++++++++++++ PVRCore_Init 1046 +++++++++++++
    PVR: PVRCore_Init
    +++++++++++++ PVRCore_Init 1051 +++++++++++++
    +++++++++++++ PVRCore_Init 1057 +++++++++++++
    +++++++++++++ PVRCore_Init 1064 +++++++++++++
    +++++++++++++ PVRCore_Init 1071 +++++++++++++
    +++++++++++++ PVRCore_Init 1074 +++++++++++++
    +++++++++++++ PVRCore_Init 1083 +++++++++++++
    +++++++++++++ driver name:pvrsrvkm
    +++++++++++++ PVRCore_Init 1098 +++++++++++++
    +++++++++++++ PVRCore_Init 1100 +++++++++++++
    +++++++++++++ PVRCore_Init 1102 +++++++++++++
    +++++++++++++ PVRSRVDriverProbe 402 +++++++++++++
    PVR: PVRSRVDriverProbe(pDevice=bf067e88)
    +++++++++++++ PVRSRVDriverProbe 460 +++++++++++++
    PVR: EnableSystemClocks: Enabling System Clocks
    PVR: GPTIMER11 clock is 24MHz
    +++++++++++++ PVRSRVDriverProbe 470 +++++++++++++
    +++++++++++++ PVRSRVDriverProbe 485 +++++++++++++
    +++++++++++++ PVRCore_Init 1154 +++++++++++++
    PVR: PVRCore_Init: major device 251
    +++++++++++++ PVRCore_Init 1179 +++++++++++++
    +++++++++++++ PVRCore_Init 1197 +++++++++++++
    +++++++++++++ PVRSRVOpen 839 +++++++++++++
    +++++++++++++ PVRSRVOpen 853 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 187 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 193 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 197 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 206 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 215 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 223 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 236 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 245 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 258 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 267 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 276 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 289 +++++++++++++
    +++++++++++++ PVRSRVPerProcessDataConnect 295 +++++++++++++
    +++++++++++++ PVRSRVOpen 866 +++++++++++++
    PVR: Installing MISR with cookie bf06ad60
    PVR: Installing device LISR SGX ISR on IRQ 37 with cookie ce0ae080
    PVR: SysFinalise: Version string: SGX revision = 125
    Unhandled fault: external abort on non-linefetch (0x1028) at 0xd1000ca8
    Internal error: : 1028 [#1]
    Modules linked in: pvrsrvkm(O)
    CPU: 0 Tainted: G O (3.2.0-gd53561e-dirty #108)
    PC is at PollForValueKM+0x90/0x1c4 [pvrsrvkm]
    LR is at PollForValueKM+0x70/0x1c4 [pvrsrvkm]
    pc : [<bf0127c8>] lr : [<bf0127a8>] psr: 80000013
    sp : ce0b1a38 ip : ce0b1a38 fp : ce0b1a7c
    r10: be8728fc r9 : ce0b0000 r8 : cf2a6848
    r7 : c01c6745 r6 : be8728fc r5 : cf3a0e40 r4 : 00000000
    r3 : d1000ca8 r2 : 00000001 r1 : 00000000 r0 : f08b1740
    Flags: Nzcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
    Control: 10c5387d Table: 8e0b4019 DAC: 00000015
    Process pvrsrvctl (pid: 1843, stack limit = 0xce0b02f0)
    Stack: (0xce0b1a38 to 0xce0b2000)
    1a20: ce0b1a5c ce0b1a48
    1a40: bf0351ec bf02a49c 000f4240 000000ff 00000000 d1000ca8 bf03a244 00000001
    1a60: f08b1741 f08b1740 00000000 ffffffff ce0b1aac ce0b1a80 bf03a35c bf012744
    1a80: 00000032 00000000 bf03a244 00000000 40000000 ce409000 40000000 00000000
    1aa0: ce0b1aec ce0b1ab0 bf03a458 bf03a2c4 bf02ff8c bf02b900 00000000 40000000
    1ac0: 00000001 ce409000 ce4090f8 ce409000 40000000 ce409000 8e330000 00003fff
    1ae0: ce0b1b1c ce0b1af0 bf030134 bf03a39c bf06aed4 00000000 00000001 ce409000
    1b00: ce409000 00000000 d09f1140 ce331b40 ce0b1b7c ce0b1b20 bf03ae74 bf030074
    1b20: 79502080 00000002 00000000 ce0ae080 c05bff48 00000002 00000000 ce0ae080
    1b40: c005e64c c00208e4 78ce3568 00000009 79502080 00000009 c05bff18 00000002
    1b60: 00000000 d09f1140 ce409000 ce0ae080 ce0b1bac ce0b1b80 bf004fc4 bf03adc8
    1b80: ce0b1bec ce380580 ce0b1bfc 00000000 00000000 00000000 00000000 00000000
    1ba0: ce0b1bd8 ce0b1bb0 bf01a178 bf004ebc 78ce3568 ce380580 78ce3568 ce0b1be0
    1bc0: 00000000 00000000 78ce3568 ce0b1c1c ce0b1be8 bf00508c bf01a140 bf004eb0
    1be0: 00000000 00000000 00000000 bf06ade4 00000000 00000000 00000000 00000000
    1c00: 00000001 bf06ad60 ce0b1c04 00000000 ce0b1c4c ce0b1c20 bf005138 bf005004
    1c20: 00000000 ffffffff 00000000 00000000 ce0b1c2c bf06ad60 ce0b1c34 00000000
    1c40: ce0b1c8c ce0b1c50 bf033be0 bf0050ac bf054ca8 00000008 00000000 00000004
    1c60: ffffffff ce0b1cb0 00000006 ce0ae080 000b1c8c d09f11c0 00000034 00000000
    1c80: ce0b1d04 ce0b1c90 bf032b68 bf033ad8 00000000 00000000 00000000 ce0b1ca8
    1ca0: c000856c 00000000 ce0ae080 ce409000 ce0b1d1c ce380580 ce0b1d94 0f0031a0
    1cc0: 00000002 ffffffff 00000000 00000000 ce0b1d08 d09f11c0 d09f11a4 d09f11a0
    1ce0: ce331ac0 00000000 cf2a6848 bf054ca8 00000000 ce0b1d64 ce0b1d64 ce0b1d08
    1d00: bf03223c bf032a84 bf01a140 bf004eb0 00000000 00000000 ffffffff ce0ae080
    1d20: 00010100 00010101 ce0b1d4c ce0b1d38 d09f11a0 ce331ac0 ce0b1d34 00360019
    1d40: ce409000 00000001 bf047858 bf047720 bf06ad60 ce0b1d50 ce0b1d7c ce0b1d68
    1d60: bf0122f0 bf0320d8 ce0b1d64 ce0ae080 ce0b1da4 ce0b1d80 bf012138 bf0122c8
    1d80: bf05aa58 bf06ad60 ce0b1dc4 ce0ae080 bf048b5c 00000000 ce0b1dc4 ce0b1da8
    1da0: bf019e2c bf012128 bf01211c ce0ae080 00000000 00000000 ce0b1df4 ce0b1dc8
    1dc0: bf012294 bf019df4 ce0b1de4 ff872943 00000000 00000001 be87293c bf06ad60
    1de0: ce0b1ddc 00000000 ce0b1e14 ce0b1df8 bf040f50 bf01218c ce073c80 d09e2000
    1e00: d09e1000 00000045 ce0b1e54 ce0b1e18 bf043940 bf040eb8 00000008 00000001
    1e20: ce0b1e84 ce073c80 bf06ad60 cf764380 ce0b1e28 bf040eac d09e2000 d09e1000
    1e40: 00000045 fffffff2 ce0b1ee4 ce0b1e58 bf02ec20 bf043610 00000000 ce426d88
    1e60: ce0b1e8c ce0b1e70 bf021a84 be8728fc c01c6745 cf3a0e40 cf33f980 ce1a9860
    1e80: ce073c80 00000045 0000001c be87293c 00000008 be872944 00000008 00000001
    1ea0: c007e4b8 ce1a9860 00000200 ce0b1fb0 ce35e400 ce0b1ec0 c0055d80 c01e19c4
    1ec0: 00000000 c01c6745 ce0b1e84 00000733 be8728fc fffffff2 ce0b1ef4 ce0b1ee8
    1ee0: c00afabc bf02e8d0 ce0b1f74 ce0b1ef8 c00b0518 c00afaa0 ce0b1fac ce0b1f08
    1f00: c0008420 c0019644 00000000 ce426d88 c0605a30 ce426d88 00000000 ce426d88
    1f20: ce0b1f44 ce0b1f30 c009195c c009ead0 cf33f980 ce468d30 ce0b1f84 ce0b1f48
    1f40: c0092858 c0091904 c0605a30 00000000 cf3a0e40 be8728fc c01c6745 00000003
    1f60: ce0b0000 00000000 ce0b1fa4 ce0b1f78 c00b05c4 c00b0094 ce0b1fa4 00000000
    1f80: c0092bdc 00000000 be872b88 000087d5 00000036 c0013ae8 00000000 ce0b1fa8
    1fa0: c0013940 c00b057c 00000000 be872b88 00000003 c01c6745 be8728fc be8728fc
    1fc0: 00000000 be872b88 000087d5 00000036 00000000 00000000 400e9000 be872924
    1fe0: 4019b084 be8728dc 40155d2c 4031b1bc 60000010 00000003 25802900 02000000
    Backtrace:
    [<bf012738>] (PollForValueKM+0x0/0x1c4 [pvrsrvkm]) from [<bf03a35c>] (SGXResetInvalDC+0xa4/0xd8 [pvrsrvkm])
    [<bf03a2b8>] (SGXResetInvalDC+0x0/0xd8 [pvrsrvkm]) from [<bf03a458>] (SGXReset+0xc8/0x330 [pvrsrvkm])
    [<bf03a390>] (SGXReset+0x0/0x330 [pvrsrvkm]) from [<bf030134>] (SGXInitialise+0xcc/0x2b8 [pvrsrvkm])
    [<bf030068>] (SGXInitialise+0x0/0x2b8 [pvrsrvkm]) from [<bf03ae74>] (SGXPostPowerState+0xb8/0x1dc [pvrsrvkm])
    [<bf03adbc>] (SGXPostPowerState+0x0/0x1dc [pvrsrvkm]) from [<bf004fc4>] (PVRSRVDevicePostPowerStateKM_AnyVaCb+0x114/0x148 [pvrsrvkm])
    [<bf004eb0>] (PVRSRVDevicePostPowerStateKM_AnyVaCb+0x0/0x148 [pvrsrvkm]) from [<bf01a178>] (List_PVRSRV_POWER_DEV_PVRSRV_ERROR_Any_va+0x48/0x7)
    [<bf01a130>] (List_PVRSRV_POWER_DEV_PVRSRV_ERROR_Any_va+0x0/0x7c [pvrsrvkm]) from [<bf00508c>] (PVRSRVDevicePostPowerStateKM+0x94/0xa8 [pvrsrv)
    r3:00000000 r2:00000000 r1:bf004eb0
    [<bf004ff8>] (PVRSRVDevicePostPowerStateKM+0x0/0xa8 [pvrsrvkm]) from [<bf005138>] (PVRSRVSetDevicePowerStateKM+0x98/0xec [pvrsrvkm])
    [<bf0050a0>] (PVRSRVSetDevicePowerStateKM+0x0/0xec [pvrsrvkm]) from [<bf033be0>] (SGXScheduleCCBCommandKM+0x114/0x1ac [pvrsrvkm])
    [<bf033acc>] (SGXScheduleCCBCommandKM+0x0/0x1ac [pvrsrvkm]) from [<bf032b68>] (SGXGetMiscInfoUkernel+0xf0/0x24c [pvrsrvkm])
    [<bf032a78>] (SGXGetMiscInfoUkernel+0x0/0x24c [pvrsrvkm]) from [<bf03223c>] (SGXDevInitCompatCheck+0x170/0x9ac [pvrsrvkm])
    [<bf0320cc>] (SGXDevInitCompatCheck+0x0/0x9ac [pvrsrvkm]) from [<bf0122f0>] (PVRSRVDevInitCompatCheck+0x34/0x4c [pvrsrvkm])
    [<bf0122bc>] (PVRSRVDevInitCompatCheck+0x0/0x4c [pvrsrvkm]) from [<bf012138>] (PVRSRVFinaliseSystem_CompatCheck_AnyCb+0x1c/0x64 [pvrsrvkm])
    [<bf01211c>] (PVRSRVFinaliseSystem_CompatCheck_AnyCb+0x0/0x64 [pvrsrvkm]) from [<bf019e2c>] (List_PVRSRV_DEVICE_NODE_PVRSRV_ERROR_Any+0x44/0x7)
    [<bf019de8>] (List_PVRSRV_DEVICE_NODE_PVRSRV_ERROR_Any+0x0/0x78 [pvrsrvkm]) from [<bf012294>] (PVRSRVFinaliseSystem+0x114/0x13c [pvrsrvkm])
    [<bf012180>] (PVRSRVFinaliseSystem+0x0/0x13c [pvrsrvkm]) from [<bf040f50>] (PVRSRVInitSrvDisconnectBW+0xa4/0xf8 [pvrsrvkm])
    [<bf040eac>] (PVRSRVInitSrvDisconnectBW+0x0/0xf8 [pvrsrvkm]) from [<bf043940>] (BridgedDispatchKM+0x33c/0x3dc [pvrsrvkm])
    [<bf043604>] (BridgedDispatchKM+0x0/0x3dc [pvrsrvkm]) from [<bf02ec20>] (PVRSRV_BridgeDispatchKM+0x35c/0x4a8 [pvrsrvkm])
    [<bf02e8c4>] (PVRSRV_BridgeDispatchKM+0x0/0x4a8 [pvrsrvkm]) from [<c00afabc>] (vfs_ioctl+0x28/0x44)
    [<c00afa94>] (vfs_ioctl+0x0/0x44) from [<c00b0518>] (do_vfs_ioctl+0x490/0x4e8)
    [<c00b0088>] (do_vfs_ioctl+0x0/0x4e8) from [<c00b05c4>] (sys_ioctl+0x54/0x80)
    [<c00b0570>] (sys_ioctl+0x0/0x80) from [<c0013940>] (ret_fast_syscall+0x0/0x30)
    r8:c0013ae8 r7:00000036 r6:000087d5 r5:be872b88 r4:00000000
    Code: e3a03001 e50b3020 ea00002a e51b3028 (e5932000)
    ---[ end trace cbbd15e12ab26709 ]---
  • Amon Wu said:
    What's the matter below on our Am3352 board?

    There's no SGX530 on AM3352.  If you want graphics then you should use AM3354 which is pin-for-pin compatible and adds the SGX530.

  • we use SDK6 with kernel 3.2