Re: [U-Boot] [PATCH v2 2/2] bootm: Move silencing of linux console to deprecated config option.

2012-01-10 Thread Mike Frysinger
On Tuesday 10 January 2012 16:36:20 Doug Anderson wrote:
 --- a/common/cmd_bootm.c
 +++ b/common/cmd_bootm.c

 +static void fixup_silent_linux(void) __attribute__ ((deprecated));

__deprecated (from linux/compiler.h)

 --- a/doc/README.silent
 +++ b/doc/README.silent

 +CONFIG_DEPRECATED_SILENT_LINUX_CONSOLE with the warning that using

s/warning/caveat/

 +the option opens you up to a buffer overrun if your linux bootargs
 +can be 256 bytes.

s/can be/are/

 +also silence the Linux console, a script like this may help you (where

the pedant in me says: s/may/might/
-mike


signature.asc
Description: This is a digitally signed message part.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v2 2/2] bootm: Move silencing of linux console to deprecated config option.

2012-01-10 Thread Doug Anderson
If you would like the old behavior of having bootm modify the bootargs
to silence the linux console when CONFIG_SILENT_CONSOLE is defined,
you now need to define the config CONFIG_DEPRECATED_SILENT_LINUX_CONSOLE.
A previous change already added this new config to all known users of
CONFIG_SILENT_CONSOLE.

Signed-off-by: Doug Anderson diand...@chromium.org
---
Changes in v2:
- Better description of CONFIG_SILENT_CONSOLE in README
- Example of how to use a script to silence Linux console in a non-
deprecated way in doc/README.silent

 README |   10 ++
 common/cmd_bootm.c |   10 +-
 doc/README.silent  |   27 +++
 3 files changed, 34 insertions(+), 13 deletions(-)

diff --git a/README b/README
index 7916777..5ba8482 100644
--- a/README
+++ b/README
@@ -605,10 +605,12 @@ The following options need to be configured:
default i/o. Serial console can be forced with
environment 'console=serial'.
 
-   When CONFIG_SILENT_CONSOLE is defined, all console
-   messages (by U-Boot and Linux!) can be silenced with
-   the silent environment variable. See
-   doc/README.silent for more information.
+   When CONFIG_SILENT_CONSOLE is defined, all U-Boot console
+   messages can be silenced with the silent environment
+   variable. Linux console messages will not be silenced
+   based on the silent environment variable unless
+   CONFIG_DEPRECATED_SILENT_LINUX_CONSOLE is defined.
+   See doc/README.silent for more information.
 
 - Console Baudrate:
CONFIG_BAUDRATE - in bps
diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index d5745b1..8d1899e 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -83,8 +83,8 @@ extern flash_info_t flash_info[]; /* info for FLASH chips */
 static int do_imls(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 #endif
 
-#ifdef CONFIG_SILENT_CONSOLE
-static void fixup_silent_linux(void);
+#ifdef CONFIG_DEPRECATED_SILENT_LINUX_CONSOLE
+static void fixup_silent_linux(void) __attribute__ ((deprecated));
 #endif
 
 static image_header_t *image_get_kernel(ulong img_addr, int verify);
@@ -673,7 +673,7 @@ int do_bootm(cmd_tbl_t *cmdtp, int flag, int argc, char * 
const argv[])
 
show_boot_progress(8);
 
-#ifdef CONFIG_SILENT_CONSOLE
+#ifdef CONFIG_DEPRECATED_SILENT_LINUX_CONSOLE
if (images.os.os == IH_OS_LINUX)
fixup_silent_linux();
 #endif
@@ -1228,7 +1228,7 @@ U_BOOT_CMD(
 /***/
 /* helper routines */
 /***/
-#ifdef CONFIG_SILENT_CONSOLE
+#ifdef CONFIG_DEPRECATED_SILENT_LINUX_CONSOLE
 static void fixup_silent_linux(void)
 {
char buf[256], *start, *end;
@@ -1259,7 +1259,7 @@ static void fixup_silent_linux(void)
setenv(bootargs, buf);
debug(after silent fix-up: %s\n, buf);
 }
-#endif /* CONFIG_SILENT_CONSOLE */
+#endif /* CONFIG_DEPRECATED_SILENT_LINUX_CONSOLE */
 
 
 /***/
diff --git a/doc/README.silent b/doc/README.silent
index a26e3df..a4b8a97 100644
--- a/doc/README.silent
+++ b/doc/README.silent
@@ -1,5 +1,5 @@
 The config option CONFIG_SILENT_CONSOLE can be used to quiet messages
-on the console.  If the option has been enabled, the output can be
+on the U-Boot console.  If the option has been enabled, the output can be
 silenced by setting the environment variable silent.  The variable
 is latched into the global data at an early stage in the boot process
 so deleting it with setenv will not take effect until the system is
@@ -15,6 +15,25 @@ The following actions are taken if silent is set at boot 
time:
suppressed automatically. Make sure to enable nulldev by
#defining CONFIG_SYS_DEVICE_NULLDEV in your board config file.
 
- - When booting a linux kernel, the bootargs are fixed up so that
-   the argument console= will be in the command line, no matter how
-   it was set in bootargs before.
+
+The config option CONFIG_SILENT_CONSOLE previously also caused u-boot
+to silence the Linux console (also based on the silent environment
+variable) by modifying the bootargs so that the argument console=
+would be in the command line no matter how it was set in bootargs
+before.  That behavior is now relegated to the config option
+CONFIG_DEPRECATED_SILENT_LINUX_CONSOLE with the warning that using
+the option opens you up to a buffer overrun if your linux bootargs
+can be 256 bytes.
+
+If you were relying on the old behavior of CONFIG_SILENT_CONSOLE to
+also silence the Linux console, a script like this may help you (where
+normal_bootargs is the old bootargs without the console= part,
+console_args is the non-silent console settings, and old_bootcmd is
+the old bootcmd):
+
+ setenv generate_bootargs 'if test -n 

Re: [U-Boot] [PATCH v2 2/2] bootm: Move silencing of linux console to deprecated config option.

2012-01-10 Thread Wolfgang Denk
Dear Doug Anderson,

In message 1326231380-30128-3-git-send-email-diand...@chromium.org you wrote:
 If you would like the old behavior of having bootm modify the bootargs
 to silence the linux console when CONFIG_SILENT_CONSOLE is defined,
 you now need to define the config CONFIG_DEPRECATED_SILENT_LINUX_CONSOLE.
 A previous change already added this new config to all known users of
 CONFIG_SILENT_CONSOLE.

This is ugly and does no good.

You know that this feature is used by many boards, and unless you can
provide a clean solution for these, you cannot declare the existing
one as deprecated.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
Just because your doctor has a name for your condition  doesn't  mean
he knows what it is.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot