Skip to contentSkip to conversation

CONFIG_SILENT_CONSOLE not working with NAND env

U-Boot Nick Thompson 4 participants 7 messages Apr 5, 2011 – Apr 6, 2011

lore
Share & tools
lore
#0 lore raw

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.

#1 lore raw
Quoted 12 lines · Nick Thompson

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

Quoted 7 lines

? ? ? ?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

#2 lore raw
Quoted 19 lines · Mike Frysinger
Quoted 18 lines · Nick Thompson

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.

Quoted 6 lines
Quoted 1 line

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.

#3 lore raw
Quoted 21 lines · On Tue, 5 Apr 2011 17:07:13 +0100 Nick Thompson <[email protected]> wrote:
Quoted 20 lines · Mike Frysinger
Quoted 19 lines · Nick Thompson

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.

Quoted 8 lines
Quoted 5 lines

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

#4 lore raw
Quoted 31 lines · Scott Wood
Quoted 20 lines · On Tue, 5 Apr 2011 17:07:13 +0100 Nick Thompson <[email protected]> wrote:
Quoted 19 lines · Mike Frysinger
Quoted 18 lines · Nick Thompson

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.

Quoted 8 lines
Quoted 6 lines
Quoted 1 line

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.

Quoted 8 lines

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.

#5 lore raw

Dear Nick Thompson,

Quoted 3 lines · In message <[email protected]> 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".

Quoted 2 lines

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?

Quoted 1 line

I'll add it to my TODO list.

Thanks!

Best regards,

Wolfgang Denk

Signature · 5 lines
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: wd at denx.de
Keep your head and your heart going in the right  direction  and  you
will not have to worry about your feet.
#6 lore raw
Quoted 6 lines · Wolfgang Denk

Dear Nick Thompson,

Quoted 2 lines · In message <[email protected]> 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 at 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.