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.

RTOS/TMS320C6678: TMS320C6678 TI-RTOS IBL Bootloader building problem

Part Number: TMS320C6678

Tool/software: TI-RTOS

Hi

I want to rebuild IBL boatloader for TMS320C6678 . I use last version of TI-RTOS (ti-processor-sdk-rtos-c667x-evm-04.00.00.04) on both windows(using mingw and ubuntu systems. but i got Make error on both system (below) . I found on two systems this error caused by not defining environment variable MAKEDEP  in makeeco.mk or makedefs.mk files.

what can i do to set this variable  and rebuild IBL?

Thanks

make -C ../../device/c64x/make CDEFS='-DIBL_CFG_I2C_MAP_TABLE_DATA_BUS_ADDR=0x51 -DEXCLUDE_COFF -DEXCLUDE_BIS -DEXCLUDE_NAND_GPIO -DSPI_MODE=1 -DSPI_ADDR_WIDTH=24 -DSPI_NPIN=5 -DSPI_CSEL=2 -DSPI_C2TDEL=1 -DSPI_CLKDIV=8 -DSPI_ROM=1 -DPAD_FILE_ID_1=1 -DPAD_FILE_ID_2=1 -DINIT_EXE_FILE=ibl_c66x/ibl_init.i2c.be.ccs -DEXE_FILE_1= -DEXE_FILE_2=ibl_c66x/ibl.i2c.be.ccs' device
make[5]: Entering directory `/f/ti/pdk_c667x_2_0_6/packages/ti/boot/ibl/src/device/c64x/make'
q -I -a -ele.oa -o$.da ../../../device/c64x/c64x.s
/bin/sh: q: command not found
make[5]: [c64x.da] Error 127 (ignored)
Checking command line dependencies
same
cl6x -c -k -mi200 -ml0 -ms3 -o2 -pm -pds1111 -pds827 -pds824 -pds837 -pds1037 -pds195 -pds97 -pden -pdr -mv6400+ -I../../../device/c66x -I../../../cfg/c66x -I../../../device -I../../.. -I../../../arch/c64x -I"F:/ti/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3"/include -I"F:/ti/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3"/lib -I../../../hw/plls -I../../../hw/pscs -I../../../hw/gpio -I../../../hw/ddrs/emif31 -I../../../hw/qm -I../../../hw/cpdma -I../../../hw/pa -I../../../hw/serdes -I../../../hw/nands -I../../../hw/nors -I../../../driver/eth -I../../../hw/spi -I../../../hw/uart -as -ss -DIBL_CFG_I2C_MAP_TABLE_DATA_BUS_ADDR=0x51 -DEXCLUDE_COFF -DEXCLUDE_BIS -DEXCLUDE_NAND_GPIO -DSPI_MODE=1 -DSPI_ADDR_WIDTH=24 -DSPI_NPIN=5 -DSPI_CSEL=2 -DSPI_C2TDEL=1 -DSPI_CLKDIV=8 -DSPI_ROM=1 -DPAD_FILE_ID_1=1 -DPAD_FILE_ID_2=1 -DINIT_EXE_FILE=ibl_c66x/ibl_init.i2c.be.ccs -DEXE_FILE_1= -DEXE_FILE_2=ibl_c66x/ibl.i2c.be.ccs -dTNFNAME=c66x.c ../../../device/c66x/c66x.c -eo.le.oc
/bin/sh: cl6x: command not found

  • Hi Hamidreza,

    I've forwarded this to the SW experts. Their feedback should be posted here.

    BR
    Tsvetolin Shulev
  • As indicated on the wiki are you building using MinGW environment using the instructions provided in build_instructions.txt in the IBL folder

    If you don`t have it I will attach, the instructions here:

    build_instructions.txt
    =====================================================
    C6x Bootloader Build Instructions
    =====================================================
    
    1) Supported EVM's:
        - C6678 LC EVM
        - C6670 LC EVM
        - C6474 LC EVM
        - C6474 Mezzanine EVM
        - C6472 LC EVM
        - C6457 LC EVM
        - DSK6455 EVM
        - C6657 LC EVM
        - TCI6634K2K EVM
    
    2) Supported ENDIAN
        - big
        - little
    
    3) Required toolset
        - TI CGEN compiler CGT_C6000_7.3.0
    
       Requirements for building IBL on Windows:
       For building on a Windows machine, a GNU development environment is
       required. MinGW installation is required for this. 
       MinGW project link: http://www.mingw.org/
       MinGW installer can be obtained from the following link
       http://sourceforge.net/projects/mingw/files/Automated%20MinGW%20Installer/mingw-get-inst/mingw-get-inst-20110316/mingw-get-inst-20110316.exe/download
       While installing MinGW following options have to be chosen:
        1.  MinGw Compiler Suite
            -   C Compiler
        2. MinGW Developer Toolkit 
     
    4) Build Instructions
    
        - Change directory to ibl\src\make
        - Modify the environment setup script to match the tool chain installation
          directory:
            For building in MINGW-MSYS Bash shell modify setupenvMsys.sh 
            For building in Linux Bash shell modify setupenvLnx.sh 
        - Set the environment variables:
             On a Linux Bash shell run  "source setupenvLnx.sh"
             On a MinGW-MSYS Bash shell "source setupenvMsys.sh"
        - Following are the commands for building IBL:
    
    	For TCI6634K2K Low Cost EVM:
    	
            make evm_tci6634k2k_i2c ENDIAN=little I2C_BUS_ADDR=0x51 
            Output images:
            IBL image: bin/i2crom_0x51_tci6634k2k_le.dat (CCS data format)
                     : bin/i2crom_0x51_tci6634k2k_le.bin (raw binary)
    
            make evm_tci6634k2k_i2c ENDIAN=big I2C_BUS_ADDR=0x51 
            Output images:
            IBL image: bin/i2crom_0x51_tci6634k2k_be.dat (CCS data format)
                     : bin/i2crom_0x51_tci6634k2k_be.bin (raw binary)
    
    	For C6657 Low Cost EVM:
    	
            make evm_c6657_i2c ENDIAN=little I2C_BUS_ADDR=0x51 
            Output images:
            IBL image: bin/i2crom_0x51_c6657_le.dat (CCS data format)
                     : bin/i2crom_0x51_c6657_le.bin (raw binary)
    
            make evm_c6657_i2c ENDIAN=big I2C_BUS_ADDR=0x51 
            Output images:
            IBL image: bin/i2crom_0x51_c6657_be.dat (CCS data format)
                     : bin/i2crom_0x51_c6657_be.bin (raw binary)
    
    
            For C6678 Low Cost EVM:
            
    	make evm_c6678_i2c ENDIAN=little I2C_BUS_ADDR=0x51 
            Output images:
            IBL image: bin/i2crom_0x51_c6678_le.dat (CCS data format)
                     : bin/i2crom_0x51_c6678_le.bin (raw binary)
    
    	make evm_c6678_i2c ENDIAN=big I2C_BUS_ADDR=0x51 
            Output images:
            IBL image: bin/i2crom_0x51_c6678_be.dat (CCS data format)
                     : bin/i2crom_0x51_c6678_be.bin (raw binary)
    
          
            For C6670 Low Cost EVM:
    	
            make evm_c6670_i2c ENDIAN=little I2C_BUS_ADDR=0x51 
            Output images:
            IBL image: bin/i2crom_0x51_c6670_le.dat (CCS data format)
                     : bin/i2crom_0x51_c6670_le.bin (raw binary)
    
            make evm_c6670_i2c ENDIAN=big I2C_BUS_ADDR=0x51 
            Output images:
            IBL image: bin/i2crom_0x51_c6670_be.dat (CCS data format)
                     : bin/i2crom_0x51_c6670_be.bin (raw binary)
    
    	
    
    	For C6474 LC EVM
    
    	make evm_c6474l ENDIAN=little 
            Output images:
            IBL image: bin/i2crom_0x50_c6474l_le.dat (CCS data format)
                     : bin/i2crom_0x50_c6474l_le.bin (raw binary)
    
            make evm_c6474l ENDIAN=big 
            Output images:
            IBL image: bin/i2crom_0x50_c6474l_be.dat (CCS data format)
                     : bin/i2crom_0x50_c6474l_be.bin (raw binary)
    
    	For C6474 Mezzanine EVM
    
    	make evm_c6474 ENDIAN=little 
            Output images:
            IBL image: bin/i2crom_0x50_c6474_le.dat (CCS data format)
                     : bin/i2crom_0x50_c6474_le.bin (raw binary)
    
            make evm_c6474 ENDIAN=big 
            Output images:
            IBL image: bin/i2crom_0x50_c6474_be.dat (CCS data format)
                     : bin/i2crom_0x50_c6474_be.bin (raw binary)
    
    	For C6472 LC EVM
    
    	make evm_c6472 ENDIAN=little 
            Output images:
            IBL image: bin/i2crom_0x50_c6472_le.dat (CCS data format)
                     : bin/i2crom_0x50_c6472_le.bin (raw binary)
    
            make evm_c6472 ENDIAN=big 
            Output images:
            IBL image: bin/i2crom_0x50_c6472_be.dat (CCS data format)
                     : bin/i2crom_0x50_c6472_be.bin (raw binary)
    
    	For C6457 LC EVM
    
    	make evm_c6457 ENDIAN=little 
            Output images:
            IBL image: bin/i2crom_0x50_c6457_le.dat (CCS data format)
                     : bin/i2crom_0x50_c6457_le.bin (raw binary)
    
            make evm_c6457 ENDIAN=big 
            Output images:
            IBL image: bin/i2crom_0x50_c6457_be.dat (CCS data format)
                     : bin/i2crom_0x50_c6457_be.bin (raw binary)
    
    
    	For DSK 6455 EVM
    
    	make evm_c6455 ENDIAN=little 
            Output images:
            IBL image: bin/i2crom_0x50_c6455_le.dat (CCS data format)
                     : bin/i2crom_0x50_c6455_le.bin (raw binary)
    
            make evm_c6455 ENDIAN=big 
            Output images:
            IBL image: bin/i2crom_0x50_c6455_be.dat (CCS data format)
                     : bin/i2crom_0x50_c6455_be.bin (raw binary)
    
    
    	
    
    
    		 
    
    
            
    

    you need to first setup the build environment using 

    On a Linux Bash shell run "source setupenvLnx.sh"
    On a MinGW-MSYS Bash shell "source setupenvMsys.sh"

    Before you do that modify the .sh file to indicate where you C6000 CGT compiler is installed.

    Hope this helps.

    Regards,

    Rahul