[if !mso]>[if gte mso 9]>

Re: [edk2] Boot Linux on ARM: how to pass in FDT?

Subject: Re: [edk2] Boot Linux on ARM: how to pass in FDT?

From: "Olivier Martin" <olivier.martin@arm.com>

To: "'Nicola Johnsen'" <nicolajohnsen@yahoo.co.uk>, <edk2-devel@lists.sourceforge.net>

Date: 2012-10-22 19:03:21

Do you mind to send me your kernel and device tree by email?

Please, do not send to the mailing-list.

 

From: Nicola Johnsen [mailto:nicolajohnsen@yahoo.co.uk]
Sent: 22 October 2012 10:59
To: edk2-devel@lists.sourceforge.net
Subject: [edk2] Boot Linux on ARM: how to pass in FDT?

 

 

Yes it works booting the zImage from the local directory now, using semihosting, however, I still get the same error when the kernel boots:

 

Error: unrecognized/unsupported device tree compatible list:
[ '(null)' ]

 

Is there a way that I can check that the right DTB is passed to the kernel? Also, it seems that the kernel does not have any DTB support, because the list if supported device trees is NULL.

 

My kernel configuration includes

CONFIG_OF_FLATTREE=y
CONFIG_OF_EARLY_FLATTREE=y

 

and it worked with a non-UEFI boot loader. So I assume the kernel is OK?

 

Cheers.


From: Olivier Martin <olivier.martin@arm.com>
To: 'Nicola Johnsen' <nicolajohnsen@yahoo.co.uk>; edk2-devel@lists.sourceforge.net
Sent: Monday, 22 October 2012, 10:51
Subject: RE: [edk2] Boot Linux on ARM: how to pass in FDT?

 

Sorry, I forgot this point. Yes, the default folder is the one where you start the simulator from. Some Fast Model allows to redefines the semihosting root (it does not seem to be the case on the Fast Model version I have).

 

From: Nicola Johnsen [mailto:nicolajohnsen@yahoo.co.uk]
Sent: 22 October 2012 10:45
To: Olivier Martin; edk2-devel@lists.sourceforge.net
Subject: Re: [edk2] Boot Linux on ARM: how to pass in FDT?

 

Thanks, that helps a lot. If I use semihosting, where on the host filesystem does it look for files? In the directory that I run the simulator from?

Cheers.

 

 


From: Olivier Martin <olivier.martin@arm.com>
To: 'Nicola Johnsen' <nicolajohnsen@yahoo.co.uk>; edk2-devel@lists.sourceforge.net
Sent: Monday, 22 October 2012, 10:27
Subject: RE: [edk2] Boot Linux on ARM: how to pass in FDT?

 

Hi,

After updating the FDT with "[4] Update FDT path", do you restart the model?

 

I have just started a new section for Booting Linux on ARM Fast Model:

 

Cheers,

Olivier

 

From: Nicola Johnsen [mailto:nicolajohnsen@yahoo.co.uk]
Sent: 22 October 2012 09:18
To: edk2-devel@lists.sourceforge.net
Subject: [edk2] Boot Linux on ARM: how to pass in FDT?

 

Hi I'm using the latest edk2 code and the ARM Fast Model simulator to run Linux.

 

I have built a Linux kernel with device tree support. I have built the DTB and booting my kernel works fine with a non-UEFI bootloader. However, I don't quite understand yet how I can pass the DTB to the kernel through the UEFI bootloader.

I boot from SD/MMC card and the zImage and the .dtb is stored on it. When the systems boots, I get the following error:

 

Error: unrecognized/unsupported device tree compatible list:
[ '(null)' ]

 

I have tried to boot through the boot loader manually and select entry "[4] Update FDT path" to point the boot loader to my DTB file on the SD card but it doesn't seem to work that way. What is the right approach to specify the DTB file that has to be passed to the kernel?

 

Thanks,

Nicola