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.

DM6467 VPIF

Other Parts Discussed in Thread: CODECOMPOSER, THS7303, TVP7002, THS7353, TVP5147

Hello,

     I am working on a project where we want to take 1080p30 video out of an OmniVision OV5633 and encode it to h.264 with the DaVinci at 30fps fand transmit the h.264 data stream. All of on this project are new to any of this sort of work so we have no clu where to start with it. What we think we need to do is to write some sort of code in CodeComposer that will run in MontaVista so that we can set up the registers on the OV5633 then acquire the data from the chip. We however need a starting point for this and any help that can be provided will be appreciated.

  • Well we think we are making progress already, but basic progress. We tried to compile and run the led_test program from the test code provided on Spectrum Digital's website ,http://support.spectrumdigital.com/boards/evmdm6467/revf/files/DaVinciHD_EVM_BSL_RevE.zip , however we were unable to get it to compile. It gives this error:

     

    [vioteam@localhost led]$ arm_v5t_le-gcc led_test.c -o ledtest
    /opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/bin/../target/usr/lib/crt1.o(.text+0x30): In function `_start':
    init.c: undefined reference to `main'
    /tmp/ccegyTF7.o(.text+0x10): In function `led_test':
    led_test.c: undefined reference to `DAVINCIHD_LED_init'
    /tmp/ccegyTF7.o(.text+0x40):led_test.c: undefined reference to `DAVINCIHD_LED_on'
    /tmp/ccegyTF7.o(.text+0x60):led_test.c: undefined reference to `DAVINCIHD_waitusec'
    /tmp/ccegyTF7.o(.text+0x8c):led_test.c: undefined reference to `DAVINCIHD_LED_off'
    /tmp/ccegyTF7.o(.text+0xac):led_test.c: undefined reference to `DAVINCIHD_waitusec'
    /tmp/ccegyTF7.o(.text+0xe8):led_test.c: undefined reference to `DAVINCIHD_LED_on'
    collect2: ld returned 1 exit status

    If anyone can help it would be appreciated so we can begin our development.

     

  • please note that the test found at the Spectrum Digital site are actually CCS projects (should have a .pjt file) as opposed to applications you can compile under Linux command line.

    DM6467 includes two CPU cores, an ARM and a DSP.  In the DVSDK software we provide, normally the ARM side runs Linux and controls all the peripherals (video capture and display ports, USB, ethernet, i2c....); the DSP is really good at doing mathematical calculations so this is where the video compression/decompression take place.  Additionally, CCS is an IDE that is great for DSP development, but not so great for ARM development.  It understands ARM, but not Linux (or other popular OSes available for ARM); therefore, unless you are not running any OS under ARM (means you are re-writting a lot of code yourself) CCS is not ideal for ARM development.

    So what are your tool options.  Well, all low level compilers, linker... and operating systems for both ARM and DSP are included in DVSDK; so if you are ok using command line to do much of your development work, then you are good to go.  However, if you want a fancy IDE, for ARM running Linux you may wanto to consider MontaVista's DevRocket or GHS MULTI IDE...for DSP CCS is the king, although GHS MULTI IDE is also an option... I am sure there are other options (along with other OSes ) available but the ones I mentioned are the most common (worh noting WinCe is also a good contender on ARM)...

    Bottom line, CCS will not help you much with ARM side, I would suggest you install the DVSDK per Getting Started Guide (GSG) and get used to the command line steps outlined in GSG; this should give you a good feel if you are comfortable working with free command line tools; otherwise, you may want to start re-searching commercial IDEs mentioned above (for a $$$ ).

  • Ok, so how do you go about doing this? We have code composer installed on our Windows machine and the DVSDK installed on the Linux macine. How do we go about interfacing a 10 bit raw image sensor output with the 10 bit raw input on the VPIF?

  • As I mentioned ARM controls the video port periherals.  Our DVSDK provides a Linux video capture driver to interfarce to VPIF on DM6467; you will need to write a corresponding Linux driver for the image sensor you are using.  You should find some reference code in the Linex Kernel tree provided with DVSDK to get you started.  Familiarize yourself with VPIF driver architecture as you will need to interface to it (look under .../ti-davinci/drivers/media/video/davinci ); you will probrably need to replace TVP portion of V4L2 (Standard for Linux video capture driver) driver with your image sensor driver code.

    [edit] I should add that you will likely want to do this on Linux Host PC, where you isntalled DVSDK (as opposed to CCS)

  • Do we need a driver since we are connecting directly to the output raw data of the sensor? It seems to me that all we would have to do is set it up to capture the RAW data and not need a driver, but I could be wrong.

     

    As for CCS, we only had Code Composer Essentials for the MSP430 and every time I try to install the evaluation version of CCS I get a fatal error right at the end of installation. If you could help troubleshoot this it would help us greatly.

  • so how are you configuring your senor to output raw made (e.g resoution size, pixel clock, video timing...)?  Normally, the software that takes care of this is what I would consider as belonging in a Linux driver.  If this software exists on a separate board provided by the sensor manufacturer and all you are doing is pulling in signals from one board to the other, than you may not need a driver since you already have the raw data signals from the sensor just like you need them.  But consider your final design; if it will have both sensor and DM6467 in a single board and under a single OS (such as Linux), then  what software is going to manage the initialization and setting up the right video format these parts will support; normally, these would be the task of the V4L2 driver in Linux.

    So I am not sure if I understand the issues you are describing with CCS.  For DM6467, you need CCS v3.3; if this is what you are using, and you are seeing errors, then please provide more details and we will be happy to offer more advice.

     

  • I cannot get version 3.3 to install, it appears to get most of the way done then it proceeds to roll back and give a fatal error, however it doesn not give any information pertaining to what that fatal error may be.

     

    Also, installing the DVTB is giving us problems. I believe I edited my files correctly and it did do the gmake clean however it gives this when I do the gmake

     

    [root@localhost codecs]# gmake
    gmake -C viddec1_copy all
    gmake[1]: Entering directory `/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/ti/sdo/ce/examples/codecs/viddec1_copy'
    /home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/xdc XDCPATH="/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/ti/sdo/ce/examples/codecs/viddec1_copy/../../../../../..;/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/packages;/home/vioteam/dvsdk_1_40_02_33/xdais_6_10_01/packages;/home/vioteam/dvsdk_1_40_02_33/dsplink-davinci-v1.50-prebuilt/packages;/home/vioteam/dvsdk_1_40_02_33/cmem_2_10/packages;/home/vioteam/dvsdk_1_40_02_33/framework_components_2_10_02/packages;/home/vioteam/dvsdk_1_40_02_33/biosutils_1_01_00/packages;/home/vioteam/dvsdk_1_40_02_33/bios_5_32_01/packages" \
            XDCOPTIONS=v all -PD .
    making all: Wed Jun 3 13:10:14 EDT 2009 ...
    ======== .interfaces [/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/ti/xdais/dm/examples/viddec1_copy] ========
    #
    # making package.mak (because of package.bld) ...
    /home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/tconf  -Dxdc.path="/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/ti/sdo/ce/examples/codecs/viddec1_copy/../../../../../..;/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/packages;/home/vioteam/dvsdk_1_40_02_33/xdais_6_10_01/packages;/home/vioteam/dvsdk_1_40_02_33/dsplink-davinci-v1.50-prebuilt/packages;/home/vioteam/dvsdk_1_40_02_33/cmem_2_10/packages;/home/vioteam/dvsdk_1_40_02_33/framework_components_2_10_02/packages;/home/vioteam/dvsdk_1_40_02_33/biosutils_1_01_00/packages;/home/vioteam/dvsdk_1_40_02_33/bios_5_32_01/packages;/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/packages;../../../../.." -Dxdc.root=/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06 -Dxdc.hostOS=Linux -Dconfig.importPath=".;/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/ti/sdo/ce/examples/codecs/viddec1_copy/../../../../../..;/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/packages;/home/vioteam/dvsdk_1_40_02_33/xdais_6_10_01/packages;/home/vioteam/dvsdk_1_40_02_33/dsplink-davinci-v1.50-prebuilt/packages;/home/vioteam/dvsdk_1_40_02_33/cmem_2_10/packages;/home/vioteam/dvsdk_1_40_02_33/framework_components_2_10_02/packages;/home/vioteam/dvsdk_1_40_02_33/biosutils_1_01_00/packages;/home/vioteam/dvsdk_1_40_02_33/bios_5_32_01/packages;/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/packages;../../../../..;/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06;/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/etc" -Dxdc.bld.targets="" -DTOOLS=   /home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/packages/xdc/bld/bld.js /home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/packages/config.bld package.bld package.mak
    config.bld: loading user build configuration file /home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 27: invalid property id
    js:                     { description: "DaVinci evmDM6467 board, ARM-side", platform: "evmDM6467", dualCpu: true },
    js: ....................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 27: missing ; before statement
    js:                     { description: "DaVinci evmDM6467 board, ARM-side", platform: "evmDM6467", dualCpu: true },
    js: .................................................................................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 29: syntax error
    js:                 ],
    js: ................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 30: syntax error
    js:               },
    js: ...............^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 33: missing ; before statement
    js:                 target:  "gnu.targets.UCArm9",
    js: .......................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 36: syntax error
    js:                 cgtoolsRootDir: "/db/toolsrc/library/vendors2005/opensource/buildroot/16012006/staging_dir",
    js: ...............................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 38: syntax error
    js:                 platforms: [
    js: ..........................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 40: missing ; before statement
    js:                     { description: "DaVinci evmDM6467 board, ARM-side", platform: "evmDM6467", dualCpu: true },
    js: .................................................................................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 42: syntax error
    js:                 ],
    js: ................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 43: syntax error
    js:               }],
    js: ...............^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 45: syntax error
    js:     "DSP":    [{doBuild: true, // DSP builds (DSP servers for dual-CPU platforms or full apps for DSP-only platforms)
    js: ..........^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 46: syntax error
    js:                 target:  "ti.targets.C64P",
    js: .......................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 49: syntax error
    js:                 cgtoolsRootDir: "/home/vioteam/dvsdk_1_40_02_33/cg6x _6_0_16_1",
    js: ...............................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 51: syntax error
    js:                 platforms: [ // NOTE: comment out platforms (boards) below for which you don't want to build
    js: ..........................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 53: missing ; before statement
    js:                     { description: "DaVinci evmDM6467 board, DSP-side Server", platform: "evmDM6467" },
    js: ........................................................................................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 56: syntax error
    js:                 ],
    js: ................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 57: syntax error
    js:               }],
    js: ...............^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 94: missing } in compound statement
    js: Build.targets = targets;
    js: .......................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 94: missing } in compound statement
    js: Build.targets = targets;
    js: .......................^
    js: "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/user.bld", line 1: Compilation produced 19 syntax errors.
        "/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/include/utils.tci", line 588
        "/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/include/utils.tci", line 506
        "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/packages/config.bld", line 120
        "/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/include/utils.tci", line 588
        "/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/include/utils.tci", line 506
        "/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/packages/xdc/bld/BuildEnvironment.xs", line 106
        "/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/packages/xdc/bld/bld.js", line 74
        "/home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06/packages/xdc/bld/bld.js", line 141
    gmake[1]: *** [package.mak] Error 1
    gmake: *** [/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/ti/xdais/dm/examples/viddec1_copy,.interfaces] Error 2
    gmake[1]: *** [all] Error 2
    gmake[1]: Leaving directory `/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples/ti/sdo/ce/examples/codecs/viddec1_copy'
    gmake: *** [all] Error 2

     

    Any help is appreciated.

  • I am not aware of any CCS 3.3 installation issues such as the one you described; is it possible that a system issue such as out of memory in a particular drive may be causing this?

    With regards to the build issue, have you gone thru chapter 4 of the Getting Started Guide (GSG); if so, this would tell us the your tool-chain paths have been properly defined and your software components (referenced in Rules.make) have been properly installed.  In we can assume all this is in good shape, than focusing on the log above it sees that it fails to build codec engine examples.  There should be a build_instructions.html file at "/home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02/examples that you need to follow in order to buld the codec engine examples.

  • I do not believe there are any problems it is running into. I have tried installing it on 2 computers with the same error. I will redownload the software to make sure there wasn't some sort of error with the download.

    I have completed Chapter 4 of the GSG and am attempting part 4.9 but that is the problem I encountered. I used the html file as well, I will go back and review the files and everything to try and get it to work.

  • If you have the same CCS installation error in two computers, then downloading the software again is probrably your best bet.

    Also, if you want to post your xdcpaths.mak and user.bld files from step 4.8 in GSG, we may be able to offer more advice; actually, now that I think about it a bit more (it has been a long time since I installed this software), I recall there is a flag int he xdcpaths.mak file that should be set to 0 if no cetools is present (not present by default in DVSDK)

      USE_CETOOLS_IF_EXISTS := 0

    Unfortunately, this is not stated in build_instructions.html and the variable name can be a bit misleading.

  •  

    #
    #  ======== xdcpaths.mak ========
    #  definition of XDC paths and commands
    #
    #  This makefile constructs the "search path" for the XDC tools where it finds
    #  numerous components and packages needed to build Codec Engine examples and
    #  programs.
    #
    #  USER NOTE:
    #  1) you must specify various <component>_INSTALL_DIRs directores below to
    #     reflect your installation, where <component> is CE for Codec Engine,
    #     BIOS for DSP/BIOS, etc.
    #  2) you must specify compiler path and name in CGTOOLS_* variables below
    #  3) you can remove some of the devices from the "DEVICES" list and/or remove
    #     some of the types of binaries from the "PROGRAMS" list to reduce
    #     the build time (and possibly avoid checking for presence of a component
    #     you don't need)



    # (Optional) Remove from this list the devices you're not interested in building
    DEVICES  := DM6467

    # (Optional) Remove from the list the types of programs you're not intersted in
    # building:
    # APP_CLIENT -- Arm client for codecs running on the DSP, on dual-CPU systems
    # DSP_SERVER -- DSP server with the codecs, running on the DSP, on dual-CPUs
    # APP_LOCAL  -- Client+codecs in a single program, whether Arm only or DSP only
    PROGRAMS := APP_CLIENT DSP_SERVER APP_LOCAL


    # (Mandatory) Specify where various components are installed.
    # What you need depends on what device(s) you're building for, what type(s) of
    # programs you are building for, and whether your Codec Engine distribution
    # is a "big" one that contains all the minor components in its "cetools"
    # directory. The legend:
    # CE      - Codec Engine (needed for Arm and for DSP)
    # XDC     - XDC tools (Arm and DSP)
    # BIOS    - DSP/BIOS (DSP only)
    # XDAIS   - XDAIS header files (Arm and DSP)
    # FC      - Framework components, various resource managers (ARM and DSP)
    # CMEM    - Continuous memory manager (Arm only)
    # DSPLINK - Arm<->DSP communication software (Arm + DSP)
    #
    # you can omit directory specifications for the components you think you don't
    # need (will be warned if you do, based on your DEVICES + PROGRAMS selection
    # above).

    CE_INSTALL_DIR          := /home/vioteam/dvsdk_1_40_02_33/codec_engine_2_10_02
    XDC_INSTALL_DIR       := /home/vioteam/dvsdk_1_40_02_33/xdc_3_00_06
    BIOS_INSTALL_DIR      := /home/vioteam/dvsdk_1_40_02_33/bios_5_32_01

    # no need to specify the installation directories below if your CE installation
    # has cetools/ directory on top
    USE_CETOOLS_IF_EXISTS := 0
    XDAIS_INSTALL_DIR     := /home/vioteam/dvsdk_1_40_02_33/xdais_6_10_01
    DSPLINK_INSTALL_DIR   := /home/vioteam/dvsdk_1_40_02_33/dsplink-davinci-v1.50-prebuilt
    CMEM_INSTALL_DIR      := /home/vioteam/dvsdk_1_40_02_33/cmem_2_10
    FC_INSTALL_DIR        := /home/vioteam/dvsdk_1_40_02_33/framework_components_2_10_02
    BIOSUTILS_INSTALL_DIR := /home/vioteam/dvsdk_1_40_02_33/biosutils_1_01_00


    # (Mandatory) specify correct compiler paths and names for the architectures
    # you'll be building for:

    # compiler path and name for Montavista Arm 9 toolchain. NOTE: make sure the
    # directory you specify has a "bin" subdirectory
    CGTOOLS_MVARM9 = /opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le
    CC_MVARM9      = bin/arm_v5t_le-gcc

    # compiler path and name for TI C64x toolchain. NOTE: make sure the
    # directory you specify has a "bin" subdirectory
    CGTOOLS_C64P = /home/vioteam/dvsdk_1_40_02_33/cg6x _6_0_16_1
    CC_C64P      = bin/cl6x

    # -----------------------------------------------------------------------------

    # figure out what categories of devices we are to build for
    ifneq (,$(findstring DM6446,$(DEVICES)))
        DEVICES_DAVINCI := 1
    endif   
    ifneq (,$(findstring DM6467,$(DEVICES)))
        DEVICES_DAVINCI := 1
    endif   
    ifneq (,$(findstring DM355,$(DEVICES)))
        DEVICES_ARMONLY := 1
    endif   
    ifneq (,$(findstring DM6437,$(DEVICES)))
        DEVICES_DSPONLY := 1
    endif   
    ifneq (,$(findstring DM648,$(DEVICES)))
        DEVICES_DSPONLY := 1
    endif   

    # determine which components are necessary based on DEVICES and PROGRAMS
    REQUIRE_CE    := 1
    REQUIRE_XDC   := 1
    REQUIRE_XDAIS := 1
    REQUIRE_FC    := 1

    ifneq (,$(findstring DM6446,$(DEVICES)))
        ifneq (, $(findstring APP_CLIENT, $(PROGRAMS) ))
            REQUIRE_LINK := 1
            REQUIRE_CMEM := 1
        endif
        ifneq (, $(findstring DSP_SERVER, $(PROGRAMS) ))
            REQUIRE_LINK := 1
            REQUIRE_BIOS := 1
        endif
    endif

    ifneq (,$(findstring DM6467,$(DEVICES)))
        ifneq (, $(findstring APP_CLIENT, $(PROGRAMS) ))
            REQUIRE_LINK := 1
            REQUIRE_CMEM := 1
        endif
        ifneq (, $(findstring DSP_SERVER, $(PROGRAMS) ))
            REQUIRE_LINK := 1
            REQUIRE_BIOS := 1
        endif
    endif

    ifneq (,$(findstring DM355,$(DEVICES)))
        ifneq (, $(findstring APP_LOCAL, $(PROGRAMS) ))
            REQUIRE_CMEM := 1
        endif
    endif

    ifneq (,$(findstring DM6437,$(DEVICES)))
        ifneq (, $(findstring APP_LOCAL, $(PROGRAMS) ))
            REQUIRE_BIOS := 1
        endif
    endif

    ifneq (,$(findstring DM648,$(DEVICES)))
        ifneq (, $(findstring APP_LOCAL, $(PROGRAMS) ))
            REQUIRE_BIOS := 1
        endif
    endif


    # Build the XDC path from the necessary components, verifying along the way
    # that the required compoments are present
    XDC_PATH :=

    ERRMSG = which is invalid (could not find file "$(TEST_FILE)"). Set this in <codec engine examples>/xdcpaths.mak! See the build documentation to correct this error.

    # CE_INSTALL_DIR is the location of your Codec Engine.
    ifeq ($(REQUIRE_CE), 1)
        TEST_FILE := $(CE_INSTALL_DIR)/packages/ti/sdo/ce/package.xdc
        ifeq ($(wildcard $(TEST_FILE)),)
            $(error CE_INSTALL_DIR is set to "$(CE_INSTALL_DIR)", $(ERRMSG))
        endif
        XDC_PATH := $(CE_INSTALL_DIR)/packages
    endif

    # Add cetools to XDCPATH if 1) $(USE_CETOOLS_IF_EXISTS) is set, and
    # 2) the CE distribution has "cetools/"
    USING_CETOOLS := 0
    ifeq ($(USE_CETOOLS_IF_EXISTS), 1)
        ifneq ($(wildcard $(CE_INSTALL_DIR)/cetools),)
            USING_CETOOLS := 1
            XDC_PATH := $(CE_INSTALL_DIR)/cetools/packages;$(XDC_PATH)
        endif
    endif
    ifeq ($(USING_CETOOLS),0)
        # XDAIS_INSTALL_DIR is the location of your XDAIS distribution
        ifeq ($(REQUIRE_XDAIS), 1)
            TEST_FILE := $(XDAIS_INSTALL_DIR)/packages/ti/xdais/package.xdc
            ifeq ($(wildcard $(TEST_FILE)),)
                $(error XDAIS_INSTALL_DIR is set to "$(XDAIS_INSTALL_DIR)", $(ERRMSG))
            endif
            XDC_PATH := $(XDC_PATH);$(XDAIS_INSTALL_DIR)/packages
        endif

        # DSPLINK_INSTALL_DIR is the location of your DSPLINK distribution
        ifeq ($(REQUIRE_LINK), 1)
            TEST_FILE := $(DSPLINK_INSTALL_DIR)/packages/dsplink/gpp/package.xdc
            ifeq ($(wildcard $(TEST_FILE)),)
                $(error DSPLINK_INSTALL_DIR is set to "$(DSPLINK_INSTALL_DIR)", $(ERRMSG))
            endif
            XDC_PATH := $(XDC_PATH);$(DSPLINK_INSTALL_DIR)/packages
        endif

        # CMEM_INSTALL_DIR is the location of your CMEM distribution
        ifeq ($(REQUIRE_CMEM), 1)
            TEST_FILE := $(CMEM_INSTALL_DIR)/packages/ti/sdo/linuxutils/cmem/package.xdc
            ifeq ($(wildcard $(TEST_FILE)),)
                $(error CMEM_INSTALL_DIR is set to "$(CMEM_INSTALL_DIR)", $(ERRMSG))
            endif
            XDC_PATH := $(XDC_PATH);$(CMEM_INSTALL_DIR)/packages
        endif

        # FC_INSTALL_DIR is the location of your Frameworks Components distribution
        ifeq ($(REQUIRE_FC), 1)
            TEST_FILE := $(FC_INSTALL_DIR)/packages/ti/sdo/fc/dskt2/package.xdc
            ifeq ($(wildcard $(TEST_FILE)),)
                $(error FC_INSTALL_DIR is set to "$(FC_INSTALL_DIR)", $(ERRMSG))
            endif
            XDC_PATH := $(XDC_PATH);$(FC_INSTALL_DIR)/packages
        endif

        # BIOSUTILS_INSTALL_DIR is the location of your BIOSUTILS distribution
        ifeq ($(REQUIRE_BIOS), 1)
            TEST_FILE := $(BIOSUTILS_INSTALL_DIR)/packages/ti/bios/utils/package.xdc
            ifeq ($(wildcard $(TEST_FILE)),)
                $(error BIOSUTILS_INSTALL_DIR is set to "$(BIOSUTILS_INSTALL_DIR)", $(ERRMSG))
            endif
            XDC_PATH := $(XDC_PATH);$(BIOSUTILS_INSTALL_DIR)/packages
        endif

    endif

    # BIOS_INSTALL_DIR is the location of your BIOS distribution
    ifeq ($(REQUIRE_BIOS), 1)
        TEST_FILE := $(BIOS_INSTALL_DIR)/packages/ti/bios/package.xdc
        ifeq ($(wildcard $(TEST_FILE)),)
            $(error BIOS_INSTALL_DIR is set to "$(BIOS_INSTALL_DIR)", $(ERRMSG))
        endif
        XDC_PATH := $(XDC_PATH);$(BIOS_INSTALL_DIR)/packages
    endif

    # XDC_INSTALL_DIR is the location of your XDCTOOLS installation.
    ifeq ($(REQUIRE_XDC), 1)
        TEST_FILE := $(XDC_INSTALL_DIR)/packages/xdc/package.xdc
        ifeq ($(wildcard $(TEST_FILE)),)
            $(error XDC_INSTALL_DIR is set to "$(XDC_INSTALL_DIR)", $(ERRMSG))
        endif
    endif

    # XDC_PATH is complete. Any other components you could add as
    # XDC_PATH := <your component>/packages;$(XDC_PATH)

     

     

    /*
     *  ======== user.bld ========
     *
     * User note: YOU MUST MODIFY THIS FILE TO SPECIFY THE COMPILER TOOL PATHS.
     */

    // This table list the targets for which to build libraries and programs, and for
    // each target it lists where the compiler tools are and for what platforms
    // the programs should be built. For all build variants where you specify
    // that "doBuild" is "true", you must specify the compiler tools, and it is
    // desirable to comment out unwanted platforms.
    // Example: if you are only interested in building Arm-side examples for
    // evmDM6446 running Montavista Arm Linux, set doBuild: false everywhere
    // except for the first Arm "doBuild"; then, specify your Montavista Arm
    // tools directory, and comment out all platforms for that build except
    // for '{ platform: "evmDM6446" }'.

    var buildTable = {
        "Arm":    [{doBuild: true, // standard build for Montavista Linux
                    target:  "gnu.targets.MVArm9",

                    // MVArm tools. NOTE: make sure the directory you specify has a "bin" subdirectory
                    cgtoolsRootDir: "/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le",

                    platforms: [ // NOTE: comment out platforms (boards) below for which you don't want to build
                        //{ description: "DaVinci evmDM6446 board, ARM-side", platform: "evmDM6446", dualCpu: true },
                        { description: "DaVinci evmDM6467 board, ARM-side", platform: "evmDM6467", dualCpu: true },
                        //{ description: "DaVinci evmDM355  board, ARM only", platform: "evmDM6446", dualCpu: false, outDir: "evmDM355" },
                    ],
                  },

                  { doBuild: false, // build for uC Linux
                    target:  "gnu.targets.UCArm9",

                    // UCLibc tools. NOTE: make sure the directory you specify has a "bin" subdirectory
                    cgtoolsRootDir: "/db/toolsrc/library/vendors2005/opensource/buildroot/16012006/staging_dir",

                    platforms: [
                        //{ description: "DaVinci evmDM6446 board, ARM-side", platform: "evmDM6446", dualCpu: true },
                        { description: "DaVinci evmDM6467 board, ARM-side", platform: "evmDM6467", dualCpu: true },
                        //{ description: "DaVinci evmDM355  board, ARM only", platform: "evmDM6446", dualCpu: false, outDir: "evmDM355" },
                    ],
                  }],

        "DSP":    [{doBuild: true, // DSP builds (DSP servers for dual-CPU platforms or full apps for DSP-only platforms)
                    target:  "ti.targets.C64P",

                    // specify the "root directory" for the compiler tools. NOTE: make sure the directory you specify has a "bin" subdirectory
                    cgtoolsRootDir: "/home/vioteam/dvsdk_1_40_02_33/cg6x _6_0_16_1",

                    platforms: [ // NOTE: comment out platforms (boards) below for which you don't want to build
                        //{ description: "DaVinci evmDM6446 board, DSP-side Server", platform: "evmDM6446" },
                        { description: "DaVinci evmDM6467 board, DSP-side Server", platform: "evmDM6467" },
                        //{ description: "DaVinci evmDM6437 board, DSP only", platform: "evmDM6437" },
                        //{ description: "DaVinci evmDM648  board, DSP only", platform: "evmDM648"  },
                    ],
                  }],

    /*    "PC":     [{doBuild: false,  // build for PC Linux
    *                target:  "gnu.targets.Linux86",
    *                cgtoolsRootDir: "/db/toolsrc/library/vendors2005/opensource/gcc/4.1.0/Linux/gcc-4.1.0-glibc-2.3.6/i686-unknown-linux-gnu",
    *                platforms: [ { platform: null, outDir: "PC" } ],
    *              }],
    */
    };


    // expert users: you can specify any compiler toolchain-specific options
    // here, for example,
    // C64P.ccOpts.prefix = "-pdr"; // enable remarks for the TI C64P compiler
    // UCArm9.lnkOpts.suffix = "-static"; // static linking
    // etc.

    //
    // no need to edit anything below this line
    // -----------------------------------------------------------------------------

    var targets = [];
    var userbldBuildPlatforms = {};

    for (var c in buildTable) {
        var cpu = buildTable[ c ];
        for (var t = 0; t < cpu.length; t++) {
            if (cpu[t].doBuild) {
                var targ = xdc.useModule( cpu[t].target );
                targets[ targets.length ] = targ;
                targ.rootDir = cpu[t].cgtoolsRootDir;
                var targName = cpu[t].target.replace( /.*\./g, "" );
                userbldBuildPlatforms[ targName ] = cpu[t].platforms;
            }
        }
    }

    Build.targets = targets;

     

  • I do not see any issues with xdcpaths.mak; revisiting the error log you posted a few e-mails ago, it appears the line in user.bld where things begin to break is

          { description: "DaVinci evmDM6467 board, ARM-side", platform: "evmDM6467", dualCpu: true },

    Unfortunately, I do not have my DVSDK 1.40 DM6467 installation handy (can confirm tomorrow) but on newer versions of codec engine, this user.bld line looks as follows

          { description: "DaVinci evmDM6467 board, ARM-side", platform: "evmDM6467", dualCpu: true, outDir: "bin/evmDM6467" },

    However, please note that I have built codec engine examples for DVSDK 1.40 in the past, and did not have to change this line in user.bld, hence I am wondering if there is something else going on here.  If you are not sure if any other relevant files may have changed, than it may be a good idea to re-install dvsdk.

     


  • Ok, I was able to get CCS to install however I am not sure which platform to select for the 6467 DVEVM in the CCS Setup as I do not see one specific to the 6467.

  • Richard Hall said:
    Ok, I was able to get CCS to install however I am not sure which platform to select for the 6467 DVEVM in the CCS Setup as I do not see one specific to the 6467.

    What sort of emulator are you using to interface with CCS? In general the emulator driver package from the emulator manufacturer should have the imports in it for a DM6467 if the package is new enough to support DM6467.

  • Bernie Thompson said:

    Ok, I was able to get CCS to install however I am not sure which platform to select for the 6467 DVEVM in the CCS Setup as I do not see one specific to the 6467.

    What sort of emulator are you using to interface with CCS? In general the emulator driver package from the emulator manufacturer should have the imports in it for a DM6467 if the package is new enough to support DM6467.

    [/quote]

    To be 100% honest, I have no clue. We have the Spectrum Digital 6467 DVEVM, other than that I do not know.

  • Richard Hall said:
    We have the Spectrum Digital 6467 DVEVM, other than that I do not know.

    The DM6467 does not have on board emulation so to interface to CCS you would need an external emulator, for example an XDS510USB, as CCS is not capible of connecting and debugging devices through direct Ethernet or serial connections. The emulator would be a little box with cables going to the host PC and to the JTAG header on the EVM, if you have one it probably shows the manufacturer on it, if you do not than I am afraid you will not be able to connect with CCS.

  • So to program the DSP using CCS we have to have the emulator to connect to it through the JTAG interface if I am understanding this correctly. Do you need this part to utilize the SoC analyzer as well?

    If so is that the part you would recommend or is there another one that would work better or easier?

  • Yes, you need JTAG emulator to use CCS with this EVM.  You do not need this to use SoC analyzer, XDS510USB pointed to by Bernie is one of the more popular choices and has pretty good driver support for most of our EVMs.  If you need something a little more high end (e.g. high speed RTDX features), you may want to consider XDS560R from Spectrum.

  • I do not believe we need the additional features. Will we be able to use this with the 120 day trial of CCS as well?

  • You probably would have to work with the CCSv4 beta, unfortunately the free evaluation version of CCS 3.3 is stuck at the original CCS 3.3 release which predates the DM6467, DM646x support was added in service release 10. You may be able to get it to work to some extent but there may be unforeseen issues.

  • Bernie, I've been rummaging around looking for an example of #include <stdio.h> and printf() usage in the examples provide for code composer studio (CCS 3.3.81.28). Adding these lines to the example <Example_2802xSci_Echoback.c>  results in link errors that are not easily fixed for this greenhorn TI user (see below).

    __---------------------------------------------------------------------------------------------------------------------------------

    "C:\\tidcs\\c28\\DSP2802x\\v100\\DSP2802x_common\\cmd\\28027_RAM_lnk.cmd", line 114: error:
       placement fails for object ".text"
    error: run placement fails for object ".sysmem"
    error: run placement fails for object ".cio"
    warning: entry-point symbol other than "_c_int00" specified:  "code_start"
    error: errors encountered during linking;
       "./Debug/Example_2802xSci_echoback.out" not built

    >> Compilation failure

    Build Complete,
      2 Errors, 2 Warnings, 0 Remarks.
    __----------------------------------------------------

    WAG hacks of the file <28027_RAM_lnk.cmd> have not yielded working results (see section below).

    __-------------------------------------------------------------------------------------------------------------------------

    MEMORY
    {
    PAGE 0 :
       /* For this example, L0 is split between PAGE 0 and PAGE 1 */ 
       /* BEGIN is used for the "boot to SARAM" bootloader mode   */
      
       BEGIN      : origin = 0x000000, length = 0x000002            
       BOOT_RSVD  : origin = 0x000002, length = 0x00004E     /* Part of M0, BOOT rom will use this for stack */              
       RAMM0      : origin = 0x000050, length = 0x0003B0
       PRAML0     : origin = 0x008000, length = 0x000900
       RESET      : origin = 0x3FFFC0, length = 0x000002

       IQTABLES   : origin = 0x3FE000, length = 0x000B50     /* IQ Math Tables in Boot ROM */
       IQTABLES2  : origin = 0x3FEB50, length = 0x00008C     /* IQ Math Tables in Boot ROM */
       IQTABLES3  : origin = 0x3FEBDC, length = 0x0000AA  /* IQ Math Tables in Boot ROM */

       BOOTROM    : origin = 0x3FF27C, length = 0x000D44              

            
    PAGE 1 :

       /* For this example, L0 is split between PAGE 0 and PAGE 1 */
       RAMM1       : origin = 0x000480, length = 0x000380     /* on-chip RAM block M1 */
       DRAML0      : origin = 0x008900, length = 0x000700        
    }
     
     
    SECTIONS
    {
       /* Setup for "boot to SARAM" mode:
          The codestart section (found in DSP28_CodeStartBranch.asm)
          re-directs execution to the start of user code.  */
       codestart        : > BEGIN,     PAGE = 0
       ramfuncs         : > RAMM0      PAGE = 0 
       .text            : > PRAML0,    PAGE = 0
    /*   .cio             : > PRAML0,    PAGE = 0 */
       .cinit           : > RAMM0,     PAGE = 0
       .pinit           : > RAMM0,     PAGE = 0
       .switch          : > RAMM0,     PAGE = 0
       .reset           : > RESET,     PAGE = 0, TYPE = DSECT /* not used, */
      
       .stack           : > RAMM1,     PAGE = 1
       .ebss            : > DRAML0,    PAGE = 1
       .econst          : > DRAML0,    PAGE = 1     
       .esysmem         : > RAMM1,     PAGE = 1
    /*   .sysmem         : > RAMM1,      PAGE = 1 */

       IQmath           : > PRAML0,    PAGE = 0
       IQmathTables     : > IQTABLES,  PAGE = 0, TYPE = NOLOAD
     
      /* Uncomment the section below if calling the IQNexp() or IQexp()
          functions from the IQMath.lib library in order to utilize the
          relevant IQ Math table in Boot ROM (This saves space and Boot ROM
          is 1 wait-state). If this section is not uncommented, IQmathTables2
          will be loaded into other memory (SARAM, Flash, etc.) and will take
          up space, but 0 wait-state is possible.
       */
       /*
       IQmathTables2    : > IQTABLES2, PAGE = 0, TYPE = NOLOAD
       {
      
                  IQmath.lib<IQNexpTable.obj> (IQmathTablesRam)
      
       }
       */
       /* Uncomment the section below if calling the IQNasin() or IQasin()
          functions from the IQMath.lib library in order to utilize the
          relevant IQ Math table in Boot ROM (This saves space and Boot ROM
          is 1 wait-state). If this section is not uncommented, IQmathTables2
          will be loaded into other memory (SARAM, Flash, etc.) and will take
          up space, but 0 wait-state is possible.
       */
       /*
       IQmathTables3    : > IQTABLES3, PAGE = 0, TYPE = NOLOAD
       {
      
                  IQmath.lib<IQNasinTable.obj> (IQmathTablesRam)
      
       }  
       */
        
    }

    __--------------------------------------------------------------------------------------------------------------------------------------------

    Do your have an example of code for F28027 Piccolo ControlCARD (on Docking station USB-EMU) with working printf()?

    DE

  • Bernie Thompson said:

    You probably would have to work with the CCSv4 beta, unfortunately the free evaluation version of CCS 3.3 is stuck at the original CCS 3.3 release which predates the DM6467, DM646x support was added in service release 10. You may be able to get it to work to some extent but there may be unforeseen issues.

    Ok, some good news from us. We have gotten the DVTB installed and working, turns out there was a space in the directory name that was confusing the computer, once the sace was removed from the directory name as well as the user.bld file it worked correctly.

    CCS v4 Beta also installed correctly and I have been anle to run the software and write the helloworld program shown in the getting started section. I am currently trying to run some of the programs that are provided as "Test Code" on the Spectrum Digital site however I have not had any luck in doing so, if you could help me with this I think we will be good to go on our own for coding.

     

  • Ok, trying to compile and run the video_sd_display_480i file that Spectrum Provides in CCS and am getting these errors, pleas ehelp.

     

     

    undefined                 first referenced                    

      symbol                       in file                         

     ---------                 ----------------                    

     _adv7343_setup            ./video_sd_display_fill_480i.obj    

     _adv7343_test_pattern     ./video_sd_display_colorbars_480i.obj

     _select_sd_video_output   ./video_sd_display_fill_480i.obj    

     _vpif_clock_setup         ./video_sd_display_colorbars_480i.obj

     _vpif_sd_display          ./video_sd_display_fill_480i.obj    

     _vpif_sd_generate_pattern ./video_sd_display_fill_480i.obj    

     

    error: unresolved symbols remain

    "../video_sd_display_fill_480i.c", line 29: warning: relocation from function

       "video_sd_display_fill_480i" to symbol "_select_sd_video_output" overflowed;

       the 32-bit relocated address 0xbffdd5c4 is too large to encode in the 25-bit

       signed PC-Relative field (type = 'R_PCR24W' (23), file =

       "./video_sd_display_fill_480i.obj", offset = 0x00000014, section = ".text")

    "../video_sd_display_fill_480i.c", line 32: warning: relocation from function

       "video_sd_display_fill_480i" to symbol "_vpif_sd_generate_pattern"

       overflowed; the 32-bit relocated address 0xbffdd5ba is too large to encode

       in the 25-bit signed PC-Relative field (type = 'R_PCR24W' (23), file =

       "./video_sd_display_fill_480i.obj", offset = 0x00000028, section = ".text")

    "../video_sd_display_fill_480i.c", line 33: warning: relocation from function

       "video_sd_display_fill_480i" to symbol "_vpif_sd_display" overflowed; the

       32-bit relocated address 0xbffdd5b0 is too large to encode in the 25-bit

       signed PC-Relative field (type = 'R_PCR24W' (23), file =

       "./video_sd_display_fill_480i.obj", offset = 0x0000003c, section = ".text")

    "../video_sd_display_fill_480i.c", line 36: warning: relocation from function

       "video_sd_display_fill_480i" to symbol "_adv7343_setup" overflowed; the

       32-bit relocated address 0xbffdd5a6 is too large to encode in the 25-bit

       signed PC-Relative field (type = 'R_PCR24W' (23), file =

       "./video_sd_display_fill_480i.obj", offset = 0x00000050, section = ".text")

    "../video_sd_display_colorbars_480i.c", line 29: warning: relocation from

       function "video_sd_display_colorbars_480i" to symbol "_vpif_clock_setup"

       overflowed; the 32-bit relocated address 0xbffdd552 is too large to encode

       in the 25-bit signed PC-Relative field (type = 'R_PCR24W' (23), file =

       "./video_sd_display_colorbars_480i.obj", offset = 0x0000001c, section =

       ".text")

    "../video_sd_display_colorbars_480i.c", line 33: warning: relocation from

       function "video_sd_display_colorbars_480i" to symbol

       "_select_sd_video_output" overflowed; the 32-bit relocated address

       0xbffdd542 is too large to encode in the 25-bit signed PC-Relative field

       (type = 'R_PCR24W' (23), file = "./video_sd_display_colorbars_480i.obj",

       offset = 0x0000003c, section = ".text")

    "../video_sd_display_colorbars_480i.c", line 36: warning: relocation from

       function "video_sd_display_colorbars_480i" to symbol "_adv7343_test_pattern"

       overflowed; the 32-bit relocated address 0xbffdd538 is too large to encode

       in the 25-bit signed PC-Relative field (type = 'R_PCR24W' (23), file =

       "./video_sd_display_colorbars_480i.obj", offset = 0x00000050, section =

       ".text")

    error: errors encountered during linking; "video_sd_display_480i.out" not

       built

     

    >> Compilation failure

    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [video_sd_display_480i.out] Error 1

    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: Target 'all' not remade because of errors.

    Build complete for project video_sd_display_480i

     

  • Ok, it seems I haven't been asking good or useful questions since I have not got answers to them recently.

    We have CCSv4 working and have been able to run the built in demos as well as getting some of the demos provided by Spectrum Digital working. However we are still not able to get some of the demos working, mainly the video demos. We are getting this error message for all of them.

     

    <Linking>

     undefined                 first referenced                    
      symbol                       in file                         
     ---------                 ----------------                    
     _adv7343_color_swap       ./video_hd_display_fill_720p.obj    
     _adv7343_setup            ./video_hd_display_fill_720p.obj    
     _adv7343_test_pattern     ./video_hd_display_fill_720p.obj    
     _select_hd_video_output   ./video_hd_display_fill_720p.obj    
     _ths7303_setup            ./video_hd_display_fill_720p.obj    
     _vpif_clock_setup         ./vpif_sd_bt656.obj                 
     _vpif_hd_display          ./video_hd_display_colorbars_720p.obj
     _vpif_hd_generate_pattern ./video_hd_display_colorbars_720p.obj

    error: unresolved symbols remain
    "../video_hd_display_fill_720p.c", line 41: warning: relocation from function
       "swap_colors" to symbol "_adv7343_color_swap" overflowed; the 32-bit
       relocated address 0xbffdddd0 is too large to encode in the 25-bit signed
       PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x00000058, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_vpif_clock_setup" overflowed; the
       32-bit relocated address 0xbffddda6 is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x000000ac, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_vpif_clock_setup" overflowed; the
       32-bit relocated address 0xbffddd9a is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x000000c4, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_select_hd_video_output" overflowed;
       the 32-bit relocated address 0xbffddd8a is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x000000e4, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_adv7343_setup" overflowed; the
       32-bit relocated address 0xbffddd80 is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x000000f8, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_adv7343_test_pattern" overflowed;
       the 32-bit relocated address 0xbffddd76 is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x0000010c, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_ths7303_setup" overflowed; the
       32-bit relocated address 0xbffddd6c is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x00000120, section = ".text")
    "../video_hd_display_colorbars_720p.c", line 27: warning: relocation from
       function "video_hd_display_colorbars_720p" to symbol
       "_vpif_hd_generate_pattern" overflowed; the 32-bit relocated address
       0xbffdd512 is too large to encode in the 25-bit signed PC-Relative field
       (type = 'R_PCR24W' (23), file = "./video_hd_display_colorbars_720p.obj",
       offset = 0x00000018, section = ".text")
    "../video_hd_display_colorbars_720p.c", line 28: warning: relocation from
       function "video_hd_display_colorbars_720p" to symbol "_vpif_hd_display"
       overflowed; the 32-bit relocated address 0xbffdd508 is too large to encode
       in the 25-bit signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_colorbars_720p.obj", offset = 0x0000002c, section =
       ".text")
    "../video_hd_display_colorbars_720p.c", line 31: warning: relocation from
       function "video_hd_display_colorbars_720p" to symbol "_adv7343_setup"
       overflowed; the 32-bit relocated address 0xbffdd4fe is too large to encode
       in the 25-bit signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_colorbars_720p.obj", offset = 0x00000040, section =
       ".text")
    "../video_hd_display_colorbars_720p.c", line 34: warning: relocation from
       function "video_hd_display_colorbars_720p" to symbol "_ths7303_setup"
       overflowed; the 32-bit relocated address 0xbffdd4f4 is too large to encode
       in the 25-bit signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_colorbars_720p.obj", offset = 0x00000054, section =
       ".text")
    error: errors encountered during linking; "video_hd_display_720p.out" not
       built

    >> Compilation failure
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [video_hd_display_720p.out] Error 1
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.
    Build complete for project video_hd_display_720p

     

    If you could help us solve this it should help us along our way.

  • Is anyone willing to help us or not?

  • I'm not a DM6467 guy but I'll give this a shot:

    Richard Hall said:
    <Linking>

     undefined                 first referenced                    
      symbol                       in file                         
     ---------                 ----------------                    
     _adv7343_color_swap       ./video_hd_display_fill_720p.obj    
     _adv7343_setup            ./video_hd_display_fill_720p.obj    
     _adv7343_test_pattern     ./video_hd_display_fill_720p.obj    
     _select_hd_video_output   ./video_hd_display_fill_720p.obj    
     _ths7303_setup            ./video_hd_display_fill_720p.obj    
     _vpif_clock_setup         ./vpif_sd_bt656.obj                 
     _vpif_hd_display          ./video_hd_display_colorbars_720p.obj
     _vpif_hd_generate_pattern ./video_hd_display_colorbars_720p.obj

    error: unresolved symbols remain
    This is a standard linker error in which the linker tells us it cannot find the definition of these symbols (essentially you called a function, but it cannot find the function). This is fixed by including the proper library in your project. I do not know offhand where these symbols reside, but I would assume this library(ies) would be a part of the DVSDK or some other package.

    Richard Hall said:
    "../video_hd_display_fill_720p.c", line 41: warning: relocation from function
       "swap_colors" to symbol "_adv7343_color_swap" overflowed; the 32-bit
       relocated address 0xbffdddd0 is too large to encode in the 25-bit signed
       PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x00000058, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_vpif_clock_setup" overflowed; the
       32-bit relocated address 0xbffddda6 is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x000000ac, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_vpif_clock_setup" overflowed; the
       32-bit relocated address 0xbffddd9a is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x000000c4, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_select_hd_video_output" overflowed;
       the 32-bit relocated address 0xbffddd8a is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x000000e4, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_adv7343_setup" overflowed; the
       32-bit relocated address 0xbffddd80 is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x000000f8, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_adv7343_test_pattern" overflowed;
       the 32-bit relocated address 0xbffddd76 is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x0000010c, section = ".text")
    "../video_hd_display_fill_720p.c", line 46: warning: relocation from function
       "video_hd_display_fill_720p" to symbol "_ths7303_setup" overflowed; the
       32-bit relocated address 0xbffddd6c is too large to encode in the 25-bit
       signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_fill_720p.obj", offset = 0x00000120, section = ".text")
    "../video_hd_display_colorbars_720p.c", line 27: warning: relocation from
       function "video_hd_display_colorbars_720p" to symbol
       "_vpif_hd_generate_pattern" overflowed; the 32-bit relocated address
       0xbffdd512 is too large to encode in the 25-bit signed PC-Relative field
       (type = 'R_PCR24W' (23), file = "./video_hd_display_colorbars_720p.obj",
       offset = 0x00000018, section = ".text")
    "../video_hd_display_colorbars_720p.c", line 28: warning: relocation from
       function "video_hd_display_colorbars_720p" to symbol "_vpif_hd_display"
       overflowed; the 32-bit relocated address 0xbffdd508 is too large to encode
       in the 25-bit signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_colorbars_720p.obj", offset = 0x0000002c, section =
       ".text")
    "../video_hd_display_colorbars_720p.c", line 31: warning: relocation from
       function "video_hd_display_colorbars_720p" to symbol "_adv7343_setup"
       overflowed; the 32-bit relocated address 0xbffdd4fe is too large to encode
       in the 25-bit signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_colorbars_720p.obj", offset = 0x00000040, section =
       ".text")
    "../video_hd_display_colorbars_720p.c", line 34: warning: relocation from
       function "video_hd_display_colorbars_720p" to symbol "_ths7303_setup"
       overflowed; the 32-bit relocated address 0xbffdd4f4 is too large to encode
       in the 25-bit signed PC-Relative field (type = 'R_PCR24W' (23), file =
       "./video_hd_display_colorbars_720p.obj", offset = 0x00000054, section =
       ".text")
    This could be the same issue discussed in this other thread. You might want to try updating to CGT 6.1.10 to see if these relocations disappear.

  • Ok, I did find those files, they were in another folder that is in the Zip from Spectrum Digital. However now we are gettiing a new error when we build the project.

     

    'Building target: davincihdbsl.lib'
    'Invoking: TMS470 Archiver'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/tms470/bin/ar470" -r"davincihdbsl.lib" "davincihdbsl.lib"  "./vpif_setup.obj" "./vpif_sd_bt656.obj" "./vpif_hd_bt1120.obj" "./tvp7002_setup.obj" "./tvp7002.obj" "./tvp5147_setup.obj" "./tvp5147.obj" "./ths7353_setup.obj" "./ths7353.obj" "./ths7303_setup.obj" "./ths7303.obj" "./davincihd_uart.obj" "./davincihd_psc.obj" "./davincihd_pll.obj" "./davincihd_nandflash_write.obj" "./davincihd_nandflash_read.obj" "./davincihd_nandflash_id.obj" "./davincihd_nandflash_erase.obj" "./davincihd_nandflash.obj" "./davincihd_mcasp.obj" "./davincihd_led.obj" "./davincihd_i2c_gpio.obj" "./davincihd_i2c.obj" "./davincihd_gpio.obj" "./davincihd_eeprom.obj" "./davincihd_dip.obj" "./davincihd_ddr.obj" "./davincihd_aic32_write32.obj" "./davincihd_aic32_write16.obj" "./davincihd_aic32_registers.obj" "./davincihd_aic32_read32.obj" "./davincihd_aic32_read16.obj" "./davincihd_aic32_opencodec.obj" "./davincihd_aic32_mute.obj" "./davincihd_aic32_closecodec.obj" "./davincihd.obj" "./adv7343_setup.obj" "./adv7343.obj"
      -->  error: bad option 'i'
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [davincihdbsl.lib] Error 1
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.
    Build complete for project davincihdbsl

    If you know how to fix that I am all ears :)

     

    I will describe what is goin on here for our project. We are working for a sponsor while still in college. Our entire team is EE so we do not have much coding experience and we have never done anything this in depth yet. So we may need to ask more question than seasoned professionals so if you could bear with us we would appreciate it :)

  • Richard Hall said:
    Ok, I am trying to Debug this in CCSv4. These are the DaVinci Test Files from Spectrum Digital located here http://support.spectrumdigital.com/boards/evmdm6467/revf/files/DaVinciHD_EVM_BSL_RevE.zip I have no clue what files I would need to include from the Linux DVSDK installation, but I will try to find them.

    I think these are ARM-based test files, though I may be wrong. Either way, after a quick scan of the zip file it looks like the adv7343_color_swap function is written in adv7343_setup.c file. All of these BSL source files should have been built into the davincihdbsl.lib file, so try adding this to your project and building again.

  • Must have updated my previous post as you were writing this, please look up and you will see that I got past those linker errors and have stumbled on a new error.

  • Richard,

    I do not have my board, JTAG emulator or CCS v4 handy, but the SD tests are supposed to be simple to use self contained test (no dependencies on DVSDK or anything else aside from full CCS install and what is downloaded from Spectrum Digital); what I did try just now as a sanity check is to build this in my CCS 3.3 full install environment and found it pretty straight forward.

    steps I followed:

    1) open CCS.

    2) go to project-Open and load video_hd_display_720p,pjt 

    3) go to project->build clean

    4) go to project->rebuild all

    the entire project rebuild without any errors.  It should be this simple... That said, I know CCS v4 has significant changes so I am not sure if what you are encoutering my be a tool issue; the pjt file pulls in all the necessary files and libraries for the project to build under ccs 3.3 (no need to hunt around and include libs...)

  • When doing exactly that in CCSv4 I get these error messages:

    **** Build of configuration Debug for project video_sd_display_480i ****

    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake -k all
    'Building file: ../main.c'
    'Invoking: TMS470 Compiler'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/tms470/bin/cl470" -mv5e -g --fp_mode=strict --define="_DEBUG" --define="ARM_SIDE" --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/tms470/include" --include_path="/packages/ti/xdais" --include_path=".." --include_path="C:/Program Files/Texas Instruments/ccsv4/boards/davincihd/include" --include_path="C:/Program Files/Texas Instruments/ccsv4/boards/davincihd/tests/common" --quiet -me --enum_type=unpacked --sat_reassoc=off --fp_reassoc=off --abi=ti_arm9_abi --plain_char=unsigned  --preproc_with_compile --preproc_dependency="main.pp" "../main.c"
    "../main.c", line 12: fatal error: could not open source file "davincihd.h"
    1 fatal error detected in the compilation of "../main.c".
    Compilation terminated.

    >> Compilation failure
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [main.obj] Error 1
    'Building file: ../video_sd_display_colorbars_480i.c'
    'Invoking: TMS470 Compiler'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/tms470/bin/cl470" -mv5e -g --fp_mode=strict --define="_DEBUG" --define="ARM_SIDE" --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/tms470/include" --include_path="/packages/ti/xdais" --include_path=".." --include_path="C:/Program Files/Texas Instruments/ccsv4/boards/davincihd/include" --include_path="C:/Program Files/Texas Instruments/ccsv4/boards/davincihd/tests/common" --quiet -me --enum_type=unpacked --sat_reassoc=off --fp_reassoc=off --abi=ti_arm9_abi --plain_char=unsigned  --preproc_with_compile --preproc_dependency="video_sd_display_colorbars_480i.pp" "../video_sd_display_colorbars_480i.c"
    "../video_sd_display_colorbars_480i.c", line 12: fatal error: could not open source file "tvp5147.h"
    1 fatal error detected in the compilation of "../video_sd_display_colorbars_480i.c".
    Compilation terminated.

    >> Compilation failure
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [video_sd_display_colorbars_480i.obj] Error 1
    'Building file: ../video_sd_display_fill_480i.c'
    'Invoking: TMS470 Compiler'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/tms470/bin/cl470" -mv5e -g --fp_mode=strict --define="_DEBUG" --define="ARM_SIDE" --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/tms470/include" --include_path="/packages/ti/xdais" --include_path=".." --include_path="C:/Program Files/Texas Instruments/ccsv4/boards/davincihd/include" --include_path="C:/Program Files/Texas Instruments/ccsv4/boards/davincihd/tests/common" --quiet -me --enum_type=unpacked --sat_reassoc=off --fp_reassoc=off --abi=ti_arm9_abi --plain_char=unsigned  --preproc_with_compile --preproc_dependency="video_sd_display_fill_480i.pp" "../video_sd_display_fill_480i.c"
    "../video_sd_display_fill_480i.c", line 12: fatal error: could not open source file "tvp5147.h"
    1 fatal error detected in the compilation of "../video_sd_display_fill_480i.c".
    Compilation terminated.

    >> Compilation failure
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [video_sd_display_fill_480i.obj] Error 1
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.
    Build complete for project video_sd_display_480i

    Obviously something funky is happening here, probably due to the version change.

  • I reinstalled CCSv3.3 and opened the projects provided by SD. The project loaded and built with no problems what so ever, so it appears that it is for sure a CCSv4 problem.

  • Richard,

    I am glad to hear this; I am not too familiar with CCS myself, so I was not sure what was going on with all the errors you were reporting so I was hesitant to chime-in, but after seeing strugle a bit I was thinking to myself that it should not be this hard and decided to give it a quick try with my current setup.  Anyway, CCS 3.3 should work for DM6467, although it may require some updates to CCS; but if you can connect and run the SD video tests, you should be good to go.

  • I was able to build the programs in CCsv4 after some exploration. Now what we need to know is if there is any way to get the compiled programs onto the DM6467 DVEVM and run them without using a JTAG device? If a JTAG device is absolutely necessary to run rograms written in CCSv4 on the DM6467 DVEVM which device would be needed? I have looked into the one suggested earlier as well as the USB510 with the 20 to 14 pin adapter, of those 2 which would be the better choice? Also, once we start developing programs for the DM6467 DVEVM in CCSv4, how do we need to do it? We have been creating a program using BIOS 6 and RTSC, however it appears that we should be using BIOS 5. Any help is appreciated.

  • Richard Hall said:
    Now what we need to know is if there is any way to get the compiled programs onto the DM6467 DVEVM and run them without using a JTAG device?

    For debugging purposes with CCS the only way to get the compiled programs on the board in a debuggable form is to use the JTAG interface, otherwise you could have the application boot out of flash or some other medium independently of CCS, in the case of a DM6467 you would typically have the DSP side code loaded by the ARM side which boots and runs Linux out of a flash device.

    Richard Hall said:
    If a JTAG device is absolutely necessary to run rograms written in CCSv4 on the DM6467 DVEVM which device would be needed? I have looked into the one suggested earlier as well as the USB510 with the 20 to 14 pin adapter, of those 2 which would be the better choice?

    In general any modern XDS510 or XDS560 class emulator from Spectrum Digital or BlackHawk should do just fine (there are cheaper alternatives out there but be careful to ensure the manufacturer includes proper driver support for your device, the support for all emulators is not equal), I use a BlackHawk USB560 though I usually recommend a Spectrum Digital XDS510USB for a lower cost option.

    Richard Hall said:
    Also, once we start developing programs for the DM6467 DVEVM in CCSv4, how do we need to do it? We have been creating a program using BIOS 6 and RTSC, however it appears that we should be using BIOS 5.

    In general I would suggest using the BIOS version that is being used with your particular DVSDK release, assuming you are using Linux and planning on integrating with other software structures such as Codec Engine and Codecs.

  • Bernie Thompson said:

    For debugging purposes with CCS the only way to get the compiled programs on the board in a debuggable form is to use the JTAG interface, otherwise you could have the application boot out of flash or some other medium independently of CCS, in the case of a DM6467 you would typically have the DSP side code loaded by the ARM side which boots and runs Linux out of a flash device.

    How would we use Linux to load the code to the DSP? It seems that the easiest way to run code compile in CCS would be to use the JTAG anyway.

    In general any modern XDS510 or XDS560 class emulator from Spectrum Digital or BlackHawk should do just fine (there are cheaper alternatives out there but be careful to ensure the manufacturer includes proper driver support for your device, the support for all emulators is not equal), I use a BlackHawk USB560 though I usually recommend a Spectrum Digital XDS510USB for a lower cost option.

    Would we need the Spectrum Digital USB510 with the 20 to 14 pin converter or would the standard USB510 work for us?

    In general I would suggest using the BIOS version that is being used with your particular DVSDK release, assuming you are using Linux and planning on integrating with other software structures such as Codec Engine and Codecs.


    Ok, that helps us a lot as we will be wanting to integrate with CE so we can compress RAW video data coming from an image sensor to h.264.

     

  • Basically I am asking which would be the better choice, the XDS510 USB Plus JTAG Emulator or the XDS510 USB JTAG Emulator?

  • Richard Hall said:
    How would we use Linux to load the code to the DSP? It seems that the easiest way to run code compile in CCS would be to use the JTAG anyway.

    You are certainly correct for development purposes, but when you want to move to a more stand alone production system you need to be able to load up the DSP without JTAG and CCS. To do this you would typically load the DSP up from Linux which would be done through some software structures, from a high level you would use Codec Engine, which relies on lower level communications mechanisms and software structures, primarily DSP Link. If you happen to be making an algorithm that does not fit into the xDM (VISA) types than you would use IUNIVERSAL.

    Richard Hall said:
    Would we need the Spectrum Digital USB510 with the 20 to 14 pin converter or would the standard USB510 work for us?

    Assuming you are using the DM6467 EVM than you need an emulator with a 14 pin connector, the traditional XDS510USB from SD is natively 14 pin so it will work out of the box with no adapter needed.

    Richard Hall said:
    Basically I am asking which would be the better choice, the XDS510 USB Plus JTAG Emulator or the XDS510 USB JTAG Emulator?

    I would probably go with the plain XDS510USB emulator for DSP work, as it is cheaper and I know it works and have been using them since they came out, I have never used a XDS510USB Plus emulator, looking at the feature set it only seems to add adaptive ARM clocking which would only affect ARM emulation features that you are probably not going to use (along with the option for native 20pin support that you probably don't need). For details on the differences you probably want to ask Spectrum Digital.

  • Juan Gonzales said:

    As I mentioned ARM controls the video port periherals.  Our DVSDK provides a Linux video capture driver to interfarce to VPIF on DM6467; you will need to write a corresponding Linux driver for the image sensor you are using.  You should find some reference code in the Linex Kernel tree provided with DVSDK to get you started.  Familiarize yourself with VPIF driver architecture as you will need to interface to it (look under .../ti-davinci/drivers/media/video/davinci ); you will probrably need to replace TVP portion of V4L2 (Standard for Linux video capture driver) driver with your image sensor driver code.

    [edit] I should add that you will likely want to do this on Linux Host PC, where you isntalled DVSDK (as opposed to CCS)

    Ok, we are beginning to dig into the drivers and code to make this happen. To be honest, this is a project for our college senior design and is over all of our heads seeing as we are all EEs and not programmers and have no experience in the field, only in the classroom as of now. It is a good learning experience for sure but that's why I ask you to bear with us as we are all still learning this stuff. [:)]

    If I am understanding what you said in the quoted post correctly, we would want to edit or plain delete the TVP 5146, 5147 or 7002 .c and .h files and write a new set of .c and .h files that would setup and control our image sensor. Our image sensor is an OmniVision OV5633 and with the board it is on it gives out 10 bit raw data with href and vsync signals along with the SCCB/I2C signals. We would need to pass it the commands to set it up for 1080p or 1080i through the I2C bus and then it should be set to go if I am understanding everything correctly. If we get that done we should then be able to use the image sensor in DVTB correct? Anyway, any and all help, suggestions or encouragement are certainly appreciated!! :)

  • Yes, your understanding is correct.  FYI, TVPxx driver is also controlled via I2C, so it should be easy to model your driver after it.

  • We found the XDAIS examples and are trying to build them in CCS using the provided .pjt files. I fixed the paths in the .pjt file to point to where the XDC and XDAIS installations are but we are getting this error now:


    **** Build of configuration Debug for project videnc1_copy ****

    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake -k all
    'Building file: ../videnc1_copy.c'
    'Invoking: C6000 Compiler'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6400+ -g --fp_mode=strict --define="_DEBUG" --define="xdc_target__=<ti/targets/std.h>" --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/include" --include_path="/packages/ti/xdais" --include_path="c:/CCSTUD~1.3/C6000/csl/include" --include_path="C:/testing/xdc_3_00_06/packages" --include_path="C:/testing/xdais_6_10_01/packages" --sat_reassoc=off --fp_reassoc=on --mem_model:const=data --mem_model:data=far_aggregates  --preproc_with_compile --preproc_dependency="videnc1_copy.pp" "../videnc1_copy.c"
    'Finished building: ../videnc1_copy.c'
    ' '
    'Building target: C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/lib/debug/videnc1_copy.a64P'
    'Invoking: C6000 Archiver'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/bin/ar6x" -r"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/lib/debug/videnc1_copy.a64P" "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/lib/debug/videnc1_copy.a64P"  "./videnc1_copy.obj"
      -->  error: bad option 'C'
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/lib/debug/videnc1_copy.a64P] Error 1
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.
    Build complete for project videnc1_copy

     

    Any help is appreciated.

  • Richard Hall said:

    We found the XDAIS examples and are trying to build them in CCS using the provided .pjt files. I fixed the paths in the .pjt file to point to where the XDC and XDAIS installations are but we are getting this error now:


    **** Build of configuration Debug for project videnc1_copy ****

    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake -k all
    'Building file: ../videnc1_copy.c'
    'Invoking: C6000 Compiler'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6400+ -g --fp_mode=strict --define="_DEBUG" --define="xdc_target__=<ti/targets/std.h>" --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/include" --include_path="/packages/ti/xdais" --include_path="c:/CCSTUD~1.3/C6000/csl/include" --include_path="C:/testing/xdc_3_00_06/packages" --include_path="C:/testing/xdais_6_10_01/packages" --sat_reassoc=off --fp_reassoc=on --mem_model:const=data --mem_model:data=far_aggregates  --preproc_with_compile --preproc_dependency="videnc1_copy.pp" "../videnc1_copy.c"
    'Finished building: ../videnc1_copy.c'
    ' '
    'Building target: C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/lib/debug/videnc1_copy.a64P'
    'Invoking: C6000 Archiver'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/bin/ar6x" -r"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/lib/debug/videnc1_copy.a64P" "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/lib/debug/videnc1_copy.a64P"  "./videnc1_copy.obj"
      -->  error: bad option 'C'
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c6000/lib/debug/videnc1_copy.a64P] Error 1
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.
    Build complete for project videnc1_copy

     

    Any help is appreciated.

    Does anyone know how to fix this still?

     

    Also, if we want to hook up an image sensor to the VPIF how would we find out what the i2c address of the sensor will be to be able to address it? I can't seem to find that in the dcumentation provided with the DM6467 DVEVM.