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.

DRA78XEVM: Building PDK

Part Number: DRA78XEVM
Other Parts Discussed in Thread: MATHLIB, OMAPL138

I am trying to build the PDK according to the wiki   https://processors.wiki.ti.com/index.php/PDK/PDK_TDA_Building_The_Package

But I am getting errors

ay36742@WS313793 MINGW32 /c/TI/pdk_dra7xx_1_0_10/packages/ti/build
$ gmake -s allcores BOARD=tda3xx-evm
process_begin: CreateProcess(NULL, c:/ti/ccs910/utils/cygwin/echo ------------------------------------------------------, ...) failed.
make (e=2): The system cannot find the file specified.
gmake[1]: *** [version] Error 2
......
make (e=2): The system cannot find the file specified.
gmake[1]: *** [version] Error 2
process_begin: CreateProcess(NULL, c:/ti/ccs910/utils/cygwin/echo ------------------------------------------------------, ...) failed.
make (e=2): The system cannot find the file specified.
gmake[1]: *** [version] Error 2
process_begin: CreateProcess(NULL, c:/ti/ccs910/utils/cygwin/echo ------------------------------------------------------, ...) failed.
make (e=2): The system cannot find the file specified.
gmake[1]: *** [version] Error 2
gmake: *** [allcores] Error 2

I do not have folder cygwin in path:   c:/ti/ccs910/utils/cygwin/

What alternative I can use ?

  • Hi Hatem,

    What is your end application goal?  There are two flavors of PDK available:

    1. Provided with Processor SDK for Vision/Radar applications: http://www.ti.com/tool/PROCESSOR-SDK-TDAX
    2. Provided with Processor SDK RTOS Automotive from http://www.ti.com/tool/PROCESSOR-SDK-DRA7X => PROCESSOR-SDK-RTOS-AUTOMOTIVE.

    These packages support builds differently.  It seems you have taken the package from #2 but you are following the build steps for #1.  I suggest you either pick the right package #1 or else follow build steps for #2.  See http://software-dl.ti.com/processor-sdk-rtos/esd/docs/04_03_00_05/rtos/Overview.html#rebuilding-components => Rebuild PDK.

  • Thanks for the help.

    My custom board is based on DRA78x

    I need to boot my custom board from SD Card, 

    Can I do this from 2, which documents can help me ?

    my application code does NOT use Vision_SDK.

    I found SBL in 1, this is where I got confused.

    Please help

  • Hi Hasem,

    You should be able to do everything from #2.  Here are a few links to help:

    • In general, software development guide is where to go: http://software-dl.ti.com/processor-sdk-rtos/esd/docs/04_03_00_05/rtos/index.html
      • For general details on rebuilding PDK, using the link above: Rebuild PDK. This will enable you to rebuild SBL with default set of options.  This should be sufficient to enable you for initial board bringup.
      • Depending on what other PDK components used, there may or may not be reason to rebuild those components as well.  If you are using SBL only from PDK, you shouldn't need to rebuild other components.

    • SBL user guide under pdk/packages/ti/boot/sbl_auto/docs/SBL_UserGuide.pdf will give detailed information, including how to rebuild with various additional options.

    Please let me know if you face issues with the build.  For any other issues with running the application, please start another thread.

    -Stephen

  • Stephen Molfetta said:

    Hi Hasem,

    You should be able to do everything from #2.  Here are a few links to help:

    • In general, software development guide is where to go: http://software-dl.ti.com/processor-sdk-rtos/esd/docs/04_03_00_05/rtos/index.html
      • For general details on rebuilding PDK, using the link above: Rebuild PDK. This will enable you to rebuild SBL with default set of options.  This should be sufficient to enable you for initial board bringup.
      • Depending on what other PDK components used, there may or may not be reason to rebuild those components as well.  If you are using SBL only from PDK, you shouldn't need to rebuild other components.

    • SBL user guide under pdk/packages/ti/boot/sbl_auto/docs/SBL_UserGuide.pdf will give detailed information, including how to rebuild with various additional options.

    Please let me know if you face issues with the build.  For any other issues with running the application, please start another thread.

    -Stephen

    Thank you.

    That was very helpful.

    I tried to build the PDK, but I got these errors:

    C:/ti/ti-cgt-c6000_8.2.2/bin/ar6x rq /TI/PDK_DR~1/packages/ti/osal/lib/nonos/c66/release/ti.osal.ae66 /TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_nonos_indp/obj/c66/release/HwiP_nonos.oe66 /TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_nonos_indp/obj/c66/release/Utils_nonos.oe66 /TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_nonos_indp/obj/c66/release/SemaphoreP_nonos.oe66 /TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_nonos_indp/obj/c66/release/RegisterIntr_nonos.oe66 /TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_nonos_indp/obj/c66/release/CacheP_nonos.oe66 /TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_nonos_indp/obj/c66/release/Arch_util.oe66 /TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_nonos_indp/obj/c66/release/EventCombinerP_nonos.oe66
    gmake[5]: Leaving directory `C:/TI/PDK_DR~1/packages/ti/osal'
    gmake -C /TI/PDK_DR~1/packages/ti/osal -f build/makefile_tirtos.mk
    gmake[5]: Entering directory `C:/TI/PDK_DR~1/packages/ti/osal'
    C:/ti/xdctools_3_50_03_33_core/bin/mkdir -p /TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_tirtos/obj/dra78x/c66/release
    C:/ti/xdctools_3_50_03_33_core/bin/mkdir -p /TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_tirtos/obj/dra78x/c66/release/.deps
    # Compiling dra78x:c66x:release:osal_tirtos: src/tirtos/SemaphoreP_tirtos.c
    C:/ti/ti-cgt-c6000_8.2.2/bin/cl6x -ppd=/TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_tirtos/obj/dra78x/c66/release/.deps/SemaphoreP_tirtos.P -DMAKEFILE_BUILD -mv6600 --abi=eabi -q -mi10 -mo -pden -pds=238 -pds=880 -pds1110 --program_level_compile -g --endian=little -eo.oe66 -ea.se66 --emit_warnings_as_errors -o3 --optimize_with_debug -DSOC_DRA78x -Dxdc_target_types__=ti/targets/elf/std.h -IC:/ti/ti-cgt-c6000_8.2.2/include -I. -Isrc/tirtos -Isrc/tirtos/muxintcp/v1 -IC:/ti/xdctools_3_50_03_33_core/packages -I/TI/PDK_DR~1/packages -IC:/ti/bios_6_52_00_12/packages -fr=/TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_tirtos/obj/dra78x/c66/release -fs=/TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_tirtos/obj/dra78x/c66/release -fc src/tirtos/SemaphoreP_tirtos.c
    "C:/ti/xdctools_3_50_03_33_core/packages/xdc/std.h", line 81: fatal error #1965: cannot open source file "ti/targets/elf/std.h"
    1 catastrophic error detected in the compilation of "src/tirtos/SemaphoreP_tirtos.c".
    Compilation terminated.

    >> Compilation failure
    gmake[5]: *** [/TI/PDK_DR~1/packages/ti/binary/ti/osal/osal_tirtos/obj/dra78x/c66/release/SemaphoreP_tirtos.oe66] Error 1
    gmake[5]: Leaving directory `C:/TI/PDK_DR~1/packages/ti/osal'
    gmake[4]: *** [osal_tirtos] Error 2
    gmake[4]: Leaving directory `C:/TI/pdk_dra7xx_1_0_10/packages/ti/osal'
    gmake[3]: *** [little_lib] Error 2
    gmake[3]: Leaving directory `C:/TI/pdk_dra7xx_1_0_10/packages/ti/osal'
    gmake[2]: *** [c66x_lib] Error 2
    gmake[2]: Leaving directory `C:/TI/pdk_dra7xx_1_0_10/packages/ti/osal'
    gmake[1]: *** [dra78x_lib] Error 2
    gmake[1]: Leaving directory `C:/TI/pdk_dra7xx_1_0_10/packages/ti/osal'
    gmake: *** [osal] Error 2

    C:\TI\pdk_dra7xx_1_0_10\packages>

    Please help .

  • I am still waiting for an answer.

    Please help

  • Please help.

    I can not progress further.

    I am waiting for your reply

  • Hi Hatem,

    This build should succeed with a normal installation and standard build steps.  Can you please confirm:

    • You ran pdksetupenv.bat prior to build?
    • What is the make command you used?

    Assuming this is correct, I can't understand what else may causing the failure on your end other than some installation-related issue.  Can you confirm:

    • Do you have bios_6_52_00_12 installed under C:/ti/
    • If so, does the package have missing files?  Can you confirm that packages/ti/targets/elf/std.h exists?
    • If it exists, are you able to open the file, modify, and save? (to rule out permissions/security issue)

    -Stephen

  • Thanks Stephen

    Yes I ran  pdksetupenv.bat prior to build

    C:\TI\pdk_dra7xx_1_0_10\packages>pdksetupenv.bat
    **************************************************************************
    Environment Configuration:
    LIMIT_SOCS : dra72x dra75x dra78x
    LIMIT_BOARDS : evmDRA72x evmDRA75x evmDRA78x
    PDK_INSTALL_PATH : C:/TI/pdk_dra7xx_1_0_10
    IMGLIB_INSTALL_PATH : C:/ti/imglib_c66x_3_1_1_0
    DSPLIB_INSTALL_PATH : C:/ti/dsplib_c66x_3_4_0_0
    MATHLIB_INSTALL_PATH : C:/ti/mathlib_c66x_3_1_1_0
    XDC_INSTALL_PATH : C:/ti/xdctools_3_50_03_33_core

    C:\TI\pdk_dra7xx_1_0_10\packages>gmake all

     

    BIOS is  C:\TI\bios_6_76_01_12

    std.h  exits here   C:\TI\bios_6_76_01_12\packages\ti\targets\elf

    I can open, change it and save it.

     

    Please note the BIOS I have is different from the one you asked.

     

  • Hatem,

    For this version of the SDK, BIOS 6_52_00_12 is the supported version.  See https://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_Automotive_Release_Notes#Component_Version for full details.  I recommend that you use this version instead of upgrading.

    If you absolutely must upgrade the BIOS version, you can update pdk/packages/ti/build/Rules.make to point to this new version.  Otherwise, the build system is going to be looking for the version supported by the SDK.

    Some note about BIOS version:

    -Stephen

  • I will stick to the recommended version. So I will install    BIOS 6_52_00_12

    But I need to understand the packages required  this is part of  my Rules.make  in   C:\TI\pdk_dra7xx_1_0_10\packages\ti\build

    ################################################################################
    # Configure toolchain paths
    ################################################################################
    ifeq ($(BOARD),$(filter $(BOARD), $(BOARD_LIST_J6_TDA)))
    # This section applies to J6 TDA SOCs in Processor SDK VISION release.
    # For remaining SOC/BOARDS skip to the else part.
    # SoC & Version of PDK for TDA builds
    PDK_SOC=
    PDK_VERSION=01_10_03_07

    #Tool versions for TDA builds
    GCC_CROSS_TOOL_PREFIX=arm-none-eabi-
    GCC_CROSS_TOOL_TAG=4_9-2015q3
    CGT_VERSION=7.4.2
    GCC_VERSION_FPULIB=4.9.3
    CGT_ARM_VERSION=16.9.2.LTS
    CGT_ARP32_VERSION=1.0.7

    #Component versions for TDA builds
    BIOS_VERSION=6_46_04_53
    EDMA_VERSION=02_12_00_20
    XDC_VERSION=3_32_01_22_core
    MSHIELD_VERSION=4_5_3
    export mmwavelink_version=mmwave_dfp_01_00_00_01

    export GCC_FLOAT_PATH ?= FPU
    else
    # This section applies to all broader set of boards with SOCs beyond TDA class
    # in Processor SDK RTOS release

    #Tool versions for non-TDA builds
    GCC_CROSS_TOOL_PREFIX=arm-none-eabi-
    GCC_CROSS_TOOL_TAG=6-2017-q1-update
    CGT_VERSION=8.2.2
    GCC_VERSION_HARDLIB=6.3.1
    CGT_ARM_VERSION=16.9.3.LTS
    CGT_ARP32_VERSION=1.0.8
    CG_XML_VERSION=2_41_00

    #Component versions for non-TDA builds
    BIOS_VERSION=6_52_00_12
    EDMA_VERSION=2_12_05_30C
    XDC_VERSION=3_50_03_33_core
    MSHIELD_VERSION=4_5_3
    CGT_PRU_VERSION=2.2.1
    #Hardcode IPC version if it is not set already
    IPC_VERSION ?= 3_47_01_00
    NDK_VERSION=2_26_00_08
    UIA_VERSION=2_21_02_07

    # C674x DSP libraries sould be used for OMAPL13x platform
    ifeq ($(SOC),$(filter $(SOC), omapl137 omapl138))
    DSPLIB_VERSION ?= c674x_3_4_0_0
    IMGLIB_VERSION ?= c674x_3_1_1_0
    MATHLIB_VERSION ?= c674x_3_1_1_0
    else
    DSPLIB_VERSION ?= c66x_3_4_0_0
    IMGLIB_VERSION ?= c66x_3_1_1_0
    MATHLIB_VERSION ?= c66x_3_1_1_0
    endif

    export GCC_FLOAT_PATH ?= HARD
    endif

    The highlighted above do not match the output of the   C:\TI\pdk_dra7xx_1_0_10\packages>pdksetupenv.bat    I showed you above .

    Please explain

  • Hatem,

    What you have highlighted is under the condition

    ifeq ($(BOARD),$(filter $(BOARD), $(BOARD_LIST_J6_TDA)))
    # This section applies to J6 TDA SOCs in Processor SDK VISION release.

    Please follow the else condition

    else
    # This section applies to all broader set of boards with SOCs beyond TDA class
    # in Processor SDK RTOS release

    This will have tool versions which match the release notes.

    -Stephen

  • Thanks.

    When I run    C:\TI\pdk_dra7xx_1_0_10\packages>pdksetupenv.bat

    I get 

    **************************************************************************
    Environment Configuration:
    LIMIT_SOCS : dra72x dra75x dra78x
    LIMIT_BOARDS : evmDRA72x evmDRA75x evmDRA78x
    PDK_INSTALL_PATH : C:/TI/pdk_dra7xx_1_0_10
    IMGLIB_INSTALL_PATH : C:/ti/imglib_c66x_3_1_1_0
    DSPLIB_INSTALL_PATH : C:/ti/dsplib_c66x_3_4_0_0
    MATHLIB_INSTALL_PATH : C:/ti/mathlib_c66x_3_1_1_0
    XDC_INSTALL_PATH : C:/ti/xdctools_3_50_03_33_core

    C:\TI\pdk_dra7xx_1_0_10\packages>

    But the Wiki says


    C:\ti\pdk_[soc]_[version]\packages> pdksetupenv.bat Optional parameter not configured : CG_XML_BIN_INSTALL_PATH REQUIRED for xdc release build Example: set CG_XML_BIN_INSTALL_PATH=C:/ti/cg_xml/bin Optional parameter not configured : DOXYGEN_INSTALL_PATH REQUIRED for xdc release build Example: set DOXYGEN_INSTALL_PATH=C:/ti/Doxygen/doxygen/1.5.1-p1/bin ************************************************************************** Environment Configuration: PDK Directory  : /ti/PDK_AM~3/packages/ CGTOOL INSTALL Directory  : C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_[version] TOOLCHAIN A15 Directory  : C:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-[version] TOOLCHAIN A8 Directory  : C:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-[version] TOOLCHAIN A9 Directory  : C:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-[version] TOOLCHAIN M4 Directory  : C:/ti/ccsv6/tools/compiler/ti-cgt-arm_[version] FPULIB_PATH  : C:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-[version]/lib/gcc/arm-none-eabi/[version]/fpu CROSS_TOOL_PRFX  : arm-none-eabi- XDC_INSTALL_PATH  : C:/ti/xdctools_[version]_core BIOS_INSTALL_PATH  : C:/ti/bios_[version] IPC_INSTALL_PATH  : C:/ti/ipc_[version] EDMA3LLD_BIOS6_INSTALLDIR : C:/ti/edma3_lld_[version] NDK_INSTALL_PATH  : C:/ti/ndk_[version] IMGLIB_INSTALL_PATH  : C:/ti/imglib_c66x_[version] UIA_INSTALL_PATH  : C:/ti/uia_[version] ************************************************************************** Changing to short name to support directory names containing spaces current directory: /ti/PDK_AM~3/packages/ PDK BUILD ENVIRONMENT CONFIGURED **************************************************************************

    Why I do not get all these ?
  • Hi Hatem,

    The wiki shows output from a previous release.  In the release you are using, many of the additional tools are implied through Rules.make, so they do not get set explicitly and printed out from the top-level environment script.

    -Stephen

  • Hello Stephen

    I tried to build the PDK, I ran

    pdksetupenv.bat

    **************************************************************************
    Environment Configuration:
    LIMIT_SOCS : dra72x dra75x dra78x
    LIMIT_BOARDS : evmDRA72x evmDRA75x evmDRA78x
    PDK_INSTALL_PATH : /TI/PDK_DR~1/packages
    IMGLIB_INSTALL_PATH : C:/ti/imglib_c66x_3_1_1_0
    DSPLIB_INSTALL_PATH : C:/ti/dsplib_c66x_3_4_0_0
    MATHLIB_INSTALL_PATH : C:/ti/mathlib_c66x_3_1_1_0
    XDC_INSTALL_PATH : C:/ti/xdctools_3_50_03_33_core

    This is used gmake
    C:\TI\PROCESSOR_SDK_VISION_03_07_00_00\ti_components\os_tools\windows\xdctools_3_32_01_22_core\gmake.exe

    Then I ran

    gmake -s all

    But I am getting errors:

    Nothing to be done for dra75x a15_0 csl_intc
    Nothing to be done for dra75x ipu1_0 csl_init
    Nothing to be done for dra75x ipu1_0 csl_intc
    Nothing to be done for dra75x c66x csl_init
    Nothing to be done for dra75x arp32_1 csl_init
    Nothing to be done for dra75x arp32_1 csl_intc
    Nothing to be done for dra72x a15_0 csl_intc
    Nothing to be done for dra72x ipu1_0 csl_init
    Nothing to be done for dra72x ipu1_0 csl_intc
    Nothing to be done for dra72x c66x csl_init
    Nothing to be done for dra78x csl_init
    Nothing to be done for dra78x ipu1_0 csl_intc
    Nothing to be done for dra78x csl_init
    Nothing to be done for dra78x csl_init
    Nothing to be done for dra78x arp32_1 csl_intc
    # Compiling evmDRA72x:dra72x:a15_0:release:csl_uart_test_app: main.c
    In file included from main.c:48:0:
    main.c: In function 'padConfig_prcmEnable':
    main.c:204:48: error: 'CTRL_CORE_PAD_IO_SPI1_SCLK' undeclared (first use in this function)
    HW_WR_REG32(SOC_CORE_PAD_IO_REGISTERS_BASE+CTRL_CORE_PAD_IO_SPI1_SCLK,0x00040001);
    ^
    /TI/PDK_DR~1/packages/ti/csl/hw_types.h:88:34: note: in definition of macro 'HW_WR_REG32'
    (HW_WR_REG32_RAW((uint32_t) (addr), (uint32_t) (value)))
    ^~~~
    main.c:204:48: note: each undeclared identifier is reported only once for each function it appears in
    HW_WR_REG32(SOC_CORE_PAD_IO_REGISTERS_BASE+CTRL_CORE_PAD_IO_SPI1_SCLK,0x00040001);
    ^
    /TI/PDK_DR~1/packages/ti/csl/hw_types.h:88:34: note: in definition of macro 'HW_WR_REG32'
    (HW_WR_REG32_RAW((uint32_t) (addr), (uint32_t) (value)))
    ^~~~
    main.c:205:48: error: 'CTRL_CORE_PAD_IO_SPI1_CS0' undeclared (first use in this function)
    HW_WR_REG32(SOC_CORE_PAD_IO_REGISTERS_BASE+CTRL_CORE_PAD_IO_SPI1_CS0,0x00000001);
    ^
    /TI/PDK_DR~1/packages/ti/csl/hw_types.h:88:34: note: in definition of macro 'HW_WR_REG32'
    (HW_WR_REG32_RAW((uint32_t) (addr), (uint32_t) (value)))
    ^~~~
    gmake[5]: *** [/TI/PDK_DR~1/packages/ti/binary/csl_uart_test_app/obj/evmDRA72x/a15_0/release/main.oa15fg] Error 1
    gmake[4]: *** [a15_0] Error 2
    gmake[3]: *** [csl_uart_test_app] Error 2
    gmake[2]: *** [a15_0_app] Error 2
    gmake[1]: *** [evmDRA72x_app] Error 2
    gmake: *** [csl] Error 2
    C:\TI\pdk_dra7xx_1_0_10\packages>

    Any ideas, please.

  • Hatem,

    I cannot reproduce this.

    I'm looking at the source file generating your error, the line numbers do not match with the released source code.  I assume you have local modifications which are the root cause of the error.  Please revert the changes and the build should succeed.  

    -Stephen

  • Thank you.

    I reinstalled the SDK and the build was successful.