[OE-core] [PATCH 1/2] scripts/runqemu: qemumips support up to 2GiB RAM

Khem Raj raj.khem at gmail.com
Wed Jul 4 13:29:40 UTC 2018


i think you can squash both patches into one. Additionally we should
be able to cover mipsel case as well
On Tue, Jul 3, 2018 at 11:57 PM He Zhe <zhe.he at windriver.com> wrote:
>
> OE uses qemumips to simulate a Malta board by default.
>
> As upstream qemu introduced:
> https://git.qemu.org/?p=qemu.git;a=commit;h=94c2b6aff43cdfcfdfb552773a6b6b973a72ef0b
>
> The Malta board can support up to 2GiB of RAM which should
> be able to boot a Linux kernel built with CONFIG_HIGHMEM
> enabled and passing "-m 2048" to QEMU and appending the
> following kernel parameters:
> ...
> mem=256M at 0x0 mem=256M at 0x90000000 mem=1536M at 0x20000000
> ...
>
> But the following commit in kernel broke above mem=X at Y setting
> which added the memory as reserved memory area.
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=73fbc1eba7ffa3bf0ad12486232a8a1edb4e4411
> ...
> commit 73fbc1eba7ffa3bf0ad12486232a8a1edb4e4411
> Author: Marcin Nowakowski <marcin.nowakowski at imgtec.com>
> Date:   Wed Nov 23 14:43:49 2016 +0100
>
>     MIPS: fix mem=X at Y commandline processing
> ...
>
> So remove `mem=*' to disable user-defined physical RAM map
> which let kernel itself caculates memory ranges.
>
> Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
> Signed-off-by: He Zhe <zhe.he at windriver.com>
> ---
>  scripts/runqemu | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/scripts/runqemu b/scripts/runqemu
> index de42d0f323..597e7e9a79 100755
> --- a/scripts/runqemu
> +++ b/scripts/runqemu
> @@ -668,7 +668,10 @@ class BaseConfig(object):
>              logger.info('QB_MEM is not set, use 512M by default')
>              self.set('QB_MEM', '-m 512')
>
> -        self.kernel_cmdline_script += ' mem=%s' % self.get('QB_MEM').replace('-m','').strip() + 'M'
> +        mach = self.get('MACHINE')
> +        if mach != 'qemumips':
> +            self.kernel_cmdline_script += ' mem=%s' % self.get('QB_MEM').replace('-m','').strip() + 'M'
> +
>          self.qemu_opt_script += ' %s' % self.get('QB_MEM')
>
>      def check_tcpserial(self):
> --
> 2.11.0
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core



More information about the Openembedded-core mailing list