1 DESCRIPTION = "Codec Engine for TI ARM/DSP processors"
2 HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/ce"
6 # TODO :: Add Codec Engine Library Rebuild
7 # TODO :: Add Examples APP_LOCAL build as well?
8 # TODO :: Check DEPENDS - are the DSP side packages required for ARM-only products?
11 require ti-staging.inc
13 PROVIDES += "ti-codec-engine-examples"
17 S = "${WORKDIR}/codec_engine_${PV}"
19 SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/ce/${PV}/exports/codec_engine_${PV},lite.tar.gz;name=cetarball"
21 DEPENDS = "ti-framework-components ti-xdais ti-xdctools ti-linuxutils"
22 DEPENDS_append_dm6446 = " ti-dspbios ti-dsplink ti-local-power-manager ti-cgt6x ti-biosutils ti-edma3lld"
23 DEPENDS_append_dm6467 = " ti-dspbios ti-dsplink ti-cgt6x ti-biosutils ti-edma3lld"
24 DEPENDS_append_omap3 = " ti-dspbios ti-dsplink ti-local-power-manager ti-cgt6x ti-biosutils ti-edma3lld"
25 DEPENDS_append_omapl137 = " ti-dspbios ti-dsplink ti-cgt6x ti-biosutils ti-edma3lld"
26 DEPENDS_append_omapl138 = " ti-dspbios ti-dsplink ti-cgt6x ti-biosutils ti-edma3lld"
28 # SOC_FAMILY configuration
30 # Define DEVICES variable
31 CEEXAMPLESDEVICES_dm6446 = "DM6446"
32 CEEXAMPLESDEVICES_dm6467 = "DM6467"
33 CEEXAMPLESDEVICES_omap3 = "OMAP3530"
34 CEEXAMPLESDEVICES_dm355 = "DM355"
35 CEEXAMPLESDEVICES_dm365 = "DM365"
36 CEEXAMPLESDEVICES_omapl137 = "OMAPL137"
37 CEEXAMPLESDEVICES_omapl138 = "OMAPL138"
38 CEEXAMPLESDEVICES ?= "<UNDEFINED_CEEXAMPLESDEVICES>"
40 # Define GPPOS variable
41 CEEXAMPLESGPPOS_dm6446 = "LINUX_GCC"
42 CEEXAMPLESGPPOS_dm6467 = "LINUX_GCC"
43 CEEXAMPLESGPPOS_omap3 = "LINUX_GCC"
44 CEEXAMPLESGPPOS_dm355 = "LINUX_GCC"
45 CEEXAMPLESGPPOS_dm365 = "LINUX_GCC"
46 CEEXAMPLESGPPOS_omapl137 = "LINUX_GCC"
47 CEEXAMPLESGPPOS_omapl138 = "LINUX_GCC"
48 CEEXAMPLESGPPOS ?= "<UNDEFINED_CEEXAMPLESGPPOS>"
50 # Define PROGRAM variable
51 CEEXAMPLESPROGRAMS_dm6446 = "APP_CLIENT DSP_SERVER"
52 CEEXAMPLESPROGRAMS_dm6467 = "APP_CLIENT DSP_SERVER"
53 CEEXAMPLESPROGRAMS_omap3 = "APP_CLIENT DSP_SERVER"
54 CEEXAMPLESPROGRAMS_dm355 = "APP_LOCAL"
55 CEEXAMPLESPROGRAMS_dm365 = "APP_LOCAL"
56 CEEXAMPLESPROGRAMS_omapl137 = "APP_CLIENT DSP_SERVER"
57 CEEXAMPLESPROGRAMS_omapl138 = "APP_CLIENT DSP_SERVER"
58 CEEXAMPLESPROGRAMS ?= "<UNDEFINED_CEEXAMPLESPROGRAMS>"
62 # No way to pass this via ENV?
64 -e s:arm-none-linux-gnueabi-:${TARGET_PREFIX}:g \
65 ${S}/examples/xdcpaths.mak
70 for i in codecs extensions servers apps ; do
71 cd ${S}/examples/ti/sdo/ce/examples/$i
72 make DEVICES="${CEEXAMPLESDEVICES}" \
73 GPPOS="${CEEXAMPLESGPPOS}" \
74 PROGRAMS="${CEEXAMPLESPROGRAMS}" \
75 CE_INSTALL_DIR="${S}" \
76 XDC_INSTALL_DIR="${XDC_INSTALL_DIR}" \
77 BIOS_INSTALL_DIR="${BIOS_INSTALL_DIR}" \
78 BIOSUTILS_INSTALL_DIR="${BIOSUTILS_INSTALL_DIR}" \
79 DSPLINK_INSTALL_DIR="${LINK_INSTALL_DIR}" \
80 XDAIS_INSTALL_DIR="${XDAIS_INSTALL_DIR}" \
81 FC_INSTALL_DIR="${FC_INSTALL_DIR}" \
82 CMEM_INSTALL_DIR="${CMEM_INSTALL_DIR}" \
83 LPM_INSTALL_DIR="${LPM_INSTALL_DIR}" \
84 EDMA3_LLD_INSTALL_DIR="${EDMA3_LLD_INSTALL_DIR}" \
85 CGTOOLS_V5T="${TOOLCHAIN_PATH}" \
86 CGTOOLS_C64P="${CODEGEN_INSTALL_DIR}" \
87 CGTOOLS_C674="${CODEGEN_INSTALL_DIR}" \
92 addtask prepsources after do_configure before do_compile
96 for i in codecs extensions servers apps ; do
97 cd ${S}/examples/ti/sdo/ce/examples/$i
98 make DEVICES="${CEEXAMPLESDEVICES}" \
99 GPPOS="${CEEXAMPLESGPPOS}" \
100 PROGRAMS="${CEEXAMPLESPROGRAMS}" \
101 CE_INSTALL_DIR="${S}" \
102 XDC_INSTALL_DIR="${XDC_INSTALL_DIR}" \
103 BIOS_INSTALL_DIR="${BIOS_INSTALL_DIR}" \
104 BIOSUTILS_INSTALL_DIR="${BIOSUTILS_INSTALL_DIR}" \
105 DSPLINK_INSTALL_DIR="${LINK_INSTALL_DIR}" \
106 XDAIS_INSTALL_DIR="${XDAIS_INSTALL_DIR}" \
107 FC_INSTALL_DIR="${FC_INSTALL_DIR}" \
108 CMEM_INSTALL_DIR="${CMEM_INSTALL_DIR}" \
109 LPM_INSTALL_DIR="${LPM_INSTALL_DIR}" \
110 EDMA3_LLD_INSTALL_DIR="${EDMA3_LLD_INSTALL_DIR}" \
111 CGTOOLS_V5T="${TOOLCHAIN_PATH}" \
112 CGTOOLS_C64P="${CODEGEN_INSTALL_DIR}" \
113 CGTOOLS_C674="${CODEGEN_INSTALL_DIR}" \
120 install -d ${D}/${installdir}/ti-codec-engine-examples
121 if [ -e ${S}/examples/apps/system_files/${CEEXAMPLESDEVICES}/loadmodules.sh ]; then
122 cp ${S}/examples/apps/system_files/${CEEXAMPLESDEVICES}/loadmodules.sh ${D}/${installdir}/ti-codec-engine-examples
123 elif [ -e ${WORKDIR}/loadmodules.sh ]; then
124 cp ${WORKDIR}/loadmodules.sh ${D}/${installdir}/ti-codec-engine-examples
127 cd ${S}/examples/ti/sdo/ce/examples
129 # Install the apps, servers and test data, mirroring the source directory structure
130 # - Put the servers inside the same folder as the executable
131 # - TODO - Check nested dirs (e.g. dualcpu_separateconfig)
133 # Put all servers in separate tree.
134 for i in $(find . -name "*.${DSPSUFFIX}"); do
135 install -d ${D}/${installdir}/ti-codec-engine-examples/servers/`dirname ${i} | cut -f3 -d /`
136 install ${i} ${D}/${installdir}/ti-codec-engine-examples/servers/`dirname ${i} | cut -f3 -d /`
139 for i in $(find . -name "*.xv5T"); do
140 install -d ${D}/${installdir}/ti-codec-engine-examples/`dirname ${i} | cut -f3 -d /`
141 install ${i} ${D}/${installdir}/ti-codec-engine-examples/`dirname ${i} | cut -f3 -d /`
144 for i in $(find . -name "*.dat"); do
145 install -d ${D}/${installdir}/ti-codec-engine-examples/`dirname ${i} | cut -f3 -d /`
146 install ${i} ${D}/${installdir}/ti-codec-engine-examples/`dirname ${i} | cut -f3 -d /`
149 # For each directory, softlink to the app server, except special cases
150 cd ${D}/${installdir}/ti-codec-engine-examples
151 for i in $(find . -type d | grep -v servers); do
154 cd ${D}/${installdir}/ti-codec-engine-examples/$i
155 if [ $(basename $i) == "audio1_ires" ] ; then
156 ln -s ../servers/audio1_ires/audio1_ires.${DSPSUFFIX}
157 elif [ $(basename $i) == "server_api_example" ] ; then
158 ln -s ../servers/server_api_example/audio_copy.${DSPSUFFIX}
159 elif [ $(basename $i) != "." ] ; then
160 ln -s ../servers/all_codecs/all.${DSPSUFFIX}
167 # Install/Stage the Source Tree
168 install -d ${D}${CE_INSTALL_DIR_RECIPE}
169 cp -pPrf ${S}/* ${D}${CE_INSTALL_DIR_RECIPE}
172 PACKAGES += "ti-codec-engine-examples"
174 RDEPENDS_ti-codec-engine-examples = " ti-cmem-module"
175 RDEPENDS_ti-codec-engine-examples_append_dm6446 = " ti-dsplink-module ti-lpm-module"
176 RDEPENDS_ti-codec-engine-examples_append_dm6467 = " ti-dsplink-module"
177 RDEPENDS_ti-codec-engine-examples_append_omap3 = " ti-dsplink-module ti-lpm-module"
178 RDEPENDS_ti-codec-engine-examples_append_omapl137 = " ti-dsplink-module"
179 RDEPENDS_ti-codec-engine-examples_append_omapl138 = " ti-dsplink-module"
180 FILES_ti-codec-engine-examples = "${installdir}/ti-codec-engine-examples/*"
181 INSANE_SKIP_ti-codec-engine-examples = True