This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA3XEVM: driver tactics in CCS7 projects

Part Number: TDA3XEVM
Other Parts Discussed in Thread: SYSBIOS

Dear colleagues,
Now we are estimating migrationg our video system to Jacinto TDA35XXABFQ1 chip (DM505M) and want to test performance.
We use Spectrum Digital Starter Kit 15x15 TDA3x ES1.0 GP (EVMTDA3G-01-40-00 01NOV16 703754-1101 REV A).

We want to maintain minimalistic set of libraries in our project, so we need to decide what tactics to adhere to.

As can be seen I could use drivers and libraries from VSDK  pdk_01.08.00.16   or starterware_01.06.00.16 - 2 packages of sources.

Will I be right to say we doomed to include starterware and pdk to our CCS7 project? I see simple using of separate source files from these packages is almost impossible because of many types, objects and external functions within them.  

  • Hello Alexander,

    Starterware/BSP is drivers package used with pre VSDK3.0 versions. From VSDK3.0 onwards we use PDK which combines features provided by Starterware and BSP package.
    So you need to use only one of them for your project.

    Now as PDK has different software modules/components and for each one separate library is created. So you dont need to include all of PDK . You need to find out which modules you use in your app and link those only.

    You can find more information about PDK@ processors.wiki.ti.com/.../PDK_TDA_Software_Developer_Guide

  • OK, thank you......I saw difference between sil9022 HDMA transmitter support in PDK and StarterWare. StarterWare has almost nothing for it. Yes, I don't need include all PDK, but I encounter spending much time to add "nececcary" modules from common parts of a package.

    Next, is it possible to compile VSDK examples in CCS7 and launch for execute?
  • Alexander,

    I encounter spending much time to add "nececcary" modules from common parts of a package.
    >> If you go to PDK getting started guide, you can see not many modules present. So it should be easy to include them.
    You would have to spend more time if you include only useful submodule in each module. ex- if you include CSL module you get all drivers but if you want only required drivers then you would have to spend time.

    VSDK examples/use-cases are makefile based. Same for PDK examples. Normally we build these examples using makefile and use CCS to load binaries and for debug.
    If you want to use CCS to build examples you'd need to create CCS project from these makefile based examples.
  • Most interesting question - how do it with garantees of success and no waiste much time.
    Can CCS7 by a wizard convert makefile to according CCS project?
    Is it possible to add PDK to "template" project and compile it to see all files at proper places? I compile with defined Cortex A4 keys (__TI_ARM_V7M4__ , SOC_TDA3XX , BUILD_M4) this lead error from ARP32 and DSP6X files. Many files for all 3 cpus, I think, the mix of code - how it could be separated? Some files is absent in VSDK (like arp32.h), several versions with same names is found in SYS/BIOS folders, what will be next? PDK is not isolated package? Next will be links to Linux?
    I need to know - making CCS project from PDK or VSDK example will be like long quest any time or it is principall method to do it quite quick and amount of work will be foreseen?
    Is there at least one example of such porting?
  • Hello Alexander,

    Unfortunately CCS can't convert makefile project to CCS project. You can import makefile projects into CCS but other settings like tools setup, makefile creation is to be done manually.
    I wouldn't recommend using PDK template for issues you are seeing. The build system is makefile based and would need lot of efforts to import into CCS.
    If you want to use VSDK examples, then all this is taken care. All tools needed for use-case/example is imported by VSDK makefile and used during build. You can enable disable this using VSDK cfg.mk

    I would recommend below if you want to create your own use-case
    1. Identify PDK submodules needed. Remove others from component makefile.
    2. Build PDK in makefile. This would create module libraries.
    3. Create CCS project as per need and link PDK library to this project.
    4. While creating CCS sysbios project you can make sure the add components (like NDK, EDMA etc) needed. Refer to www.ti.com/.../sprabw1.pdf for creating sysbios project
  • To make CCS project I have to collect ".c" and ".h" files - to make a minimal subset of PDK for choosen pdk example.
    But I don't see list of necessary files, could you depict how to obtail this list, for example, to make CCS project for displayDss example of PDK.
    I mean this project:

    C:\PROCESSOR_SDK_VISION_03_01_00_00\ti_components\drivers\pdk_01_08_00_16\packages\ti\drv\vps\examples\dss\displayDss
  • Alexander,

    Start with files under this example folder (src and the config files). Along with this you would need some of utils (packages\ti\drv\vps\examples\utility) files. Link PDK VPS and drv library through CCS configuration. Also you would need to set include paths in CCS.

    Try building example and fixing the remaining missing links.