Other Parts Discussed in Thread: SYSBIOS
Hello,
I got the TMDX654IDKEVM. I want to run a baremetal application on the ARM Cortex-A53 (Compute Cluster) of the processor on the board.
I found the Processor Development Kit () and was able to integrate libraries and headers into my project.
The code I have is the following:
#define SOC_AM65XX //#define NON_JTAG_BOOT #include <stdio.h> #include "board/board.h" #include "am65xx_idk/include/board_cfg.h" #include "drv/uart/soc/UART_soc.h" #include "drv/uart/UART.h" /** * main.c */ int main(void) { printf("Starting driver test!\n"); /**************************************************************************/ /* INIT BOARD */ Board_initCfg boardCfg; boardCfg = #ifdef NON_JTAG_BOOT BOARD_INIT_MODULE_CLOCK | BOARD_INIT_PINMUX_CONFIG | #endif BOARD_INIT_UART_STDIO; Board_STATUS status = 0; printf("Initializing Board...\n"); status = Board_init(boardCfg); if(status != BOARD_SOK) { printf("!BOARD_SOK. Exiting.\n"); return 1; } printf("BOARD_SOK\n"); /**************************************************************************/ /* INIT UART*/ UART_HwAttrs uart_cfg = {0}; UART_socGetInitCfg(0, &uart_cfg); UART_socSetInitCfg(0, &uart_cfg); UART_init(); /**************************************************************************/ /* USE UART */ UART_Handle handle; UART_Params params; UART_Params_init(¶ms); params.baudRate = 115200; handle = UART_open(0, ¶ms); if (!handle) { printf("UART did not open...\n"); } int cnt = 20; for(int i = 0; i < cnt; i++) { const unsigned char hello[] = "Hello World\n"; int ret = UART_write(handle, hello, sizeof(hello)); printf("[%d] The UART wrote %d bytes\n", i+1, ret); } /**************************************************************************/ printf("Done driver test!\n"); return 0; }
The project strucute looks like this:
where the file linker_a53.lds file is from the PDK
- <PDK INSTALL PATH>/packages/ti/build/am65xx/linker_a53.lds
The drivers and other abstraction layers, which were needed to build the project successfully were here:
- C:\ti\pdk_am65xx_08_02_00_21\packages\ti
- C:\ti\pdk_am65xx_08_02_00_21\packages\ti\drv
- C:\ti\pdk_am65xx_08_02_00_21\packages\ti\drv\uartC:\ti\pdk_am65xx_08_02_00_21\packages\ti\drv\uart
So these sites did help but did not solve my problem(s).