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.

Starterware/PROCESSOR-SDK-AM437X: Custom board library

Part Number: PROCESSOR-SDK-AM437X
Other Parts Discussed in Thread: AM4377

Tool/software: Starterware

Hello,

I try to make generate a new board library for our custom board.

We use the AM4377 soc and tested the application with the idkAM437x Evaluation kit.

First of all I tried to init some GPIO Pins, and I found this Manual:

www.ti.com/.../sprac32.pdf

Working fine, the GPIO Pins do what I expected.

But the Pins I need to use in our custom board create a short cirsuit in the idkAM437x Evaluation board. So what I want now is a new device which I can select in the CCS7 Project properties. So all hardware Pins are defined and initialized just with using this device. If I just Change the device back to idkAM437x the Evaluation board will not light up. 

I found this Manual:

processors.wiki.ti.com/.../Adding_Custom_Board_Library_Target_to_Processor_SDK_RTOS_makefiles

At first I just want a copy of the idkAm437x with the Name "AM4377_ECP5_Board". Only the Name is different, the code and all Settings are still the same.

But if I try to compile the custom board I only got Errors.

I searched for the error and found this post here:

e2e.ti.com/.../610956

As I understand, I just use the first Manual and that's it.

Is it not possible to add a device as I want?

In the attachment I added the changed board files and the Output of my compile triesCustomBoardTest.zip

Can someone tell me what I have forgotten?

Kind regards

Florian Kaiser

  • The RTOS team have been notified. They will respond here.
  • Hello,

    could someone help me with this issue?

    Kind regards

    Florian Kaiser

  • Sorry about the delay. I have escalated the request.
  • Hi,

    Sorry for the late response! I looked at your build log:

    The first error comes from compiling this source code:

    AM4377_ECP5_Board_ethernet_config.c:99:9: error: 'GPIO_DIR

    _OUTPUT' undeclared here (not in a function)

    If you search 'GPIO_DIR_OUTPUT' it is declared in CSL code <ti/csl/src/ip/gpio/V1/gpio_v2.h>. Then looked at your AM4377_ECP5_Board_ethernet_config.c, line 6: #include <ti/csl/csl_gpio.h>. So, do you have this in the include path:

    -IC:/ti/gcc-arm-none-eabi-4_9-2015q3/arm-none-eabi/include -I. -Isrc -I

    src/AM4377_ECP5_Board -Isrc/AM4377_ECP5_Board/device -Isrc/AM4377_ECP5_Board/inc

    lude -I/ti/PDK_AM~1/packages/ti/starterware/include -I/ti/PDK_AM~1/packages/ti/s

    tarterware/include/hw -I/ti/PDK_AM~1/packages/ti/starterware/board -I/ti/PDK_AM~

    1/packages/ti/starterware/device -I/ti/PDK_AM~1/packages/ti/starterware/include/

    utils -I/ti/PDK_AM~1/packages/ti/starterware/utils -I/ti/PDK_AM~1/packages/ti/st

    arterware/soc -I/ti/PDK_AM~1/packages/ti/starterware/board/am43xx -I/ti/PDK_AM~1

    /packages/ti/starterware/soc/am43xx -I/ti/PDK_AM~1/packages/ti/starterware/inclu

    de/am43xx -I/ti/PDK_AM~1/packages/ti/starterware/include/am43xx/am437x -I/ti/PDK

    _AM~1/packages/ti/starterware/include/armv7a -I/ti/PDK_AM~1/packages/ti/starterw

    are/soc/armv7a -I/ti/PDK_AM~1/packages/ti/starterware/soc/am43xx/am437x -I/ti/PD

    K_AM~1/packages -IC:/ti/edma3_lld_2_12_04_28/packages -I/ti/PDK_AM~1/packages/ti

    /csl -I/apps/apps_nonbam/inc -I/ -I/common

    Yes, it has. Then why it can't find it: open the ti/csl/csl_gpio.h. You can see:

    #elif defined (SOC_AM335x) || defined (SOC_AM437x)
    #include <ti/csl/src/ip/gpio/V1/gpio_v2.h>

    Then, in you pre-defined symbol, do you have SOC_AM437x?

    -DMAKEFILE_BUILD -Wimplicit -Wall -Wunused -Wunknown-
    pragmas -ffunction-sections -mlong-calls -fdata-sections -c -mcpu=cortex-a9 -g
    -mtune=cortex-a9 -march=armv7-a -mfpu=neon -mfloat-abi=hard -mabi=aapcs -mapcs-f
    rame -D__ARMv7 -Werror -O2 -s -DNDEBUG -DAM43XX_FAMILY_BUILD -Dam437x -DBUILDCFG
    _MOD_UART -DBUILDCFG_MOD_GPIO -DBUILDCFG_MOD_I2C -DBUILDCFG_MOD_MCSPI -DBUILDCF
    G_MOD_QSPI -DBUILDCFG_MOD_PRU_ETH -DBUILDCFG_MOD_MMCSD -DBUILDCFG_MOD_CPSW -DBU
    ILDCFG_MOD_PWMSS -DBUILDCFG_MOD_DSS -DBUILDCFG_MOD_USB -DBUILDCFG_MOD_GPMC -DBUI
    LDCFG_MOD_DCAN -DBUILDCFG_MOD_MCASP -DBUILDCFG_MOD_VPFE -DBUILDCFG_MOD_MDIO -DBU
    ILDCFG_MOD_DMTIMER -DBUILDCFG_MOD_EDMA3CC -DBUILDCFG_MOD_EDMA3TC -DBUILDCFG_MOD_
    RTC -DBUILDCFG_MOD_WDT -DBUILDCFG_MOD_ADC -DBUILDCFG_MOD_PRU_ICSS -DAM4377_ECP
    5_Board

    No, you don't have. This is the problem.

    Yous next errors came from GPIO functions like:  GPIODebounceFuncControl(). They are defined in <ti/csl/src/ip/gpio/V1/gpio_v2.h> as well. The same issue the header file is not included. You need a -DSOC_AM437x 

    Hope this explains the methods how do you debug the build error and fix it.

    Regards, Eric