Changing UART1 to UART2 in Linux Kernel

Added by Okan Çalış over 2 years ago

We've been working on a MityDsp-L138F board, and I can boot to Linux with NFS, with the following environment variables:

bootcmd=nfs ${serverip}:/export/rootfs/boot/uImage; bootm
bootargs=mem=32M@0xc0000000 mem=64M@0xc4000000 console=ttyS1,115200n8 root=/dev/nfs nfsroot=${serverip}:/export/mirketfs ip=${ipaddr}

We also have another custom-manufactured board that has OMAPL138 on it, but unlike MityDsp, it uses UART2 as the default console port (akin to the EVM).

I tried setting up the same Linux kernel supplied by Critical Link to this new board, but I couldn't get any console output after "Starting Kernel...". TI Wiki says this issue "is typically caused by mis-configuring the tty interface that the linux kernel uses by default for displaying the console messages", so it then occurred to me that the two boards used different UART ports.

Therefore, I tried to rebuild a kernel configured for UART2 instead of UART1, but I couldn't find any parameters in the menuconfig interface or in the .config file.

I tried to follow this thread in (I barely could) and enabled DEBUG_LL (kernel low-level debugging functions) in menuconfig. And I edited arch/arm/mach-davinci/include/mach/uncompress.h by changing "DEBUG_LL_DA8XX(mityomapl138, 1)" to "DEBUG_LL_DA8XX(mityomapl138, 2)". Since doing that, the kernel now hangs at "done, booting the kernel." instead.

What do you think I should do? Am I even on the right track?
Thanks in advance.

Replies (1)

RE: Changing UART1 to UART2 in Linux Kernel - Added by Okan Çalış over 2 years ago

Just noticed I left the bootargs as ttyS1.
Changing that to ttyS2 solved that issue.
Sorry, I wasn't expecting such a simple solution.

    Add picture from clipboard (Maximum size: 500 MB)