PRAM and reserved memory for Linux
trini at konsulko.com
Wed Jul 13 20:12:41 CEST 2022
On Wed, Jul 13, 2022 at 04:13:27PM +0000, Joakim Tjernlund wrote:
> On Wed, 2022-07-13 at 10:21 -0400, Tom Rini wrote:
> > On Wed, Jul 13, 2022 at 10:08:38AM +0000, Joakim Tjernlund wrote:
> > > I added CONFIG_PRAM 4 and a reserved-memory DTS node for the same space but
> > > now u-boot complains when booting:
> > > ERROR: reserving fdt memory region failed (addr=703ff000 size=1000)
> > > The error is caused by arch_lmb_reserve() in arm which seem
> > > to reserve command line and board info ?
> > >
> > > If I remove the reserved-memory DTS node I don't get a reserved area in Linux,
> > > don't quite understand how PRAM is supposed to work?
> > The first likely problem is that CONFIG_PRAM stuff isn't often used
> > these days so might be glitchy / buggy, as you've found here. Next, I
> > bet that area in arch_lmb_reserve() is about ATAGS/related and should be
> > guarded with CONFIG_SUPPORT_PASSING_ATAGS.
> The arch_lmb_reserve() comment reads(lots of archs has similar code):
> * Booting a (Linux) kernel image
> * Allocate space for command line and board info - the
> * address should be as high as possible within the reach of
> * the kernel (see CONFIG_SYS_BOOTMAPSZ settings), but in unused
> * memory, which means far enough below the current stack
> * pointer.
> You still think this cmdline/board info is just for the old ATAGS ?
> I have an older boot and it des not have CONFIG_SUPPORT_PASSING_ATAGS but
> CMDLINE_TAG etc. is here though.
Yes it is, and SUPPORT_PASSING_ATAGS is somewhat new in that I added it
when converting CMDLINE_TAG, etc, to Kconfig and making it be easier to
say "this platform is new enough to never ever need this".
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 659 bytes
Desc: not available
More information about the U-Boot