NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
Desktop-linux-sdk 01.00.00 DSP Rebuild Guide
Desktop Linux SDK (Version 1.0.0.6 and After)
Guide to Rebuild DSP Images
Last updated: 07/28/2014
Contents
Introduction[edit]
(Note: This page has the instructions for the Desktop Linux Sdk 01.00.00 releases (version 01.00.00.06 and version 01.00.00.07) and its maintenance releases (version 01.00.01.00 and version 01.00.02.00). If you are using a release older than 01.00.00.06. Please check specific instructions in the archived section below
:Archived Pages )
The Desktop Linux SDK includes the DSP images to run the demo applications and the demos can work out of the box with the prebuilt images. The package also include the required sources to rebuild the DSP image. If required, the source code can be modified and dsp images can be rebuilt using the procedures on this page.
Required Compile Tools[edit]
To rebuild the DSP images, the following packages are needed.
- CCS 5.1 or higher
- TI MCSDK for TMS320C66x Processors V.2.0.3.15 or higher Refer to website: http://focus.ti.com/docs/toolsw/folders/print/bioslinuxmcsdk.html
- Latest tested with MCSDK V.2.1.2
The Desktop Linux SDK dsp builds use the platform part of MCSDK 2.0 [MCSDK Getting Started Guide, MCSDK User's Guide] to achieve platform abstraction.
Platform library patch and build instruction[edit]
There are two ways to build the dsp images, which are part of the Desktop Linux SDK.
A) Patch and build using command line.
B) Patch and build using CCS projects
A. Patch and build using command line[edit]
1. Update script to point to Code generation and PDK locations <syntaxhighlight lang="bash">
cd <install_dir>/desktop-linux-sdk_<version>
</syntaxhighlight>
Edit the file setup_dsp_build_env.sh to update the location of <syntaxhighlight lang="bash">
export C6X_GEN_INSTALL_PATH=/home/username/ti/ccsv5/tools/compiler/c6000_7.3.4/
export PDK_INSTALL_PATH=/home/username/pdk_C6678_1_0_0_21
export DESKTOP_LINUX_SDK_DIR=$(pwd)
</syntaxhighlight>
2. Execute script to setup build environment <syntaxhighlight lang="bash">
source ./setup_dsp_build_env.sh
</syntaxhighlight>
3. Patch and build the PDK libraries. <syntaxhighlight lang="bash">
cd platform_patch/scripts
./patch_and_build.sh
</syntaxhighlight>
This will patch the pdk and compile the platform libraries.
4. Build the images <syntaxhighlight lang="bash">
cd <install_dir>/desktop-linux-sdk-<version>
make sdk_dsp_clean
make sdk_dsp
</syntaxhighlight>
update reset DSP image[edit]
The APIs to reset the DSP uses the pre-converted image in the header file: sdk/dnldmgr/inc/pcieLocaReset.h To compile the reset image follow the steps below. 1. If not already done setup the enviroment using the following script <syntaxhighlight lang="bash">
cd <install_dir>/desktop-linux-sdk_<version>
source ./setup_dsp_build_env.sh
</syntaxhighlight>
2. Compile the reset image. <syntaxhighlight lang="bash">
cd sdk/dsp_projects/dsp_reset/build
make clean
make
</syntaxhighlight>
3. Convert header file This header file can be created from the sdk/dsp_projects/dsp_reset/build/bin/pciebootlocalreset.out, using the following procedure.
<syntaxhighlight lang="bash">
cd utils/elf2HUtils
./pcieboot_localreset_elf2HBin.sh
</syntaxhighlight>
This will create or overwrite the header file at: sdk/dnldmgr/inc/pcieLocaReset.h
B. Patch and Build using CCS[edit]
Patch MCSDK and build Library[edit]
If you are using the Advantech Quad C6678 or Octal C6678 platform, the platform library in the MCSDK has to be patched to create library corresponding to the Advantech Card.
Steps to patch and build the platform library for are as follows (The instructions are for pdk_c6678_1_0_0_21. Similar procedure to be followed for other pdk releases, with the change in directory names)
1. Patch the platform files for DSPC8681 and DSCPC8682 in the PDK:
Copy the directory “desktop-linux-sdk\sdk\platform_patch\dspc8681” and paste to “<pdk_install_directory>/pdk_C6678_1_0_0_21/packages/ti/platform/”
Copy the directory “desktop-linux-sdk\sdk\platform_patch\dspc8682” and paste to “<pdk_install_directory>/pdk_C6678_1_0_0_21/packages/ti/platform/”
Copy the csl patch from “desktop-linux-sdk\sdk\platform_patch\csl_patch\packages” and paste to “<pdk_install_directory>/pdk_C6678_1_0_0_21/packages”
2. Import the CCS project from "<pdk_install_directory>pdk_C6678_1_0_0_21\packages\ti\platform\dspc8681\platform_lib" directory or
"<pdk_install_directory>pdk_C6678_1_0_0_21\packages\ti\platform\dspc8681\platform_lib" according to what library is needed.
(In CCSv5, Project->Import Existing CCS/CCE Eclipse Projects)
3. Select "Lite" as active configuration (in CCSv5, Project->Properties)
Choose "Lite" Click Set Active button. Click OK Set Configuration to Lite
4. Clean the platform_lib_evmc6678l project and re-build the project. After build is completed the ti.platform.<dspc8681|dspc8682>.lite.lib will be generated under the directory: "pdk_C6678_1_0_0_21\packages\ti\platform\<dspc8681|dspc8682>\platform_lib\lib\debug"
5. Repeat step 3 and step 4, select "Debug" as active configuration and re-build the project: ti.platform.<dspc8681|dspc8682>.ae66 will be generated under the same directory
[NOTE: assuming that the compilation is done on the desktop with Linux . If not, then follow the procedures below to compile the builds by importing the ccs projects]
Use the following steps to build the dsp images, including the dsp images used by the demo, init.out used for initializing the DSP and the pcieboot_localreset.out used as boot image after reset.
Demo DSP test image build instruction using CCS project[edit]
The DSP image used by the “filetestdemo” can be built by using the DSP projects under the directory: desktop-linux-sdk/filetestdemo/c66x/demo_loopback.
1. Go to directory: “\desktop-linux-sdk\demos\filetestdemo\c66x\demo_loopback/build” and open macros.ini.
2. Edit macros.ini to update the PDK_C6678_INSTALL directory to where the PDK package under MCSDK is installed in the system. And DESKTOP_LINUX_SDK_DIR to where the desktop Linux SDK is installed.
(For example :
- Windows:
TI_PDK_C6678_INSTALL_DIR=”c:\Program Files\Texas Instruments\pdk_C6678_1_0_0_21” DESKTOP_LINUX_SDK_DIR=”c:\desktop-linux-sdk”
- Linux:
TI_PDK_C6678_INSTALL_DIR =/home/username/ti/pdk_C6678_1_0_0_21 DESKTOP_LINUX_SDK_DIR=/home/username/ti/desktop-linux-sdk_01_00_00_07
)
3. Import the demo_loopback CCS project from “desktop-linux-sdk\demos\filetestdemo\c66x\demo_loopback\build” directory. ( In CCSv5, Project -> Import Existing CCS/CCE Eclipse Projects)
and click finish
4. Clean the demo_loopback project ( Using Project -> Clean ) and build the project ( Project -> Build Project). After build is completed the build files: demo_loopback.out and demo_loopback.map will be generated under the following directory: desktop-linux-sdk\demos\filetestdemo\c66x\demo_loopback\build\bin
DSP init image build instruction using CCS project[edit]
The init DSP image is used as a boot image to initialize the DDR and Ethernet switch. The DSP build can be built from the project directory: “desktop-linux-sdk_<versionno>\sdk\dsp_projects\dsp_init\build”.
1. Go to directory: “desktop-linux-sdk_<versionno>\sdk\dsp_projects\dsp_init\build”. and open macros.ini.
2. Edit macros.ini to update the TI_PDK_C6678_INSTALL directory to where the PDK package under MCSDK is installed in the system. And DESKTOP_LINUX_SDK_DIR to where the Desktop Linux SDK is installed.
(For example :
- Windows:
TI_PDK_C6678_INSTALL_DIR=c:\Program Files\Texas Instruments\pdk_C6678_1_0_0_21 DESKTOP_LINUX_SDK_DIR=c:\desktop-linux-sdk_01_00_00_01
- Linux:
TI_PDK_C6678_INSTALL_DIR =/opt/ti/pdk_C6678_1_0_0_21 DESKTOP_LINUX_SDK_DIR=/opt/ti/desktop-linux-sdk_01_00_00_01
)
3. Import the demo_loopback CCS project from “desktop-linux-sdk_<versionno>\sdk\dsp_projects\dsp_init\build” directory. ( In CCSv5, Project -> Import Existing CCS/CCE Eclipse Projects)
4. Choose the platform to be used for the compilation. ( In CCSv5: Click Project -> Properties. On the window that opens Select 'Build' and click on 'Variables' tab. By default the platform is evmc6678. If building for a different platform (DSPC8681 or DSPC8682). Edit the following two variables: PLATFORM_NAME & PLATFORM_DIR_NAME to <dspc8681|dspc8682>
5. Clean the project using (Project -> Clean) and build the project using (Project -> Build Project). After build is completed the build files: init.out and init.map will be generated under the directory: “desktop-linux-sdk_<versionno>\sdk\dsp_projects\dsp_init\build\Release”
Copy the built images into the appropriate folder dspc8681, dspc8681, evm6678 or evm6678 in the demos/dsp_images folder.
Archived Pages[edit]
- Desktop-linux-sdk_01.00.00.05_DSP_Rebuild_Guide : : Desktop-linux-sdk_01.00.00.05_DSP_Rebuild_Guide
- Desktop-linux-sdk_01.00.00.04_DSP_Rebuild_Guide : : Desktop-linux-sdk_01.00.00.04_DSP_Rebuild_Guide
- Desktop-linux-sdk_01.00.00.02_DSP_Rebuild_Guide : : Desktop-linux-sdk_01.00.00.02_DSP_Rebuild_Guide
Related Links[edit]
- Desktop Linux SDK Software Page : Desktop Linux SDK Software
- Desktop Linux SDK: Getting Started Guide: http://processors.wiki.ti.com/index.php/Desktop-linux-sdk_01.00.00_Getting_Started_Guide
- Desktop Linux SDK: Hardware Setup Guide: http://processors.wiki.ti.com/index.php/Desktop_Linux_SDK_Hardware_setup_guide
- Desktop Linux SDK: Development Guide: http://processors.wiki.ti.com/index.php/Desktop-linux-sdk_01.00.00_Development_Guide
Technical Support and Product Updates[edit]
For technical discussions and issues, please visit
- C66x Multicore forum: http://e2e.ti.com/support/dsp/c6000_multi-core_dsps/f/639.aspx
- BIOS Embedded Software forum: http://e2e.ti.com/support/embedded/f/355.aspx
- Code Composer Studio forum: http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/3131.aspx
- TI C/C++ Compiler forum: http://e2e.ti.com/support/development_tools/compiler/f/343/t/34317.aspx
- Embedded Processors wiki: http://processors.wiki.ti.com
Note: When asking for help in the forum you should tag your posts in the Subject with “DESKTOP-LINUX-SDK” and the part number (e.g. “C6678”)