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.

SGX on 640x480 LCD

Hi.

I have a DVI monitor to my AM387x device (via the chip's HDMI interface).  With that, I can also run the SGX demo programs such as sgx_blit_test, sgx_flip_test as well as 3D graphics programs likeOGLES2ChameleonMan.

I also have a 640x480 LCD attached to the AM387x on VOUT[0].  For normal framebuffer use, it works fine.  However, not for most SGX use.

I can run the sgx_blit_test on the LCD and see the normal display.  However, if I run sgx_flip_test I just see a dark/blank screen while the test is running.  No errors are reported by the program. 

If I run sgx_blit_test followed by sgx_flip_test, the screen is dark during sgx_flip_test and then it has a portion of the sgx_blit_test pattern magnified on the screen -- the portion corresponding to the middle of the upper half of the sgx_blit_test pattern.  That is, the left side of the LCD screen has thick red over green over blue horizontal bars and the right side of the screen is yellow.

The start-up commands I am using are:

prcm_config_app s
insmod syslink.ko
firmware_loader 1 /firmware/dm814x_hdvicp.xem3 start
/firmware_loader 2 /firmware/dm814x_hdvpss.xem3 start
insmod vpss.ko sbufaddr=0xBFB00000 mode=dvo2:640x480@60 i2c_mode=1
insmod ti81xxfb.ko vram=0:24M,1:1M,2:1M debug=1
insmod ti81xxhdmi.ko
echo 1:dvo2 > /sys/devices/platform/vpss/graphics0/nodes
echo 0 > /sys/devices/platform/vpss/display1/enabled
echo 25000,640/18/46/96,480/10/33/2,1 > /sys/devices/platform/vpss/display1/timings
echo triplediscrete,rgb888 > /sys/devices/platform/vpss/display1/output
echo 1 > /sys/devices/platform/vpss/display1/enabled
fbset -xres 640 -yres 480 -vxres 640 -vyres 480
insmod /modules/pvrsrvkm.ko
insmod /modules/omaplfb.ko
insmod /modules/bufferclass_ti.ko
devmem2 0x48180f04 w 0x0
devmem2 0x48180900 w 0x2
devmem2 0x48180920 w 0x2
pvrsrvinit


The only think I can see that I have different is the use of a 640x480 rather than a 800x480 LCD.

Anyone have a suggestion?

Regards,

    Steve

  • Output of the below script is needed to proceed further,

    http://processors.wiki.ti.com/index.php/SGXDbg#Baselining_the_current_SGX_driver_environment

  • Hi Prabindh.  Here's the info:


    WSEGL settings
    [default]
    WindowSystem=libpvrPVR2D_FRONTWSEGL.so
    #WindowSystem=libpvrPVR2D_FLIPWSEGL.so

    ------
    ARM CPU information
    Processor    : ARMv7 Processor rev 2 (v7l)
    BogoMIPS    : 599.65
    Features    : swp half thumb fastmult vfp edsp neon vfpv3
    CPU implementer    : 0x41
    CPU architecture: 7
    CPU variant    : 0x3
    CPU part    : 0xc08
    CPU revision    : 2

    Hardware    : Phytec phTI81XXFB  : Dummy open fb0
    yCORE-AM387x
    ReTI81XXFB  : dummy close fb0
    vision    : 0000
    Serial        : 0000000000000000
    ------
    SGX driver information
    Version 1.6.16.4117 (release) /home/steve/Phytec/am387x/packages/graphics-sdk_4.04.00.02/GFX_Linux_KM
    System Version String: SGX revision = 1.2.5
    ------
    Framebuffer settings
    ------
    Rotation settings
    0
    ------
    Kernel Module information
    Module                  Size  Used by
    bufferclass_ti          4946  0
    omaplfb                10730  0
    pvrsrvkm              155274  2 bufferclass_ti,omaplfb
    ti81xxhdmi             14575  0
    ti81xxfb               21722  1
    vpss                   72470  3 omaplfb,ti81xxhdmi,ti81xxfb
    syslink              1104979  0
    ------
    Boot settings
    rootdelay=2 console=ttyO0,115200n8 noinitrd rw mem=256M earlyprintk notifyk.vpssm3_sva=0xBF900000 ip=dhcp vram=50M ti814xfb.vram=0:48M,1:1M,2:1M root=/dev/mmcblk0p2 rootfstype=ext3 rootwait
    ------
    Linux Kernel version
    Linux phyCORE 2.6.37 #89 Tue Jan 17 09:51:56 EST 2012 armv7l GNU/Linux

    Regards,

        Steve



  • Thanks, Are you also seeing this issue in running the 3D demos ? Can you please describe what you observe ?

     

     

     

  • Because of the problem I had with the more basic sgx_flip_test, I hadn't tried the 3D demos on the LCD.  I am surprised to find that they work on the LCD as they did on HDMI.

    It seems that the resolution gets messed up by running programs like sgx_flip_test. As I described earlier, after running those programs I see an enlarged view of just a portion of the normal screen on LCD.

    But it doesn't appear to be messed up in the frame buffer.  After running sgx_flip_test, I can run programs that directly use the framebuffer and they run normally.  But after sgx_flip_test and the like, SGX programs which used to work (including sgx_blit_test and the 3D demos) still run but don't use the screen properly.  In all those cases, I see the enlarged/zoomed in view.

        Steve