[U-Boot] CONFIG_SILENT_CONSOLE not working with NAND env

common/console.c has this function:
/* Called before relocation - use serial functions */ int console_init_f(void) { gd->have_console = 1;
#ifdef CONFIG_SILENT_CONSOLE if (getenv("silent") != NULL) gd->flags |= GD_FLG_SILENT; #endif
return 0; }
I have defined CONFIG_SILENT_CONSOLE and set "silent" in my NAND env, but the SILENT flag doesn't get set.
I suspect this function is called way too early for NAND env to be available.
I can set the flag unconditionally and that works fine, but I don't think that that will make a patch worthy of submission...?
Any thoughts?
Thanks, Nick.

On Tue, Apr 5, 2011 at 10:07 AM, Nick Thompson wrote:
common/console.c has this function:
/* Called before relocation - use serial functions */ int console_init_f(void) { gd->have_console = 1;
#ifdef CONFIG_SILENT_CONSOLE if (getenv("silent") != NULL) gd->flags |= GD_FLG_SILENT; #endif
return 0; }
I have defined CONFIG_SILENT_CONSOLE and set "silent" in my NAND env, but the SILENT flag doesn't get set.
I suspect this function is called way too early for NAND env to be available.
NAND isnt the only one with this problem (SPI does too last i looked). during early boot, you only have the default env available. so if you want silent console, i'd suggest you enable that in your default env. -mike

On 05/04/11 16:52, Mike Frysinger wrote:
On Tue, Apr 5, 2011 at 10:07 AM, Nick Thompson wrote:
common/console.c has this function:
/* Called before relocation - use serial functions */ int console_init_f(void) { gd->have_console = 1;
#ifdef CONFIG_SILENT_CONSOLE if (getenv("silent") != NULL) gd->flags |= GD_FLG_SILENT; #endif
return 0;
}
I have defined CONFIG_SILENT_CONSOLE and set "silent" in my NAND env, but the SILENT flag doesn't get set.
I suspect this function is called way too early for NAND env to be available.
NAND isnt the only one with this problem (SPI does too last i looked). during early boot, you only have the default env available. so if you want silent console, i'd suggest you enable that in your default env. -mike
Yes, that's what I intend to do, I think, though I'd have liked it to be configurable at run time.
Thanks for the info, Nick.

On Tue, 5 Apr 2011 17:07:13 +0100 Nick Thompson nick.thompson@ge.com wrote:
On 05/04/11 16:52, Mike Frysinger wrote:
On Tue, Apr 5, 2011 at 10:07 AM, Nick Thompson wrote:
common/console.c has this function:
/* Called before relocation - use serial functions */ int console_init_f(void) { gd->have_console = 1;
#ifdef CONFIG_SILENT_CONSOLE if (getenv("silent") != NULL) gd->flags |= GD_FLG_SILENT; #endif
return 0;
}
I have defined CONFIG_SILENT_CONSOLE and set "silent" in my NAND env, but the SILENT flag doesn't get set.
I suspect this function is called way too early for NAND env to be available.
NAND isnt the only one with this problem (SPI does too last i looked). during early boot, you only have the default env available. so if you want silent console, i'd suggest you enable that in your default env. -mike
Yes, that's what I intend to do, I think, though I'd have liked it to be configurable at run time.
Try enabling CONFIG_NAND_ENV_DST to have the environment be loaded by the SPL along with the main U-Boot image. You didn't say what board/chip you're using, so if you're using something other than the common nand_boot.c you may need to add support for this (it's just a couple lines), and silence any output from the SPL itself.
-Scott

On 05/04/11 18:46, Scott Wood wrote:
On Tue, 5 Apr 2011 17:07:13 +0100 Nick Thompson nick.thompson@ge.com wrote:
On 05/04/11 16:52, Mike Frysinger wrote:
On Tue, Apr 5, 2011 at 10:07 AM, Nick Thompson wrote:
common/console.c has this function:
/* Called before relocation - use serial functions */ int console_init_f(void) { gd->have_console = 1;
#ifdef CONFIG_SILENT_CONSOLE if (getenv("silent") != NULL) gd->flags |= GD_FLG_SILENT; #endif
return 0;
}
I have defined CONFIG_SILENT_CONSOLE and set "silent" in my NAND env, but the SILENT flag doesn't get set.
I suspect this function is called way too early for NAND env to be available.
NAND isnt the only one with this problem (SPI does too last i looked). during early boot, you only have the default env available. so if you want silent console, i'd suggest you enable that in your default env. -mike
Yes, that's what I intend to do, I think, though I'd have liked it to be configurable at run time.
Try enabling CONFIG_NAND_ENV_DST to have the environment be loaded by the SPL along with the main U-Boot image. You didn't say what board/chip you're using, so if you're using something other than the common nand_boot.c you may need to add support for this (it's just a couple lines), and silence any output from the SPL itself.
-Scott
Thanks Scott,
That's interesting. I'm using a TI board (da830evm). Unfortunately it has its own UBL, so I don't have the SPL to configure that way.
That might be a good reason to consider dropping the UBL though. I believe TI are moving to U-Boot SPL themselves.
I'll add it to my TODO list.
Thanks, Nick.

Dear Nick Thompson,
In message 4D9C2274.3080602@ge.com you wrote:
That's interesting. I'm using a TI board (da830evm). Unfortunately it has its own UBL, so I don't have the SPL to configure that way.
There is little reason to stick with UBL. You can get rid of it and use the SPL approach instead - this is no real technical challenge, but just a "little effort".
That might be a good reason to consider dropping the UBL though. I believe TI are moving to U-Boot SPL themselves.
Are they? Do you have any pointers?
I'll add it to my TODO list.
Thanks!
Best regards,
Wolfgang Denk

On 06/04/11 10:22, Wolfgang Denk wrote:
Dear Nick Thompson,
In message 4D9C2274.3080602@ge.com you wrote:
That might be a good reason to consider dropping the UBL though. I believe TI are moving to U-Boot SPL themselves.
Are they? Do you have any pointers?
There have been some SPL submissions from TI people, for example:
http://www.mail-archive.com/u-boot@lists.denx.de/msg48557.html
I believe the work is focused on OMAP4, with OMAP3 as a later addition.
I notice there is already something in repo for da8xx, though not from TI. I think I need to take a look at that.
Nick.
participants (4)
-
Mike Frysinger
-
Nick Thompson
-
Scott Wood
-
Wolfgang Denk