[U-Boot-Users] silent console, nulldev and CONFIG_AUTOBOOT_KEYED

Dave Ellis DGE at sixnetio.com
Thu Jun 30 00:24:40 CEST 2005

Ladislav Michl wrote:
> If "silent" env variable is set GD_FLG_SILENT is added to gd->flags
> (in console_init_f). That effectively causes all console output to be
> suppresed. That flag also causes nulldev to become outputdev
> (in console_init_r). Btw, shouldn't CONFIG_SILENT_CONSOLE depend on
> CFG_DEVICE_NULLDEV in this case?

The current implementation of CONFIG_SILENT_CONSOLE needs
CFG_DEVICE_NULLDEV. I suppose a check could be added to 
flag the error at build time if CFG_DEVICE_NULLDEV is not 

> Now we are entering into abortboot
> (CONFIG_AUTOBOOT_KEYED) and because "silent" env variable is set and
> also CONFIG_SILENT_CONSOLE defined console_assign (stdout, "serial");
> called, doing basicaly nothing, because GD_FLG_SILENT which is still
> set prevents any console output.

In abortboot the "silent" operation is suspended by setting
the console back to serial so you can use the console to 
abort the boot. If the boot is aborted GD_FLG_SILENT is 
cleared, and the serial console works. If the boot is not 
aborted the console is set back to "nulldev" and the boot 
continues silently.

> There are various solutions from this situation, but I'd like first
> understand what is CFG_DEVICE_NULLDEV good for when we have
> Or better, how should all these three things in question behave?

You can boot silently (if "silent" is set), you can 
decide to see the output (by removing "silent" from the 
environment) and in either case if you abort the boot 
the console works. Isn't that exactly what the feature 
should do?

Dave Ellis

SIXNET - "Leading the Industrial Ethernet Revolution"
331 Ushers Road,   P.O. Box 767, Clifton Park, NY 12065 USA
Tel +1 (518) 877-5173   Fax +1 (518) 877-8346
Email me at: dge at sixnetio.com 
Detailed product info: www.sixnetio.com 

More information about the U-Boot mailing list