Tool/software: TI-RTOS
I've read through several threads including:
https://e2e.ti.com/support/arm/sitara_arm/f/791/p/675848/2495684?tisearch=e2e-sitesearch&keymatch=rtos%20am57%20uart%20pinmux#2495684
and
I'm using a custom board and pinmux configuration that enables UART's 3 and 5, it uses 3 by default. I can't seem to make any of my changes in the board library or driver files take effect. I've recompiled the board library by using "make board_lib_clean" and then "make board_lib". I then cleaned and recompiled my app but nothing changes.
int main(void)
{
Task_Params taskParams;
Task_Handle task;
Error_Block eb;
UART_Params params = {
UART_MODE_CALLBACK, /* readMode */
UART_MODE_CALLBACK, /* writeMode */
SemaphoreP_WAIT_FOREVER,/* readTimeout */
SemaphoreP_WAIT_FOREVER,/* writeTimeout */
uartRxCb, /* readCallback */
uartTxCb, /* writeCallback */
UART_RETURN_FULL, /* readReturnMode */
UART_DATA_TEXT, /* readDataMode */
UART_DATA_TEXT, /* writeDataMode */
UART_ECHO_ON, /* readEcho */
115200, /* baudRate */
UART_LEN_8, /* dataLength */
UART_STOP_ONE, /* stopBits */
UART_PAR_NONE /* parityType */
};
// initialize UART settings
UART_init();
uart_handle = UART_open(UART_INSTANCE, ¶ms); // UART_INSTANCE=2 (UART3)
// create UART messaging task
Error_init(&eb);
Task_Params_init(&taskParams);
taskParams.instance->name = "uartTest";
task = Task_create(uart_test, &taskParams, &eb);
if (task == NULL) {
System_printf("Task_create() failed!\n");
BIOS_exit(0);
}
/* Start BIOS */
BIOS_start();
return (0);
}
In my code snippet, the only thing that will reliably change is the settings when I change the UART_INSTANCE in the UART_open call. It uses a different configuration depending on which number I pass, but it does not reflect any changes I make when I edit the file I thought the configuration is coming from, UART_soc.c. Here are the files I've edited but no changes are being reflected when I recompile my program and debug:
C:\ti\pdk_am57xx_1_0_10\packages\ti\board\src\{board}\{board}_pinmux.c
C:\ti\pdk_am57xx_1_0_10\packages\ti\board\src\{board}\boardPadDelayInit.c
C:\ti\pdk_am57xx_1_0_10\packages\ti\board\src\{board}\include\board_cfg.h
C:\ti\pdk_am57xx_1_0_10\packages\ti\drv\uart\soc\am572x\UART_soc.c
I'm trying to just change my instance to UART5 which in the pinmux file isassigned to pins F11(rx) and G10(tx). If I change UART_INSTANCE to reflect UART5 with UART_open, it appears to open correctly but I do not get any kind of signal from the expected source. That's when I just tried to "break" it and see which files it was actually pulling the configuration from, but I've been unsuccessful to this point.
Any suggestions as to what I may be doing wrong in terms of rebuilding the board_lib or why I can't seem to see any changes would be greatly appreciated.
