summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/dsplink/codec-engine_2.21.bb26
1 files changed, 23 insertions, 3 deletions
diff --git a/packages/dsplink/codec-engine_2.21.bb b/packages/dsplink/codec-engine_2.21.bb
index b6bf673595..21a90b3a85 100644
--- a/packages/dsplink/codec-engine_2.21.bb
+++ b/packages/dsplink/codec-engine_2.21.bb
@@ -20,12 +20,16 @@ S = "${WORKDIR}/codec_engine_2_21_00_06"
require ti-paths.inc
+DSPPOWERSOC ?= "dm6446"
+DSPPOWERSOC_beagleboard = "omap3530"
+
PARALLEL_MAKE = ""
do_compile() {
echo "MVTOOL_PREFIX=${TARGET_PREFIX}" > ${S}/Rules.make
echo "UCTOOL_PREFIX=${TARGET_PREFIX}" >> ${S}/Rules.make
echo "LINUXKERNEL_INSTALL_DIR=${STAGING_KERNEL_DIR}" >> ${S}/Rules.make
+ # Build the cmem kernel module
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
cd ${S}/cetools/packages/ti/sdo/linuxutils/cmem
@@ -48,13 +52,24 @@ do_compile() {
CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
AR="${KERNEL_AR}"
+ # Build the DSP power manager kernel module
cd ${S}/cetools/packages/ti/bios/power
- if ! [ -e omap3530 ] ; then tar xf ti_bios_power,omap3530_bld.tar ; fi
- cd omap3530/lpm
+
+ # Unpack all kernel sources for teh DSP power manager module
+ for dsp in $(ls | grep bld | awk -F, '{print $2}' | awk -F_ '{print $1}') ; do
+ if ! [ -e $dsp ] ; then tar xf ti_bios_power,${dsp}_bld.tar ; fi
+ done
+
+ cd ${DSPPOWERSOC}/lpm
+
+ export KERNEL_DIR=${STAGING_KERNEL_DIR}
+ export TOOL_PREFIX=${TARGET_PREFIX}
sed -i -e s:/db/toolsrc/library/tools/vendors/mvl/arm/omap3/OMAP35x_SDK_0.9.7/src/linux/kernel_org/2.6_kernel:${STAGING_KERNEL_DIR}:g \
-e s:/db/toolsrc/library/tools/vendors/cs/arm/arm-2007q3/bin/arm-none-linux-gnueabi-:${TARGET_PREFIX}:g \
-e s:/db/atree/library/trees/power/power-d02x/imports:${STAGING_DIR}/${MULTIMACH_TARGET_SYS}:g \
+ -e s:/db/toolsrc/library/tools/vendors/mvl/arm/dm6446/REL_LSP_02_00_00_010/montavista/pro/devkit/lsp/ti-davinci/linux-2.6.18_pro500:${STAGING_KERNEL_DIR}:g \
+ -e s:/db/toolsrc/library/tools/vendors/mvl/arm/mvl5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-:${TARGET_PREFIX}:g \
Makefile
oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \
@@ -70,16 +85,21 @@ do_compile() {
export CGTOOLS_V5T="${CROSS_DIR}"
export CC_V5T="bin/${TARGET_PREFIX}gcc"
+ # Fix paths to arm crosstools, c6x codegen and x86 gcc
+ # Also disable uclibc and x86 builds
sed -i -e s:/db/toolsrc/library/tools/vendors/cs/arm/arm-2007q3:${CROSS_DIR}:g \
-e s:/db/toolsrc/library/tools/vendors/ti/c6x/6.0.16/Linux:${TITOOLSDIR}/${TICGTOOLSDIR}:g \
-e s:/db/toolsrc/library/tools/vendors/opensource/gcc/4.1.0/Linux/gcc-4.1.0-glibc-2.3.6/i686-unknown-linux-gnu:/usr:g \
-e s:arm-none-linux-gnueabi-:${TARGET_PREFIX}:g \
- -e 's:true, // build for uC Linux:false,:g' \
+ -e 's:true, // build for uC Linux:false,:g' \
+ -e 's:true, // build for PC Linux:false,:g' \
${S}/examples/user.bld
+ # Fix path to c6x codegen
sed -i -e s:/db/toolsrc/library/tools/vendors/ti/c6x/6.0.16/Linux:${TITOOLSDIR}/${TICGTOOLSDIR}:g \
xdcpaths.mak
+ # Start building the CE examples: codecs, extensions, servers (codec bundles) and ARM side apps
unset CC
for i in codecs extensions servers apps ; do
make -e -C ${S}/examples/ti/sdo/ce/examples/$i clean