[U-Boot-Users] [Junk released by Allow List] Command history no longer working

Kenneth Johansson kenneth at southpole.se
Thu May 29 21:58:29 CEST 2008


On Thu, 2008-05-29 at 15:41 -0400, Hugo Villeneuve wrote:
> u-boot-users-bounces at lists.sourceforge.net wrote:
> > Hi,
> > I have observed that after this commit, the command history is no
> > longer working:
> > 
> > ---
> > commit 597f6c26a18b389903a64692bacbf9a1ca69355b
> > Author: James Yang <James.Yang at freescale.com>
> > Date:   Mon May 5 10:22:53 2008 -0500
> > 
> >     Fix readline_into_buffer() with CONFIG_CMDLINE_EDITING before
> > relocating
> > 
> >     When CONFIG_CMDLINE_EDITING is enabled, readline_into_buffer()
> > doesn't
> >     work before relocating to RAM because command history is written
> > into
> >     a global array that is not writable before relocation.  This patch
> >     defers to the no-editing and no-history code in
> > readline_into_buffer()
> >     if it is called before relocation.
> > ---
> > 
> > Based on the comments, I dont understand why it ceases to work
> > because, in my case, U-Boot runs entirely from RAM (it is copied from
> > flash to RAM by a first stage bootloader).
> > 
> > I have CONFIG_CMDLINE_EDITING defined.
> 
> Well after reading through the code in common/main.c, I figured that
> by setting GD_FLG_RELOC in my board init function:
> 
>   gd->flags |= GD_FLG_RELOC;
> 
> command history would be working again, and it did.
> 
> But is it the right thing to do?

Yes.

> I noticed that not a lot of platforms/boards set GD_FLG_RELOC so
> command history will probably cease to work for these boards also?

Most boards do the relocation and then it gets set by the common
board_init_r() function. 






More information about the U-Boot mailing list