For security reasons I have to boot Linux from u-boot with all output hidden (silently) until a password is entered. I've configured uBoot to do this correctly using the
CONFIG_AUTOBOOT_KEYED macro and can successfully boot silently.
The issue I am having is that when uBoot boots the Linux kernel and silent mode is enabled, it passes
console= as part of the bootargs to Linux kernel. This is fine for silent booting, but I can't seem to find a way to re-enable the console again after bootup.
I've also tried to boot normally and append
loglevel=0 to the kernal bootargs which works for silent bootup, but again I cannot re-enable the console. I've tried:
dmesg -n 4
klogd -c 4
to try to set the Kernel loglevel back to KERN_WARNING (4) without luck. These commands work properly when I boot the Kernel normally.
The best guide I've found on the matter is Silencing the boot process on blackfin.uclinux.org.
Ideally I'd like to use uBoot's silent mode where it passes
console= as part of the bootargs but still take input on the console and re-enable output when the password is entered, but I am open to other ideas if anyone can help guide me I would greatly appreciate it.