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.

Problem with OpenGLES Demos on OMAP3530 EVM using DVI/480P

Other Parts Discussed in Thread: OMAP3530

Hello all, I am having a problem running the OpenGLES graphics demos on the OMAP3530 EVM when I set up the display for DVI/480P. THe demos work great if I use 720p, but not 480P. I've included the procedure (and console output) for doing this below (both for the 480P error and for when it works fine using 720P). Can anyone tell me what's wrong? Thanks so much.

BTW...I'm using OMAP35x_Graphics_SDK_3_00_00_06, dvsdk_3_00_00_29, OMAP35x_SDK_1.0.2

480P (fails)
============================

1. Set displat to DVI/480P
[root@OMAP3EVM /]# echo DVI > /sys/class/display_control/omap_disp_control/ch0_output
[root@OMAP3EVM /]# echo 480P > /sys/class/display_control/omap_disp_control/ch0_mode
[root@OMAP3EVM /]# cat /sys/class/display_control/omap_disp_control/ch0_mode 
480P[root@OMAP3EVM /]# cat /sys/class/display_control/omap_disp_control/ch0_output  
DVI[root@OMAP3EVM /]# /opt/test/setfb0 720 480

2. Setup framebuffer for 720x480 (this is just a tool I wrote to do this)
fbdev_init - setting /dev/fb0 to 720x480
(before - frame buffer is the default for LCD panel 480x640)
fb_fix_screeninfo :: id:omap24xxfb type:0 line_length:960
fb_var_screeninfo :: xres:480 yres:640 xoffset:0 yoffset:0 xres_virtual:480 yres_virtual:1280 bits_per_pixel:16 rotate:0 vmode:0
fb_var_screeninfo :: pixclock:32406 left_margin:97 right_margin:25 upper_margin:32 lower_margin:10 hsync_len:41 vsync_len:4
fb_var_screeninfo :: red(11,5,0) green(5,6,0) blue(0,5,0)

(after - changed to 720x480)
fb_fix_screeninfo :: id:omap24xxfb type:0 line_length:1440
fb_var_screeninfo :: xres:720 yres:480 xoffset:0 yoffset:0 xres_virtual:720 yres_virtual:960 bits_per_pixel:16 rotate:0 vmode:0
fb_var_screeninfo :: pixclock:32406 left_margin:97 right_margin:25 upper_margin:32 lower_margin:10 hsync_len:41 vsync_len:4
fb_var_screeninfo :: red(11,5,0) green(5,6,0) blue(0,5,0)

3. Start PVR (loads kernel modules etc.)
[root@OMAP3EVM /]# /etc/init.d/rc.pvr start
pvrsrvkm: no version for "struct_module" found: kernel tainted.
Loaded PowerVR consumer services.

4. Run demo (error creating surface)
[root@OMAP3EVM /]# /opt/gfxsdkdemos/ogles2/OGLES2Shaders
PVRShell: EGL 1.4 initialized
Exit message has been set to: "PVRShell: Unable to create surface
".
InitAPI failed!
PVRShell: Unable to create surface



Same procedure as above for 720P (this works great)
===================================================

1. Set display to DVI/720P
[root@OMAP3EVM /]# echo 720P > /sys/class/display_control/omap_disp_control/ch0_mode

2. Stop PVR
[root@OMAP3EVM /]# /etc/init.d/rc.pvr stop

3. Setup framebuffer for 1280x720
[root@OMAP3EVM /]# /opt/test/setfb0 1280 720
fbdev_init - setting /dev/fb0 to 1280x720
(before - frame buffer is the still set for the failed 480p attempt)
fb_fix_screeninfo :: id:omap24xxfb type:0 line_length:1440
fb_var_screeninfo :: xres:720 yres:480 xoffset:0 yoffset:0 xres_virtual:720 yres_virtual:960 bits_per_pixel:16 rotate:0 vmode:0
fb_var_screeninfo :: pixclock:13888 left_margin:256 right_margin:64 upper_margin:20 lower_margin:5 hsync_len:50 vsync_len:5
fb_var_screeninfo :: red(11,5,0) green(5,6,0) blue(0,5,0)

(after - changed to 1280x720)
fb_fix_screeninfo :: id:omap24xxfb type:0 line_length:2560
fb_var_screeninfo :: xres:1280 yres:720 xoffset:0 yoffset:0 xres_virtual:1280 yres_virtual:1440 bits_per_pixel:16 rotate:0 vmode:0
fb_var_screeninfo :: pixclock:13888 left_margin:256 right_margin:64 upper_margin:20 lower_margin:5 hsync_len:50 vsync_len:5
fb_var_screeninfo :: red(11,5,0) green(5,6,0) blue(0,5,0)

4. Re-load PVR
[root@OMAP3EVM /]# /etc/init.d/rc.pvr start
Loaded PowerVR consumer services.

5. Run demo (works great)
[root@OMAP3EVM /]# /opt/gfxsdkdemos/ogles2/OGLES2Shaders
PVRShell: EGL 1.4 initialized
irq -33, desc: c03afdb4, depth: 0, count: 0, unhandled: 0
->handle_irq():  c008533c, handle_bad_irq+0x0/0x230
->chip(): 00000000, __init_begin+0x3fff8000/0x30
->action(): 00000000
irq -33, desc: c03afdb4, depth: 0, count: 0, unhandled: 0
->handle_irq():  c008533c, handle_bad_irq+0x0/0x230
->chip(): 00000000, __init_begin+0x3fff8000/0x30
->action(): 00000000