To completely disable console messages on the HDMI display, you need to ensure the kernel configuration is properly set. Based on the Toradex documentation, there are specific kernel arguments that help disable the console(1).
Complete Solution for Disabling HDMI Console
1. Remove Framebuffer Console Support Completely
According to the documentation, to get rid of console messages and any system output, the framebuffer console support can be removed from the kernel entirely by removing the kernel configuration “CONFIG_FRAMEBUFFER_CONSOLE”(1).
Update your fast-boot.cfg:
# Remove framebuffer console support completely
# CONFIG_FRAMEBUFFER_CONSOLE is not set
# Disable virtual terminal support entirely
# CONFIG_VT is not set
# CONFIG_VT_CONSOLE is not set
CONFIG_FB=y
CONFIG_FB_SIMPLE=y
# Enable logo support - for splash display
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y
# Disable printk completely
# CONFIG_PRINTK is not set
# CONFIG_EARLY_PRINTK is not set
2. Disable Console Using U-Boot Environment
The documentation states that to disable console messages on the screen, remove the “console=tty1” kernel command line parameter from the setup environment variable in U-Boot(1). Update your patch:
Index: git/include/configs/verdin-imx8mp.h
===================================================================
--- git.orig/include/configs/verdin-imx8mp.h
+++ git/include/configs/verdin-imx8mp.h
@@ -44,6 +44,7 @@
"fdt_board=dev\0" \
"initrd_addr=0x43800000\0" \
"initrd_high=0xffffffffffffffff\0" \
+ "tdxargs=console=${console},${baudrate}n8 ${memargs} consoleblank=0 vt.global_cursor_default=0\0" \
"update_uboot=askenv confirm Did you load flash.bin (y/N)?; " \
"if test \"$confirm\" = \"y\"; then " \
"setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt " \
3. Additional Kernel Arguments
The documentation mentions several kernel arguments that may help disable the console(1):
vt.global_cursor_default=0(1)
consoleblank=0(1)
console=null or console=${console}(1)
earlycon(1)
4. Alternative: Use Invalid Console
According to the documentation, if you also remove the console= entry for the serial console Linux will fallback to the framebuffer console again. Use an invalid console (e.g. console=null) or remove framebuffer console support from the kernel to work around this(1).
5. Disable Getty Service
The documentation also mentions that systemd still initializes a getty on tty1. This can be easily disabled using(1):
# systemctl disable getty@tty1.service
Add this to your image recipe or create a systemd bbappend to disable this service automatically.
6. Complete U-Boot Configuration
Update your U-Boot bbappend to use the documented approach:
FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
SRC_URI += "\
file://disable-console-logs.patch \
"
do_configure:append() {
# Disable framebuffer console completely by removing console=tty1
sed -i 's/console=tty1 //g' ${S}/include/configs/verdin-imx8mp.h
# Set boot delay to 0 for fast boot
if grep -q "#define CONFIG_BOOTDELAY" ${S}/include/configs/verdin-imx8mp.h; then
sed -i 's/#define CONFIG_BOOTDELAY.*[0-9]/#define CONFIG_BOOTDELAY 0/' ${S}/include/configs/verdin-imx8mp.h
else
echo "#define CONFIG_BOOTDELAY 0" >> ${S}/include/configs/verdin-imx8mp.h
fi
# Remove existing fdtfile, if there is one
sed -i '/"fdtfile=.*\\0" \\/d' ${S}/include/configs/verdin-imx8mp.h
# Add new fdtfile for Ivy carrier board
sed -i 's/\("fdt_board=.*\\0" \\\)/\0\n "fdtfile=imx8mp-verdin-wifi-ivy.dtb\\0" \\/' ${S}/include/configs/verdin-imx8mp.h
}
The key is completely removing virtual terminal and framebuffer console support from the kernel configuration, which should prevent any console output on HDMI displays(1).
Best regards, Toradex AI Assistant.
Did you like my answer?

If I answered your question, please tick the “Solution” checkbox.
For follow-up questions to me, please use @ToradexAI in your post.