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.

AMIC110: Moving from ice110 with profinet example to custom board

Part Number: AMIC110
Other Parts Discussed in Thread: SYSCONFIG, SYSBIOS

Hi,

currently I'm struggling with the Hardware Configuration of our custom board.

What I archived so far:

- EMIF external RAM configuration

- Pinmux setting files created with sysconfig -> amic110_pinmux_data.c

At first I started with a SYS/BIOS - Typical Project from scratch. I've edited the *.cfg file mainly copying the content of the profinet example cfg into it.

To prevent using the wrong pinmux config I uncommented the board include with xdc tools:

/* Load the board package */
// var Board = xdc.loadPackage('ti.board');
// Board.Settings.boardName = "iceAMIC110";

copying manually the files from \ti\pdk_am335x_1_0_17\packages\ti\board\src\iceAMIC110 into the project, edited the files the way I can use the generated "amic110_pinmux_data.c"

Some Includefiles failed to find, so I included following Include Paths:

C:\ti\pdk_am335x_1_0_17\packages\ti\starterware\include
C:\ti\pdk_am335x_1_0_17\packages\ti\starterware\include\am335x
C:\ti\pdk_am335x_1_0_17\packages\ti\starterware\include\hw
C:\ti\pdk_am335x_1_0_17\packages\ti\starterware\include\utils

Anyhow, when I try to apply the pinmux config as the SDK says:

/* Setting up for pinmux and uart */
    Board_initCfg boardCfg = BOARD_INIT_MODULE_CLOCK | BOARD_INIT_PINMUX_CONFIG;
    Board_STATUS ret = Board_init(boardCfg);



I'm getting always linking errors:
C:\ti\pdk_am335x_1_0_17\packages\ti\drv\gpio\lib\am335x\a8\release\ti.drv.gpio.aa8fg(GPIO_v1.oa8fg): In function `GPIO_toggle_v1':
GPIO_v1.c:(.text.GPIO_toggle_v1+0x1c): undefined reference to `GPIO_v1_config'
GPIO_v1.c:(.text.GPIO_toggle_v1+0x24): undefined reference to `GPIO_v1_config'
C:\ti\pdk_am335x_1_0_17\packages\ti\drv\gpio\lib\am335x\a8\release\ti.drv.gpio.aa8fg(GPIO_v1.oa8fg): In function `GPIO_setCallback_v1':
GPIO_v1.c:(.text.GPIO_setCallback_v1+0xc): undefined reference to `GPIO_v1_config'
GPIO_v1.c:(.text.GPIO_setCallback_v1+0x10): undefined reference to `GPIO_v1_config'
C:\ti\pdk_am335x_1_0_17\packages\ti\drv\gpio\lib\am335x\a8\release\ti.drv.gpio.aa8fg(GPIO_v1.oa8fg): In function `GPIO_write_v1':
GPIO_v1.c:(.text.GPIO_write_v1+0x1c): undefined reference to `GPIO_v1_config'
C:\ti\pdk_am335x_1_0_17\packages\ti\drv\gpio\lib\am335x\a8\release\ti.drv.gpio.aa8fg(GPIO_v1.oa8fg):GPIO_v1.c:(.text.GPIO_write_v1+0x28): more undefined references to `GPIO_v1_config' follow
C:\ti\pdk_am335x_1_0_17\packages\ti\drv\uart\lib\a8\release\ti.drv.uart.aa8fg(UART_drv.oa8fg): In function `UART_init':
UART_drv.c:(.text.UART_init+0x20): undefined reference to `UART_config'
UART_drv.c:(.text.UART_init+0x24): undefined reference to `UART_config'
C:\ti\pdk_am335x_1_0_17\packages\ti\drv\uart\lib\a8\release\ti.drv.uart.aa8fg(UART_drv.oa8fg): In function `UART_open':
UART_drv.c:(.text.UART_open+0x4): undefined reference to `UART_config'
UART_drv.c:(.text.UART_open+0xc): undefined reference to `UART_config'

TI RTOS or kn/sysbios is compiling whitout  the board package.

Isn't there a step by step manual how to move to a custom board?

The example is running, but beyond, it's mostly dark and painfull.