NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

ANDROID RN 4 04 00 01

From Texas Instruments Wiki
Jump to: navigation, search

Content is no longer maintained and is being kept for reference only!


Release Notes for Android release 4.04.00.01[edit]

Introduction[edit]

Content is no longer maintained and is being kept for reference only!


This release includes the Android graphics drivers for the AM/DM 35x/37x/45x |AM 38xx family of chipsets. The Graphics SDK contains documentation and demo programs.


Important Note:

  • AM/DM 35x|37x have been tested with 2.6.32 and 2.6.37 kernel.
  • AM38xx has been tested with 2.6.37 kernel.
  • AM45x has been tested with 2.6.35 kernel.

Requirements, Pre-requisites and demo instructions[edit]

For software setup and pre-requisites and other instructions, refer to the main pages at,

Android_Graphics_SDK_Getting_Started_Guide


Features in this release[edit]

  • Support for SGX-530 core revisions 1.2.1 (AM 35x)
  • Support for SGX-530 core revisions 1.2.5 (AM 37x, AM38xx)
  • Support for SGX-540 core revisions 1.2.0 (AM45x)
  • Updated IMG DDK version 1.7, that has improved Graphics performance
  • Support for AM38xx with 2.6.37 Kernel on Gingerbread.
  • Support for AM35x|37x with 2.6.32 and 2.6.37 Kernel on Gingerbread.
  • Support for AM45x with 2.6.35 kernel on Gingerbread.

Kernel, Toolchain used for validation[edit]

AM37x:

  • Tested with Android 2.6.32 and 2.6.37 kernel - GingerBread
  • Android toolchain - GingerBread
  • Android filesystem - GingerBread

AM38xx:

  • Tested with Android 2.6.37 kernel - Gingerbread
  • Android toolchain - Gingerbread
  • Android filesystem - Gingerbread

AM45x:

  • Tested with Android 2.6.35 kernel - Gingerbread
  • Android toolchain - Gingerbread
  • Android filesystem - Gingerbread

What is supported[edit]

Khronos API support[edit]

  • OpenGL ES 1.1
  • OpenGL ES 2.0
  • OpenVG 1.1 (Using CPU for tessellation)
  • EGL
  • Limited 2D acceleration via PVR2D API

Window Systems[edit]

  • Android Window system is supported.

Extensions[edit]

  • Refer to eglinfo output (run eglinfo on Android terminal prompt to see the list of extensions supported).

What is not supported[edit]

  • Power Management features are not fully validated.
  • Automatic SGX core version detection, and target side install are not supported due to the limited command set available on Android.

Additional Packages[edit]

Benchmarking packages for SGX functionalities and APIs are available at,

Fixed in this Release[edit]

  • Build system - to support multiple platforms builds viz. AM/DM 35x/37x, AM38xx, AM45x
  • Fixed system lockup issues on AM37x platforms.
  • Updated U-boot to set correct SGX clock frequency on AM37x devices.
  • Added S-video support.
  • Fixed powerdomain sleep issues.

Limitations/ Known Issues[edit]

  • Active Power Management(SGX) feature is not supported.

Build and Installation[edit]

  • SDK Build Procedure:

1) Edit Rules.make file and set appropriate paths

2) Build SDK Using -

    $ make OMAPES=X.x (see make help for more info)

4) Install the SDK into File system using:

    $ sudo make OMAPES=X.x install 

(This copies the *.so and *.ko to file system pointed to by TARGETFS_INSTALL_DIR variable).


Note: In Case of AM389x/387x platforms Syslink and VPSS modules need to be built for Video/Display subsystem.

Building and Installing SysLink:[edit]

For AM389x:

$ export ANDROID_ROOT=/path/to/android/source
$ export SYSLINK_ROOT=/path/to/android/source/syslink/REL_SYSLINK_02.00.00.67/syslink_02_00_00_67_alpha2
$ export NFS_ROOT=/path/to/android/nfs/filesystem
$ export IPCDIR=/path/to/android/source/syslink/ipc_1_22_03_23/packages   
  • Building the SysLink module:
 $ cd $SYSLINK_ROOT/ti/syslink/utils/hlos/knl/Linux
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX clean
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX
  • Building the SysLink user library:
 $ cd $SYSLINK_ROOT/ti/syslink/utils/hlos/usr/Linux
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX clean
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX


 $ cd $SYSLINK_ROOT/ti/syslink/samples/hlos/common/usr/Linux
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX clean
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX
  • Building the ProcMgr binary:
 $ cd $SYSLINK_ROOT/ti/syslink/samples/hlos/procMgr/usr/Linux
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX clean
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX
  • Copy Kernel modules:
/path/to/android/source/syslink/REL_SYSLINK_02.00.00.67/syslink_02_00_00_67_alpha2/ti/syslink/bin/TI816X/syslink.ko
/path/to/android/source/REL_SYSLINK_02.00.00.67/syslink_02_00_00_67_alpha2/ti/syslink/bin/TI816X/samples/procmgrapp_release 
to
/path/to/android/nfs/filesystem/system/bin/syslink/


For AM387x:

$ export ANDROID_ROOT=/path/to/android/source
$ export SYSLINK_ROOT=/path/to/android/source/syslink/REL_SYSLINK_02.00.00.67/syslink_02_00_00_67_alpha2
$ export NFS_ROOT=/path/to/android/nfs/filesystem
$ export IPCDIR=/path/to/android/source/syslink/ipc_1_22_03_23/packages   


  • Building the SysLink module:
 $ cd $SYSLINK_ROOT/ti/syslink/utils/hlos/knl/Linux
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX SYSLINK_VARIANT=TI814X clean
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX SYSLINK_VARIANT=TI814X
  • Building the SysLink user library:
 $ cd $SYSLINK_ROOT/ti/syslink/utils/hlos/usr/Linux
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX SYSLINK_VARIANT=TI814X clean
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX SYSLINK_VARIANT=TI814X


 $ cd $SYSLINK_ROOT/ti/syslink/samples/hlos/common/usr/Linux
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX SYSLINK_VARIANT=TI814X clean
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX SYSLINK_VARIANT=TI814X
  • Building the ProcMgr binary:
 $ cd $SYSLINK_ROOT/ti/syslink/samples/hlos/procMgr/usr/Linux
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX SYSLINK_VARIANT=TI814X clean
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- SYSLINK_PLATFORM=TI81XX SYSLINK_VARIANT=TI814X
  • Copy Kernel modules:
/path/to/android/source/syslink/REL_SYSLINK_02.00.00.67/syslink_02_00_00_67_alpha2/ti/syslink/bin/TI816X/syslink.ko
/path/to/android/source/REL_SYSLINK_02.00.00.67/syslink_02_00_00_67_alpha2/ti/syslink/bin/TI816X/samples/procmgrapp_release 
to
/path/to/android/nfs/filesystem/system/bin/syslink/

Build VPSS module:[edit]

$ cd <kernel_dir>
$ make ARCH=arm CROSS_COMPILE=arm-eabi- KBUILD_EXTRA_SYMBOLS=$SYSLINK_ROOT/ti/syslink/utils/hlos/knl/Linux/Module.symvers modules


  • Installing VPSS/fb modules to Rootfs:
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- INSTALL_MOD_PATH=$NFS_ROOT/system/ KBUILD_EXTRA_SYMBOLS=$SYSLINK_ROOT/ti/syslink/utils/hlos/knl/Linux/Module.symvers modules_install


Note: Please refer Android release page for more details on building Syslink/VPSS modules.



Contents[edit]

The folders in the installed package contain binaries for several family of devices containing the SGX530/540 cores. Brief description of these folders is below.


}
Graphics SDK folder contents
Folder Name Description Used by
1 gfx_rel_es3.x_android Release binaries for platforms having SGX-530 core revision 1.2.1 (AM35xx/DM35xx) GSG:_AM35x_and_OMAP35x_Rebuilding_the_Software#How_to_check_for_SGX_core_revision
1 gfx_rel_es5.x_android Release binaries for platforms having SGX-530 core revision 1.2.5 (AM37xx/DM37xx) GSG:_AM35x_and_OMAP35x_Rebuilding_the_Software#How_to_check_for_SGX_core_revision
2 gfx_rel_es6.x_android Release binaries for platforms having SGX-530 core revision 1.2.5 (AM38xx) GSG:_AM35x_and_OMAP35x_Rebuilding_the_Software#How_to_check_for_SGX_core_revision
2 gfx_rel_es7.x_android Release binaries for platforms having SGX-540 core revision 1.2.0 (AM38xx) GSG:_AM35x_and_OMAP35x_Rebuilding_the_Software#How_to_check_for_SGX_core_revision
3 TI_Android_Graphics_SDK Source for Graphics Kernel Modules Contains kernel dependent code, changes depending on Linux kernel used
E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article ANDROID RN 4 04 00 01 here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article ANDROID RN 4 04 00 01 here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article ANDROID RN 4 04 00 01 here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article ANDROID RN 4 04 00 01 here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article ANDROID RN 4 04 00 01 here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article ANDROID RN 4 04 00 01 here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article ANDROID RN 4 04 00 01 here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article ANDROID RN 4 04 00 01 here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article ANDROID RN 4 04 00 01 here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity