Hello all, I have been working on getting the ti-dsplink_1.64.bb recipe's kernel module compiled against the latest DSP/BIOS v6.21.01.16 and just wanted to share some of the changes/problems that I found during the process.
1. ti.sdo.io (IPC) is no longer provided by DSP/BIOS > 6.x. IPC is now bundled with CCS4. For our purposes I made a tarball of the /ipc_1_00_00_40 directory provided with CCS4 and made a ti-ipc_1.00.00.40.bb recipe that ti-dsplink recipe depends on. http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/sysbios/6_21_01_16/exports/docs/Bios_6_21_01_16_release_notes.html 2. Modified ti-dsplink_1.64.bb to export XDCPATH as per DSP/BIOS 6.x release notes at: http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/sysbios/6_21_01_16/exports/docs/docs/Bios_Getting_Started_Guide.pdf 3. ti-dsplink_1.64.bb recipe has a hard-coded DSP/BIOS version in it that gets passed into a perl configuration script (config/bin/dsplinkcfg.pl). I changed the version 5XX to 6XX so that the generated Makefiles would compile against the new BIOS, which is fine for us but probably isn't adequate for angstrom. 4. Compiling the dsp library and dsp samples, I needed to pass in extra environment variables XDCTOOLS_DIR and BASE_IPC because these were not being detected automatically. Here is a patch showing what I did, but it needs more work before inclusion into angstrom: Index: recipes/ti/ti-dspbios_6.21.01.16.bb =================================================================== --- recipes/ti/ti-dspbios_6.21.01.16.bb (revision 0) +++ recipes/ti/ti-dspbios_6.21.01.16.bb (revision 52656) @@ -0,0 +1,13 @@ +require ti-dspbios.inc + +DESCRIPTION = "TI DSP/BIOS v6 Kernel" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/bios/sysbios" +SECTION = "devel" +LICENSE = "TI" + +PV = "6_21_01_16" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/bios/sysbios/${PV}/exports/bios_setuplinux_${PV}.bin;name=biosbin" +SRC_URI[biosbin.md5sum] = "411cd0fac224126ed2a81e67fc79c81a" +SRC_URI[biosbin.sha256sum] = "63d2704ff294fe0834411d010d19c0a0bfd0249520f5ee5ddc2c115df2be8ddd" + Index: recipes/ti/ti-dsplink.inc =================================================================== --- recipes/ti/ti-dsplink.inc (revision 52654) +++ recipes/ti/ti-dsplink.inc (revision 52655) @@ -25,7 +25,7 @@ file://ti-dsplink-examples-loadmodules.sh \ file://ti-dsplink-examples-unloadmodules.sh " -DEPENDS = "ti-dspbios ti-xdctools ti-cgt6x" +DEPENDS = "ti-dspbios ti-xdctools ti-cgt6x ti-ipc" DEPENDS += "virtual/kernel perl-native" # SOC_FAMILY configuration @@ -54,6 +54,8 @@ # Exported Variable needed by build DSPLINK = "${S}/dsplink" export DSPLINK +XDCPATH="${BIOS_INSTALL_DIR}/packages;${IPC_INSTALL_DIR}/packages" +export XDCPATH do_configure() { @@ -68,7 +70,7 @@ ( cd ${DSPLINK} perl config/bin/dsplinkcfg.pl --platform=${DSPLINKPLATFORM} --nodsp=1 \ - --dspcfg_0=${DSPLINKDSPCFG} --dspos_0=DSPBIOS5XX \ + --dspcfg_0=${DSPLINKDSPCFG} --dspos_0=DSPBIOS6XX \ --gppos=${DSPLINKGPPOS} --comps=ponslrmc ) } @@ -124,12 +126,16 @@ cd ${DSPLINK}/dsp/src && make \ BASE_CGTOOLS="${CODEGEN_INSTALL_DIR}" \ BASE_SABIOS="${BIOS_INSTALL_DIR}" \ + XDCTOOLS_DIR="${XDC_INSTALL_DIR}" \ + BASE_IPC="${IPC_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}" \ + XDCTOOLS_DIR="${XDC_INSTALL_DIR}" \ + BASE_IPC="${IPC_INSTALL_DIR}" \ clean } @@ -188,12 +194,16 @@ cd ${DSPLINK}/dsp/src && make \ BASE_CGTOOLS="${CODEGEN_INSTALL_DIR}" \ BASE_SABIOS="${BIOS_INSTALL_DIR}" \ + XDCTOOLS_DIR="${XDC_INSTALL_DIR}" \ + BASE_IPC="${IPC_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}" \ + XDCTOOLS_DIR="${XDC_INSTALL_DIR}" \ + BASE_IPC="${IPC_INSTALL_DIR}" \ all } Index: recipes/ti/ti-ipc.inc =================================================================== --- recipes/ti/ti-ipc.inc (revision 0) +++ recipes/ti/ti-ipc.inc (revision 52655) @@ -0,0 +1,18 @@ +DESCRIPTION = "TI SYS/BIOS Inter-process communication" +HOMEPAGE = "http://focus.ti.com/docs/toolsw/folders/print/ccstudio.html" +SECTION = "devel" + +require ti-paths.inc +require ti-staging.inc + +PR = "r1" + +S = "${WORKDIR}/ipc_${PV}" + +SRC_URI = "http://only-available-as-part-of-ccs/ipc_${PV}.tar.gz;name=ipctarball" + +do_install() { + install -d ${D}${IPC_INSTALL_DIR_RECIPE} + cp -pPrf ${S}/* ${D}${IPC_INSTALL_DIR_RECIPE} +} + Index: recipes/ti/ti-multimedia-common.inc =================================================================== --- recipes/ti/ti-multimedia-common.inc (revision 52654) +++ recipes/ti/ti-multimedia-common.inc (revision 52655) @@ -17,6 +17,7 @@ export DMAI_INSTALL_DIR_RECIPE = "${installdir}/ti-dmai-tree" export CODEC_INSTALL_DIR_RECIPE = "${installdir}/ti-codecs-tree" export DSPLIB_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-tree" +export IPC_INSTALL_DIR_RECIPE = "${installdir}/ti-ipc-tree" # This is where the tools will end up in staging provided PACKAGE_ARCH = ${MACHINE_ARCH} is set export CODEGEN_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CODEGEN_INSTALL_DIR_RECIPE}" @@ -35,6 +36,7 @@ export DMAI_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${DMAI_INSTALL_DIR_RECIPE}" export CODEC_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CODEC_INSTALL_DIR_RECIPE}" export DSPLIB_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${DSPLIB_INSTALL_DIR_RECIPE}" +export IPC_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${IPC_INSTALL_DIR_RECIPE}" DSPSUFFIX_omapl137 = "x674" DSPSUFFIX_omapl138 = "x674" Index: recipes/ti/ti-ipc_1.00.00.40.bb =================================================================== --- recipes/ti/ti-ipc_1.00.00.40.bb (revision 0) +++ recipes/ti/ti-ipc_1.00.00.40.bb (revision 52655) @@ -0,0 +1,7 @@ +require ti-ipc.inc + +PV = "1_00_00_40" + +SRC_URI[ipctarball.md5sum] = "ef6a405633c030a97c0709e017b394c7" +SRC_URI[ipctarball.sha256sum] = "95ce61f89e223b4d148644140ac55de1372ba39edd70c260d089689ab57770e9" + Cheers, Michael Stanger _______________________________________________ Angstrom-distro-devel mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel
