[U-Boot] [PATCH 1/2] riscv: set CONFIG_SYS_BOOTM_LEN to SZ_64M
Auer, Lukas
lukas.auer at aisec.fraunhofer.de
Thu Apr 11 16:31:35 UTC 2019
On Thu, 2019-04-11 at 15:05 +0200, David Abdurachmanov wrote:
> On Thu, Apr 11, 2019 at 2:40 PM Auer, Lukas
> <lukas.auer at aisec.fraunhofer.de> wrote:
> > + Bin
> > [Please use get_maintainer or patman to include all maintainers on CC]
>
> Thanks.
>
> Hm.. get_maintainer and patman are not mentioned on wiki page:
> "Patches and Feature Requests". It only mentions to CC people from:
> http://www.denx.de/wiki/U-Boot/Custodians
>
Hm, you are right, it's not really stated explicitly.
> > On Tue, 2019-04-09 at 12:42 +0200, David Abdurachmanov wrote:
> > > After updating Fedora/RISCV kernel to 5.1-rc3+ the size increased above
> > > the current threshold. Looking into HiKey, Dragonboards, etc. seems that
> > > SZ_64M is a popular option.
> > >
> > > This sucessfully boots Fedora/RISCV with 5.1-rc3+ kernel on QEMU 4.0 (master)
> > > with OpenSBI -> U-Boot (S-mode) [extlinux] -> Kernel setup.
> > >
> > > Signed-off-by: David Abdurachmanov <david.abdurachmanov at gmail.com>
> > > ---
> > > include/configs/qemu-riscv.h | 12 ++++++------
> > > 1 file changed, 6 insertions(+), 6 deletions(-)
> > >
> > > diff --git a/include/configs/qemu-riscv.h b/include/configs/qemu-riscv.h
> > > index 2588c5a0b2..22a5cd7365 100644
> > > --- a/include/configs/qemu-riscv.h
> > > +++ b/include/configs/qemu-riscv.h
> > > @@ -15,7 +15,7 @@
> > >
> > > #define CONFIG_SYS_MALLOC_LEN SZ_8M
> > >
> > > -#define CONFIG_SYS_BOOTM_LEN SZ_16M
> > > +#define CONFIG_SYS_BOOTM_LEN SZ_64M
> > >
> > > #define CONFIG_STANDALONE_LOAD_ADDR 0x80200000
> > >
> > > @@ -41,11 +41,11 @@
> > > #define CONFIG_EXTRA_ENV_SETTINGS \
> > > "fdt_high=0xffffffffffffffff\0" \
> > > "initrd_high=0xffffffffffffffff\0" \
> > > - "kernel_addr_r=0x81000000\0" \
> > > - "fdt_addr_r=0x82000000\0" \
> > > - "scriptaddr=0x82100000\0" \
> > > - "pxefile_addr_r=0x82200000\0" \
> > > - "ramdisk_addr_r=0x82300000\0" \
> > > + "kernel_addr_r=0x84000000\0" \
> >
> > Why are you also moving kernel_addr_r?
>
> I think there two 16MB windows here for kernel:
> - 0x80000000 - 0x81000000 (kernel_addr_r), and kernel is loaded at 0x80200000
> - 0x81000000 (kernel_addr_r) - 0x82000000 (fdt_addr_r)
>
> From U-Boot documentation:
>
> [..]
> 236 kernel_addr_r:
> 237
> 238 Mandatory. The location in RAM where the kernel will be loaded
> to when
> 239 processing the kernel option in the extlinux.conf.
> [..]
>
> Thus I moved it to ensure that both windows are 64MB.
>
Ok you are right, that makes sense.
Reviewed-by: Lukas Auer <lukas.auer at aisec.fraunhofer.de>
More information about the U-Boot
mailing list