Using OMAPL138 Combos on OMAPL137

From Texas Instruments Wiki
Jump to: navigation, search

Overview

OMAPL137 and OMAPL138 share the same DSP memory thus we are able to rebuild the OMAPL138 DSP Codec Combo for OMAPL137. The OMAPL138 DSP Codec Combo is available for download from here. In addition, you will need the OMAPL137 SDK and associated TI Tools (TI Code Generation Tools for C6000, TI DSP BIOS, XDCTools.

Rebuilding for OMAPL137

  • Install the OMAPL137 SDK components, with the SDK itself installed to $(HOME)/OMAPL137_arm_1_00_00_11. Then install the OMAPL138 DSP Combos, say in $(HOME)/OMAPL137_arm_1_00_00_11/cs1omapl138_1_00_00.
  • Create a file called Rules.make in the SDK directory, $(HOME)/OMAPL137_arm_1_00_00_11/Rules.make. Copy the following contents into it:
SDK_INSTALL_DIR = $(HOME)/OMAPL137_arm_1_00_00_11
XDC_INSTALL_DIR = $(HOME)/xdctools_3_10_05_61
BIOS_INSTALL_DIR = $(HOME)/bios_5_33_05
LINUXKERNEL_INSTALL_DIR =$(HOME)/workdir/lsp/ti-davinci/linux-2.6.18_pro500/
CE_INSTALL_DIR = $(SDK_INSTALL_DIR)/codec_engine_2_23_01
FC_INSTALL_DIR = $(SDK_INSTALL_DIR)/framework_components_2_23_01
LINK_INSTALL_DIR = $(SDK_INSTALL_DIR)/dsplink-1_61_03-prebuilt
XDAIS_INSTALL_DIR = $(SDK_INSTALL_DIR)/xdais_6_23
CMEM_INSTALL_DIR = $(SDK_INSTALL_DIR)/linuxutils_2_23_01
BIOSUTILS_INSTALL_DIR = $(SDK_INSTALL_DIR)/biosutils_1_02_01
CODEC_INSTALL_DIR = $(SDK_INSTALL_DIR)/cs1omapl138_1_00_00
EDMA3_LLD_ROOT = $(SDK_INSTALL_DIR)/edma3_lld_1_07_00_01
MVTOOL_DIR=$(HOME)/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le
MVTOOL_PREFIX=$(MVTOOL_DIR)/bin/arm_v5t_le-
CODEGEN_INSTALL_DIR=$(HOME)/cg6x_6_1_9
  • Modify the config.bld and server's package.bld and server.tcf by replacing L138 with L137 by executing:
$ cd $(HOME)/OMAPL137_arm_1_00_00_11/cs1omapl138_1_00_00
$ sed -i 's/L138/L137/g' config.bld
$ sed -i 's/L138/L137/g' packages/ti/sdo/server/cs/package.bld
$ sed -i 's/L138/L137/g' packages/ti/sdo/server/cs/server.tcf
  • Rebuild the server by executing:
$ cd $(HOME)/OMAPL137_arm_1_00_00_11/cs1omapl138_1_00_00
$ make clean
$ make all

Application

You can test this server using DMAI 1.27.

If you use the default memory map, you can use mem=32MB in the OMAPL137 bootargs with the CMEM pools below.

  • Copy to the target dsplinkk.ko from OMAPL137_arm_1_00_00_11/codec_engine_2_23_01/examples/apps/system_files/OMAPL137
  • Rebuild CMEM
  • Copy to the target cmemk.ko from OMAPL137_arm_1_00_00_11/linuxutils_2_23_01/packages/ti/sdo/linuxutils/cmem/src/module
  • Copy to the target loadmodules.sh from OMAPL137_arm_1_00_00_11/codec_engine_2_23_01/examples/apps/system_files/OMAPL137.
  • Update loadmodules.sh with the information below.
  • See the DMAI documentation on how to build DMAI and run the examples.

Example loadmodules.sh for the default cs1omapl138 memory map

# CMEM pools
insmod cmemk.ko phys_start=0xC2200000 phys_end=0xC3200000 pools=1x3600000,1x1429440,5x1048576,5x829440,1x256000,8x131072,20x4096 allowOverlap=1
 
# insert DSP/BIOS Link driver
insmod dsplinkk.ko
 
# make /dev/dsplink
rm -f /dev/dsplink
mknod /dev/dsplink c `awk "\\$2==\"dsplink\" {print \\$1}" /proc/devices` 0