GSG: AM35x and OMAP35x Graphics SDK Additional Procedures
From Texas Instruments Embedded Processors Wiki
^ Up to main OMAP35x Graphics SDK Getting Started Guide Table of Contents
Contents |
Using the PIXMAP surface for Drawing
Using Pixmap needs CMEM module to be inserted. CMEM is part of Linuxutils and can be downloaded from the appropriate DVSDK packages.
Buffers can be exchanged with the SGX rendering system using specific pixmap structure format, and is described in SGXPERF example code (Refer TEST8) at,
Switching between FrontEGL and FlipEGL Modes
When using FrontEGL, SGX fb updates happen directly on single framebuffer (front buffer). Not really recommended except for SGX benchmarking as it will result tearing artifacts at high resolution and frame rates.
FlipEGL uses ping-pong scheme for graphics updates and this is the default EGL library used if /etc/powervr.ini is not present.
Modify the powervr.ini file under the <your_target_file_system>/etc/ to select between the FrontEGL or FlipEGL mode.
Flip support requires increasing the virtual yres size in fb0 plane and allocating appropriate memory for framebuffer.
Use the following command to increase the virtual yres size in fb0 plane. The vyres size needs to be set to three times the height of the screen size for triple buffering. For eg:- OMAP3 EVM LCD fb with dimensions 480x640
target $ fbset -vyres 1920
Switching the display output from LCD to DVI
NOTE :DVI output for AM35x is not supported in PSP release 03.
Switching the display output from LCD to DVI during boot time
This can be done by changing in the bootargs to include the following
omapdss.def_disp="dvi"
For example, in case of NFS mount
OMAP3EVM # setenv bootargs 'console=ttyS0,115200n8=noinitrd=rw ip=dhcp root=/dev/nfs nfsroot=<your nfs_path>,nolock, mem=128M vram=8M omapfb.vram=0:4M,1:3M,2:3M omapdss.def_disp="dvi"'
Switching the display output from LCD to DVI during run time after boot
Once the EVM is booted, you can change the output display from LCD to DVI from the Linux shell in a terminal window connected to the EVM board’s serial port.
Issue following commands to switch output device from LCD to DVI
Step 1:
target $ echo 0 > /sys/devices/platform/omapdss/display0/enabled target $ echo "" > /sys/devices/platform/omapdss/manager0/display target $ fbset -fb /dev/fb0 -xres 640 -yres 480 -vxres 640 -vyres 480 target $ echo "dvi" > /sys/devices/platform/omapdss/manager0/display target $ echo 1 > /sys/devices/platform/omapdss/display2/enabled target $ fbset -fb /dev/fb0 -xres 640 -yres 480 -vxres 640 -vyres 480
Step 2:
target $ fbset -depth 32 -rgba 8/16,8/8,8/0,8/24 target $ /etc/init.d/rc.pvr stop target $ /etc/init.d/rc.pvr start
After this, the demos should run properly on DVI.
Testing the support for ARGB8888 in Frame Buffer Driver
The ARGB8888 is supported by default in DVI mode.For DVI mode boot bootargs need to be changed as given below.
OMAP3EVM # setenv bootargs 'console=ttyS0,115200n8=noinitrd=rw ip=dhcp root=/dev/nfs nfsroot=<your nfs_path>,nolock, mem=128M vram=8M omapfb.vram=0:4M,1:3M,2:3M omapdss.def_disp="dvi"'
Note that if you are switching to ARGB8888 mode after bootup it is mandatory to reload omaplfb.ko kernel module
Leave a Comment