Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / Atom feed
From: James Morse <james.morse@arm.com>
To: LABBE Corentin <clabbe@baylibre.com>
Cc: nsaenzjulienne@suse.de, linux-kernel@vger.kernel.org,
	u-boot@lists.denx.de, bcm-kernel-feedback-list@broadcom.com,
	linux-rpi-kernel@lists.infradead.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: RPI4: fail too boot with an initrd
Date: Fri, 14 Feb 2020 18:15:27 +0000
Message-ID: <b726290c-1038-3771-5187-6ac370bc92c9@arm.com> (raw)
In-Reply-To: <20200214132748.GA23276@Red>

Hi Corentin,

On 14/02/2020 13:27, LABBE Corentin wrote:
> Since the inclusion of the "enable network support in RPi4 config" serie on uboot, I
> have started to work on adding the rpi4 in kernelCI.
> But I fail to succeed in using a kernel/dtb/ramdisk downloaded via tftp.
> 
> Using booti I hit:
> [    0.000000] Linux version 5.6.0-rc1-next-20200212 (clabbe@build2-bionic-1804) (gcc version 7.4.1 20181213 [linaro-7.4-2019.02 revision 56ec6f6b99cc167ff0c2f8e1a2eed33b1edc85d4] (Linaro    GCC 7.4-2019.02)) #66 SMP PREEMPT Wed Feb 12 10:14:20 UTC 2020
> [    0.000000] Machine model: Raspberry Pi 4 Model B
> [    0.000000] earlycon: uart0 at MMIO32 0x00000000fe215040 (options '')
> [    0.000000] printk: bootconsole [uart0] enabled
> [    0.000000] efi: Getting EFI parameters from FDT:
> [    0.000000] efi: UEFI not found.

So no EFI,

> [    0.000000] OF: reserved mem: failed to allocate memory for node 'linux,cma'

Out of memory.

> [    0.000000] cma: Failed to reserve 32 MiB
> [    0.000000] Kernel panic - not syncing: Failed to allocate page table page

Out of memory...

> [    0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 5.6.0-rc1-next-20200212 #66
> [    0.000000] Hardware name: Raspberry Pi 4 Model B (DT)
> [    0.000000] Call trace:
> [    0.000000]  dump_backtrace+0x0/0x1a0
> [    0.000000]  show_stack+0x14/0x20
> [    0.000000]  dump_stack+0xbc/0x104
> [    0.000000]  panic+0x16c/0x37c
> [    0.000000]  early_pgtable_alloc+0x30/0xa0

... really early!

> [    0.000000]  __create_pgd_mapping+0x36c/0x588
> [    0.000000]  map_kernel_segment+0x70/0xa4
> [    0.000000]  paging_init+0xf4/0x528
> [    0.000000]  setup_arch+0x250/0x5d8
> [    0.000000]  start_kernel+0x90/0x6d8
> 
>  
> Since the same kernel boot with bootefi and that bootefi lack ramdisk address,

Booting with EFI will cause linux to use the EFI memory map.

Does your DT have a memory node? (or does it expect EFI to provide the information)


> I tried to add the address in the dtb via:
> fdt addr 0x02400000; fdt resize; fdt set /chosen linux,initrd-start 0x02700000; fdt set /chosen linux,initrd-end 0x10000000; bootefi 0x00080000 0x02400000
> But with that, I get:
> initrd not fully accessible via the linear mapping -- please check your bootloader ...

So this one is an EFI boot, but you can't find where to put the initramfs such that the
kernel agrees its in memory.

If you boot with 'efi=debug', linux will print the EFI memory map. Could you compare that
to where U-Boot thinks memory is?

(it sounds like your DT memory node is missing, and your EFI memory map is surprisingly small)


Thanks,

James

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply index

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-14 13:27 LABBE Corentin
2020-02-14 18:15 ` James Morse [this message]
2020-02-17 10:37   ` LABBE Corentin
2020-02-17 10:50     ` Matthias Brugger
2020-02-17 12:53       ` LABBE Corentin
2020-02-17 13:07         ` Matthias Brugger
2020-02-18 10:01           ` LABBE Corentin
2020-02-18 10:36             ` Matthias Brugger
2020-02-18 11:08               ` Jaehoon Chung

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b726290c-1038-3771-5187-6ac370bc92c9@arm.com \
    --to=james.morse@arm.com \
    --cc=bcm-kernel-feedback-list@broadcom.com \
    --cc=clabbe@baylibre.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rpi-kernel@lists.infradead.org \
    --cc=nsaenzjulienne@suse.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Linux-ARM-Kernel Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-arm-kernel/0 linux-arm-kernel/git/0.git
	git clone --mirror https://lore.kernel.org/linux-arm-kernel/1 linux-arm-kernel/git/1.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-arm-kernel linux-arm-kernel/ https://lore.kernel.org/linux-arm-kernel \
		linux-arm-kernel@lists.infradead.org
	public-inbox-index linux-arm-kernel

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.infradead.lists.linux-arm-kernel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git