ti-dsplink: Recipe rename, remove module.bbclass dependence, refactor variables
authorRoger Monk <r-monk@ti.com>
Mon, 8 Feb 2010 21:48:05 +0000 (21:48 +0000)
committerKoen Kooi <koen@openembedded.org>
Mon, 12 Apr 2010 17:43:17 +0000 (19:43 +0200)
    * Remove module.bbclass, since building user + kernel + dsp, etc
    * Add necessary module aware pieces (KERNEL_VERSION, pre/post inst)
    * Rename apps to examples to align with other recipes
    * Variable refactoring, moving DSPLINK specifics into this recipe
    * Move 'clean' steps into prepsources and clean all
    * Change XDC .interfaces to .make for consistency
    * Prepare stage for cleaning common include files

Signed-off-by: Roger Monk <r-monk@ti.com>
recipes/ti/ti-dsplink-module.inc [deleted file]
recipes/ti/ti-dsplink-module_1.64.bb [deleted file]
recipes/ti/ti-dsplink.inc [new file with mode: 0644]
recipes/ti/ti-dsplink_1.61.3.bb [moved from recipes/ti/ti-dsplink-module_1.61.3.bb with 54% similarity]
recipes/ti/ti-dsplink_1.64.bb [new file with mode: 0644]

diff --git a/recipes/ti/ti-dsplink-module.inc b/recipes/ti/ti-dsplink-module.inc
deleted file mode 100644 (file)
index e62174f..0000000
+++ /dev/null
@@ -1,169 +0,0 @@
-DESCRIPTION = "DSPLINK module for TI ARM/DSP processors"
-
-require ti-paths.inc
-
-#This is a kernel module, don't set PR directly
-MACHINE_KERNEL_PR_append = "a"
-
-inherit module
-
-# compile and run time dependencies
-DEPENDS        += "virtual/kernel perl-native ti-dspbios ti-cgt6x update-modules ti-xdctools"
-
-SRC_URI = "http://install.source.dir.local/dsplink_${PV}.tar.gz \
-                  file://loadmodules-ti-dsplink-apps.sh \
-                  file://unloadmodules-ti-dsplink-apps.sh"
-
-# Set the source directory
-S = "${WORKDIR}/dsplink_${PV}"
-       
-# DSPLINK - Config Variable for different platform
-DSPLINKPLATFORM_dm6446    = "DAVINCI"
-DSPLINKPLATFORM_dm6467    = "DAVINCIHD"
-DSPLINKPLATFORM_omapl137  = "OMAPL1XX"
-DSPLINKPLATFORM_omapl138  = "OMAPL138"
-DSPLINKPLATFORM          ?= "DAVINCI"
-
-
-DSPLINKDSPCFG_dm6446    = "DM6446GEMSHMEM"
-DSPLINKDSPCFG_dm6467    = "DM6467GEMSHMEM"
-DSPLINKDSPCFG_omapl137  = "OMAPL1XXGEMSHMEM"
-DSPLINKDSPCFG_omapl138  = "OMAPL138GEMSHMEM"
-DSPLINKDSPCFG          ?= "DM6446GEMSHMEM"
-
-DSPLINKGPPOS_dm355      = "LINUX_GCC"
-DSPLINKGPPOS_dm365      = "LINUX_GCC"
-DSPLINKGPPOS_dm6446     = "MVL5G"
-DSPLINKGPPOS_dm6467     = "DM6467LSP"
-DSPLINKGPPOS_omapl137   = "ARM"
-DSPLINKGPPOS_omapl138   = "ARM"
-DSPLINKGPPOS_omap3      = "OMAPLSP"
-DSPLINKGPPOS           ?= "ARM" 
-
-DSPLINK = "${S}/dsplink"
-export DSPLINK
-
-STAGING_TI_DSPBIOS_DIR="${BIOS_INSTALL_DIR}"
-STAGING_TI_CGT6x_DIR="${CODEGEN_INSTALL_DIR}"
-STAGING_TI_XDCTOOL_INSTALL_DIR="${XDC_INSTALL_DIR}"
-
-do_configure() {
-
-    # asm/page.h is gone with linux-libc-headers 2.6.31.
-    # We can safely sed it out since it has been empty for the past 2 years
-    sed -i /page.h/d ${S}/dsplink/gpp/src/api/Linux/drv_api.c || true 
-
-    # Run perl script to create appropriate makefiles (v1.60 and up)
-    (
-    cd ${DSPLINK}
-    perl config/bin/dsplinkcfg.pl --platform=${DSPLINKPLATFORM} --nodsp=1 \
-       --dspcfg_0=${DSPLINKDSPCFG} --dspos_0=DSPBIOS5XX \
-       --gppos=${DSPLINKGPPOS} --comps=ponslrmc
-
-    for i in ${DSPLINK}/gpp ${DSPLINK}/dsp ; do
-        cd $i
-        ${XDC_INSTALL_DIR}/xdc clean
-        ${XDC_INSTALL_DIR}/xdc .interfaces 
-    done
-    )
-
-}
-
-do_compile() {
-    # TODO :: KERNEL_CC, etc need replacing with user CC
-    # TODO :: Need to understand why OBJDUMP is required for kernel module
-    # Unset these since LDFLAGS gets picked up and used incorrectly.... need 
-    # investigation
-
-    unset CFLAGS CPPFLAGS CXXFLAGS  LDFLAGS
-
-    # Build the gpp user space library
-    cd ${DSPLINK}/gpp/src/api && make \
-      CROSS_COMPILE="${TARGET_PREFIX}" \
-      CC="${KERNEL_CC}" \
-      AR="${KERNEL_AR}" \
-      LD="${KERNEL_LD}" \
-      COMPILER="${KERNEL_CC}" \
-      ARCHIVER="${KERNEL_AR}" \
-      KERNEL_DIR="${STAGING_KERNEL_DIR}" \
-      all
-
-    # Build the gpp kernel space (debug and release)
-    cd ${DSPLINK}/gpp/src && make \
-      OBJDUMP="${TARGET_PREFIX}objdump" \
-      CROSS_COMPILE="${TARGET_PREFIX}" \
-      CC="${KERNEL_CC}" \
-      AR="${KERNEL_AR}" \
-      LD="${KERNEL_LD}" \
-      COMPILER="${KERNEL_CC}" \
-      ARCHIVER="${KERNEL_AR}" \
-      KERNEL_DIR="${STAGING_KERNEL_DIR}" \
-      BASE_BUILDOS="${STAGING_KERNEL_DIR}" \
-      all
-
-    # Build the gpp samples
-    cd ${DSPLINK}/gpp/src/samples
-    cd ${DSPLINK}/gpp/src/samples && make \
-      BASE_TOOLCHAIN="${TOOLCHAIN_PATH}" \
-      BASE_CGTOOLS="${BASE_TOOLCHAIN}/bin" \
-      OSINC_PLATFORM="${TOOLCHAIN_PATH}/lib/gcc/${TARGET_SYS}/$(${TARGET_PREFIX}gcc -dumpversion)/include" \
-      OSINC_TARGET="${BASE_TOOLCHAIN}/target/usr/include" \
-      CROSS_COMPILE="${TARGET_PREFIX}" \
-      CC="${KERNEL_CC}" \
-      AR="${KERNEL_AR}" \
-      LD="${KERNEL_LD}" \
-      COMPILER="${KERNEL_CC}" \
-      LINKER="${KERNEL_CC}" \
-      ARCHIVER="${KERNEL_AR}" \
-      KERNEL_DIR="${STAGING_KERNEL_DIR}" \
-      clean all
-
-    # Build the dsp library (debug and release)
-     cd ${DSPLINK}/dsp/src && make \
-      BASE_CGTOOLS="${STAGING_TI_CGT6x_DIR}" \
-      BASE_SABIOS="${STAGING_TI_DSPBIOS_DIR}" \
-      clean all
-
-    # Build the dsp samples (debug and release)
-    cd ${DSPLINK}/dsp/src/samples && make \
-      BASE_CGTOOLS="${STAGING_TI_CGT6x_DIR}" \
-      BASE_SABIOS="${STAGING_TI_DSPBIOS_DIR}" \
-      clean all
-}
-
-do_install () {
-    # DSPLINK driver - kernel module
-    install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
-    install -m 0755 ${DSPLINK}/gpp/export/BIN/Linux/${DSPLINKPLATFORM}/RELEASE/dsplinkk.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/ 
-
-    # DSPLINK library
-    install -d ${D}/${installdir}/dsplink/libs
-    install -m 0755 ${DSPLINK}/gpp/export/BIN/Linux/${DSPLINKPLATFORM}/RELEASE/dsplink.lib  ${D}/${installdir}/dsplink/libs
-
-    # DSPLINK sample apps
-    install -d ${D}/${installdir}/dsplink/apps
-    
-    cp ${DSPLINK}/gpp/export/BIN/Linux/${DSPLINKPLATFORM}/RELEASE/*gpp ${D}/${installdir}/dsplink/apps
-    
-    for i in $(find ${DSPLINK}/dsp/BUILD/ -name "*.out") ; do
-        cp ${i} ${D}/${installdir}/dsplink/apps
-    done
-
-    # DSPLINK test app module un/load scripts
-    install ${WORKDIR}/loadmodules-ti-dsplink-apps.sh ${D}/${installdir}/dsplink/apps
-    install ${WORKDIR}/unloadmodules-ti-dsplink-apps.sh ${D}/${installdir}/dsplink/apps
-    
-    # install the complete tree as well
-    install -d ${D}${LINK_INSTALL_DIR_RECIPE}
-    cp -pPrf ${S}/* ${D}${LINK_INSTALL_DIR_RECIPE}
-}
-
-require ti-staging.inc
-
-PACKAGES += " ti-dsplink-apps" 
-FILES_ti-dsplink-apps = "${installdir}/dsplink/*"
-
-# Disable QA check untils we figure out how to pass LDFLAGS in build
-INSANE_SKIP_${PN} = True
-INSANE_SKIP_ti-dsplink-apps = True
-
diff --git a/recipes/ti/ti-dsplink-module_1.64.bb b/recipes/ti/ti-dsplink-module_1.64.bb
deleted file mode 100644 (file)
index 0fa92d9..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-require ti-dsplink-module.inc
-
-SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/DSPLink/${PV}/exports/dsplink_linux_${PV}.tar.gz;name=dsplinktarball \
-                   file://loadmodules-ti-dsplink-apps.sh \
-                   file://unloadmodules-ti-dsplink-apps.sh"
-
-SRC_URI[dsplinktarball.md5sum] = "90223da7c88af57d12936adeba1a0661"
-SRC_URI[dsplinktarball.sha256sum] = "32b6fbae2b61f5f71ab3eae9d2f5ad6b75d682ad8bde9963152830be1f8d286b"
-
-# tconf from xdctools dislikes '.' in pwd :/
-PE = "1"
-PV = "1_64"
-PR_append = "a"
-
-S = "${WORKDIR}/dsplink_linux_${PV}"
-
-# Cheat a bit with includes
-# SZ_1k = 0x00000400
-# /OE/angstrom-dev/work/beagleboard-angstrom-linux-gnueabi/ti-dsplink-module-1_64-r50/dsplink_linux_1_64/dsplink/gpp/src/../../gpp/src/arch/OMAP3530/shmem/Linux/omap3530_phy_shmem.c:127: error: 'SZ_2K' undeclared (first use in this function)
-
-do_compile_prepend() {
-    sed -i s:SZ_2K:0x00000800:g ${S}/dsplink/gpp/src/arch/OMAP3530/shmem/Linux/omap3530_phy_shmem.c
-}
-
-
diff --git a/recipes/ti/ti-dsplink.inc b/recipes/ti/ti-dsplink.inc
new file mode 100644 (file)
index 0000000..6c9089a
--- /dev/null
@@ -0,0 +1,239 @@
+DESCRIPTION = "DSPLINK Inter-Processor Communications (IPC) for TI ARM/DSP processors"
+HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/DSPLink"
+
+# TODO :: KERNEL_CC, should use for kernel cc for module build?
+# TODO :: Need to understand why OBJDUMP is required for kernel module
+# TODO :: Unset required since LDFLAGS gets picked up and used incorrectly - investigate
+# TODO :: Do we need to pass so many variables to each make step?
+
+require ti-paths.inc
+require ti-staging.inc
+
+PROVIDES = "ti-dsplink-module"
+PROVIDES += "ti-dsplink-examples"
+
+# This package builds a kernel module, use kernel PR as base and append a local version
+PR = "${MACHINE_KERNEL_PR}"
+PR_append = "b"
+
+S = "${WORKDIR}/dsplink_linux_${PV}"
+
+SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/DSPLink/${PV}/exports/dsplink_linux_${PV}.tar.gz;name=dsplinktarball \
+           file://loadmodules-ti-dsplink-apps.sh \
+           file://unloadmodules-ti-dsplink-apps.sh"
+
+DEPENDS = "ti-dspbios ti-xdctools ti-cgt6x" 
+DEPENDS += "virtual/kernel perl-native" 
+
+# SOC_FAMILY configuration
+
+DSPLINKPLATFORM_dm6446    = "DAVINCI"
+DSPLINKPLATFORM_dm6467    = "DAVINCIHD"
+DSPLINKPLATFORM_omapl137  = "OMAPL1XX"
+DSPLINKPLATFORM_omapl138  = "OMAPL138"
+DSPLINKPLATFORM_omap3     = "OMAP3530"
+DSPLINKPLATFORM          ?= "<UNDEFINED_DSPLINKPLATFORM>"
+
+DSPLINKDSPCFG_dm6446      = "DM6446GEMSHMEM"
+DSPLINKDSPCFG_dm6467      = "DM6467GEMSHMEM"
+DSPLINKDSPCFG_omapl137    = "OMAPL1XXGEMSHMEM"
+DSPLINKDSPCFG_omapl138    = "OMAPL138GEMSHMEM"
+DSPLINKDSPCFG_omap3       = "OMAP3530SHMEM"
+DSPLINKDSPCFG            ?= "<UNDEFINED_DSPLINKDSPCFG>"
+
+DSPLINKGPPOS_dm6446       = "MVL5G"
+DSPLINKGPPOS_dm6467       = "DM6467LSP"
+DSPLINKGPPOS_omapl137     = "ARM"
+DSPLINKGPPOS_omapl138     = "ARM"
+DSPLINKGPPOS_omap3        = "OMAPLSP"
+DSPLINKGPPOS             ?= "<DEFINED_DSPLINKGPPOS>" 
+
+# Exported Variable needed by build
+DSPLINK = "${S}/dsplink"
+export DSPLINK
+
+do_configure() {
+
+    # asm/page.h is gone with linux-libc-headers 2.6.31.
+    # We can safely sed it out since it has been empty for the past 2 years
+    sed -i /page.h/d ${S}/dsplink/gpp/src/api/Linux/drv_api.c || true 
+
+    # Run perl script to create appropriate makefiles (v1.60 and up)
+    (
+    cd ${DSPLINK}
+    perl config/bin/dsplinkcfg.pl --platform=${DSPLINKPLATFORM} --nodsp=1 \
+       --dspcfg_0=${DSPLINKDSPCFG} --dspos_0=DSPBIOS5XX \
+       --gppos=${DSPLINKGPPOS} --comps=ponslrmc
+    )
+
+}
+
+do_prepsources () {
+       
+    # Prepare the tree for rebuiling - generate makefiles and clean
+    XDCPATH=${DSPLINK} ${XDC_INSTALL_DIR}/xdc .make -PR .
+    XDCPATH=${DSPLINK} ${XDC_INSTALL_DIR}/xdc clean -PR .
+
+    # Clean the gpp user space library
+    cd ${DSPLINK}/gpp/src/api && make \
+      CROSS_COMPILE="${TARGET_PREFIX}" \
+      CC="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      AR="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      LD="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ld" \
+      COMPILER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      ARCHIVER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      KERNEL_DIR="${STAGING_KERNEL_DIR}" \
+      clean
+
+    # Clean the gpp kernel space (debug and release)
+    cd ${DSPLINK}/gpp/src && make \
+      OBJDUMP="${TARGET_PREFIX}objdump" \
+      CROSS_COMPILE="${TARGET_PREFIX}" \
+      CC="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      AR="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      LD="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ld" \
+      COMPILER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      ARCHIVER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      KERNEL_DIR="${STAGING_KERNEL_DIR}" \
+      BASE_BUILDOS="${STAGING_KERNEL_DIR}" \
+      clean
+
+    # Clean the gpp samples
+    cd ${DSPLINK}/gpp/src/samples && make \
+      BASE_TOOLCHAIN="${TOOLCHAIN_PATH}" \
+      BASE_CGTOOLS="${BASE_TOOLCHAIN}/bin" \
+      OSINC_PLATFORM="${TOOLCHAIN_PATH}/lib/gcc/${TARGET_SYS}/$(${TARGET_PREFIX}gcc -dumpversion)/include" \
+      OSINC_TARGET="${BASE_TOOLCHAIN}/target/usr/include" \
+      CROSS_COMPILE="${TARGET_PREFIX}" \
+      CC="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      AR="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      LD="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ld" \
+      COMPILER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      LINKER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ld" \
+      ARCHIVER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      KERNEL_DIR="${STAGING_KERNEL_DIR}" \
+      clean
+
+    # Clean the dsp library (debug and release)
+     cd ${DSPLINK}/dsp/src && make \
+      BASE_CGTOOLS="${CODEGEN_INSTALL_DIR}" \
+      BASE_SABIOS="${BIOS_INSTALL_DIR}" \
+      clean
+
+    # Clean the dsp samples (debug and release)
+    cd ${DSPLINK}/dsp/src/samples && make \
+      BASE_CGTOOLS="${CODEGEN_INSTALL_DIR}" \
+      BASE_SABIOS="${BIOS_INSTALL_DIR}" \
+      clean
+       
+}
+
+addtask prepsources after do_configure before do_compile
+
+do_compile() {
+    # TODO :: KERNEL_CC, should use for kernel module build?
+    # TODO :: Need to understand why OBJDUMP is required for kernel module
+    # Unset these since LDFLAGS gets picked up and used incorrectly.... need 
+    # investigation
+
+    unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+
+    # Build the gpp user space library
+    cd ${DSPLINK}/gpp/src/api && make \
+      CROSS_COMPILE="${TARGET_PREFIX}" \
+      CC="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      AR="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      LD="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ld" \
+      COMPILER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      ARCHIVER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      KERNEL_DIR="${STAGING_KERNEL_DIR}" \
+      all
+
+    # Build the gpp kernel space (debug and release)
+    cd ${DSPLINK}/gpp/src && make \
+      OBJDUMP="${TARGET_PREFIX}objdump" \
+      CROSS_COMPILE="${TARGET_PREFIX}" \
+      CC="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      AR="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      LD="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ld" \
+      COMPILER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      ARCHIVER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      KERNEL_DIR="${STAGING_KERNEL_DIR}" \
+      BASE_BUILDOS="${STAGING_KERNEL_DIR}" \
+      all
+
+    # Build the gpp samples
+    cd ${DSPLINK}/gpp/src/samples && make \
+      BASE_TOOLCHAIN="${TOOLCHAIN_PATH}" \
+      BASE_CGTOOLS="${BASE_TOOLCHAIN}/bin" \
+      OSINC_PLATFORM="${TOOLCHAIN_PATH}/lib/gcc/${TARGET_SYS}/$(${TARGET_PREFIX}gcc -dumpversion)/include" \
+      OSINC_TARGET="${BASE_TOOLCHAIN}/target/usr/include" \
+      CROSS_COMPILE="${TARGET_PREFIX}" \
+      CC="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      LD="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      AR="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      COMPILER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      LINKER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}gcc" \
+      ARCHIVER="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}ar" \
+      KERNEL_DIR="${STAGING_KERNEL_DIR}" \
+      all
+
+    # Build the dsp library (debug and release)
+     cd ${DSPLINK}/dsp/src && make \
+      BASE_CGTOOLS="${CODEGEN_INSTALL_DIR}" \
+      BASE_SABIOS="${BIOS_INSTALL_DIR}" \
+      all
+
+    # Build the dsp samples (debug and release)
+    cd ${DSPLINK}/dsp/src/samples && make \
+      BASE_CGTOOLS="${CODEGEN_INSTALL_DIR}" \
+      BASE_SABIOS="${BIOS_INSTALL_DIR}" \
+      all
+}
+
+KERNEL_VERSION = "${@base_read_file('${STAGING_KERNEL_DIR}/kernel-abiversion')}"
+
+do_install () {
+       
+    # Install the kernel module
+    install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
+    install -m 0755 ${DSPLINK}/gpp/export/BIN/Linux/${DSPLINKPLATFORM}/RELEASE/dsplinkk.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/ 
+
+    # Install the example apps
+    install -d ${D}/${installdir}/ti-dsplink-examples/
+    cp ${DSPLINK}/gpp/export/BIN/Linux/${DSPLINKPLATFORM}/RELEASE/*gpp ${D}/${installdir}/ti-dsplink-examples
+    
+    for i in $(find ${DSPLINK}/dsp/BUILD/ -name "*.out") ; do
+        cp ${i} ${D}/${installdir}/ti-dsplink-examples
+    done
+
+    # Install the example apps module un/load scripts
+    install ${WORKDIR}/loadmodules-ti-dsplink-apps.sh ${D}/${installdir}/ti-dsplink-examples
+    install ${WORKDIR}/unloadmodules-ti-dsplink-apps.sh ${D}/${installdir}/ti-dsplink-examples
+    
+    # Install/Stage the Source Tree
+    install -d ${D}${LINK_INSTALL_DIR_RECIPE}
+    cp -pPrf ${S}/* ${D}${LINK_INSTALL_DIR_RECIPE}
+}
+
+PACKAGES += "ti-dsplink-module"
+FILES_ti-dsplink-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/dsplinkk.ko" 
+RDEPENDS_ti-dsplink-module += "update-modules"
+
+pkg_postinst_ti-dsplink-module_append () {
+        if [ -n "$D" ]; then
+                exit 1
+        fi
+        depmod -a
+        update-modules || true
+}
+
+pkg_postrm_ti-dsplink-module_append () {
+        update-modules || true
+}
+
+PACKAGES += "ti-dsplink-examples"
+RDEPENDS_ti-dsplink-examples += "ti-dsplink-module"
+RDEPENDS_ti-dsplink-examples_omap3 += "ti-lpm-module"
+FILES_ti-dsplink-examples = "${installdir}/ti-dsplink-examples/*"
+INSANE_SKIP_ti-dsplink-examples = True
similarity index 54%
rename from recipes/ti/ti-dsplink-module_1.61.3.bb
rename to recipes/ti/ti-dsplink_1.61.3.bb
index 8da7810..83db044 100644 (file)
@@ -1,9 +1,5 @@
-require ti-dsplink-module.inc
+require ti-dsplink.inc
 
-#This is a kernel module, don't set PR directly
-MACHINE_KERNEL_PR_append = "b"                                                  
-
-# tconf from xdctools dislikes '.' in pwd :/
 PV = "1_61_03"
 
 do_configure_append() {
diff --git a/recipes/ti/ti-dsplink_1.64.bb b/recipes/ti/ti-dsplink_1.64.bb
new file mode 100644 (file)
index 0000000..add1407
--- /dev/null
@@ -0,0 +1,17 @@
+require ti-dsplink.inc
+
+PE = "1"
+PV = "1_64"
+
+SRC_URI[dsplinktarball.md5sum] = "90223da7c88af57d12936adeba1a0661"
+SRC_URI[dsplinktarball.sha256sum] = "32b6fbae2b61f5f71ab3eae9d2f5ad6b75d682ad8bde9963152830be1f8d286b"
+
+# Cheat a bit with includes
+# SZ_1k = 0x00000400
+# ../gpp/src/arch/OMAP3530/shmem/Linux/omap3530_phy_shmem.c:127: error: 'SZ_2K' undeclared (first use in this function)
+
+do_compile_prepend() {
+    sed -i s:SZ_2K:0x00000800:g ${S}/dsplink/gpp/src/arch/OMAP3530/shmem/Linux/omap3530_phy_shmem.c
+}
+
+