How can I change u-boot console to UARTB in VF61

Hello! I need change default debug console from UARTA to UARTB in colibri F61. What I need to change?
U-boot version is 2.7 and kernel is 4.4.
I already change in u-boot:


#include "vf.dtsi"

/ {
	chosen {
		stdout-path = &uart2;

&dspi1 {
	status = "okay";
	bus-num = <1>;

	spi_cmd: sspi@0 {
		reg = <0>;
		spi-max-frequency = <50000000>;

&ehci0 {
	dr_mode = "otg";
	fsl,cdet-gpio = <&gpio3 6 GPIO_ACTIVE_HIGH>;
	status = "okay";

&ehci1 {
	dr_mode = "host";
	status = "okay";

	status = "okay";

“console=ttyLP1\0” \

and in Kernel - vf-colibri-eval-v3.dtsi:

chosen {
		stdout-path = "serial2:115200n8";

and still does’n work. What is missing?
Thx for help!

Hi @Jakub

Could you provide the exact version of the software of your module?

Did you already have a look here?

Best regards,

Hi @jaski.tx

(first, sorry for my english) I build u-boot and kernel from here, where u-boot branche is 2016.11-toradex (v2.8) and kernel branche is toradex_vf_4.4 (v2.8).
Than I build openEmbedded (oe-core) from here v2017.12 (LinuxImageV2.8). Now I need change debug console to UART_B → generate new u-boot and kernel files and replace old one.

So what is the issue?

:slight_smile: default console is on UART_A, but I need change to UART_B.
If I change (uboot) vf-colibri.dtsi, colibri_vf.h and (kernel) vf-colibri-eval-v3.dtsi (see above) and build new files → u-boot-nand.imx, zImage and vf610-colibri-eval-v3.dtb (replace on sd card and do update), console is gone. I looked in extension connector X16 to pin 27, 31 and 35, but didn’t see nothing. so I need know, what must set yet.

Thanks for this Info. Before trying to make all the changes in uboot and devicetree, did you just try to change the variable console in U-Boot to the UART_B (ttyLP1) and checked if this is working.

Currently you will need to put the module to recovery mode and reinstall the image following the instructions on this page.

Best regards,

Hi @jaski.tx
yes, If I change only file colibri_vf.h to console=ttyLP1, it works partially. First part is still on ttyLP0:

U-Boot 2016.11-dirty (Apr 24 2019 - 09:51:01 +0200)

CPU: Freescale Vybrid VF610 at 500 MHz
Reset cause: POWER ON RESET
DRAM:  256 MiB
NAND:  512 MiB
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Model: Toradex Colibri VF61 256MB IT V1.2B, Serial# 08450278
Net:   FEC
Hit any key to stop autoboot:  0 
Booting from NAND...
ubi0: default fastmap pool size: 200
ubi0: default fastmap WL pool size: 100
ubi0: attaching mtd1
ubi0: attached by fastmap
ubi0: fastmap pool size: 200
ubi0: fastmap WL pool size: 100
ubi0: attached mtd1 (name "mtd=3", size 510 MiB)
ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
ubi0: good PEBs: 4070, bad PEBs: 10, corrupted PEBs: 0
ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128
ubi0: max/mean erase counter: 2/1, WL threshold: 4096, image sequence number: 0
ubi0: available PEBs: 0, total reserved PEBs: 4070, PEBs reserved for bad PEB handling: 70
No size specified -> Using max size (4772904)
Read 4772904 bytes from volume kernel to 81000000
No size specified -> Using max size (27100)
Read 27100 bytes from volume dtb to 82000000
Kernel image @ 0x81000000 [ 0x000000 - 0x48d428 ]
## Flattened Device Tree blob at 82000000
   Booting using the fdt blob at 0x82000000
   Using Device Tree in place at 82000000, end 820099db
   Updating MTD partitions...

Starting kernel ...

and the rest is on ttyLP1, but I need to change everything to ttyLP1 including bootloader. Sorry for my communication skills, I know my English sucks :slight_smile:

Hi @Jakub

You need to apply the following changes for ttyLP1 in U-Boot. I tested this and this works fine.

diff --git a/arch/arm/dts/vf-colibri.dtsi b/arch/arm/dts/vf-colibri.dtsi
index c2f104a..6536b3c 100644
--- a/arch/arm/dts/vf-colibri.dtsi
+++ b/arch/arm/dts/vf-colibri.dtsi
@@ -7,7 +7,7 @@
 / {
        chosen {
-               stdout-path = &uart0;
+               stdout-path = &uart1;
@@ -35,3 +35,7 @@
 &uart0 {
        status = "okay";
+&uart1 {
+       status = "okay";
diff --git a/board/toradex/colibri_vf/colibri_vf.c b/board/toradex/colibri_vf/colibri_vf.c
index ee2046d..1f3f72e 100644
--- a/board/toradex/colibri_vf/colibri_vf.c
+++ b/board/toradex/colibri_vf/colibri_vf.c
@@ -388,6 +388,9 @@ static void clock_init(void)
        clrsetbits_le32(&ccm->ccgr0, CCM_REG_CTRL_MASK,
+        clrsetbits_le32(&ccm->ccgr0, CCM_REG_CTRL_MASK,
+                       CCM_CCGR0_UART1_CTRL_MASK);
        setbits_le32(&ccm->ccgr0, CCM_CCGR0_DSPI1_CTRL_MASK);
diff --git a/include/configs/colibri_vf.h b/include/configs/colibri_vf.h
index 0579bfd..19a0995 100644
--- a/include/configs/colibri_vf.h
+++ b/include/configs/colibri_vf.h
@@ -176,7 +176,7 @@
        NFS_BOOTCMD \
        SD_BOOTCMD \
        UBI_BOOTCMD \
-       "console=ttyLP0\0" \
+       "console=ttyLP1\0" \
        "defargs=user_debug=30\0" \
        "dfu_alt_info=" DFU_ALT_NAND_INFO "\0" \

Best regards,

Hi @jaski.tx,

it works! you’re the best! Thx a lot :slight_smile:
May I ask to another question? If I want do recovery on that second UART, is it possible or must be something changed? Where I get more information about recovery (how is it work?)?

Perfect that it works. Thanks for the feedback.

Could you ask a new question please? This will help us keep the topics well arranged in the community!