[PATCH 1/1] vexpress_ca9x4: Enable use of correct DTB file and restore EFI loader.

Heinrich Schuchardt xypron.debian at gmx.de
Sat Mar 28 11:12:55 CET 2020


On 3/28/20 10:36 AM, Heinrich Schuchardt wrote:
> On 3/27/20 8:18 AM, Kristian Amlie wrote:
>> On 27/03/2020 06:44, Heinrich Schuchardt wrote:
>>> On 3/27/20 2:39 AM, Tom Rini wrote:
>>>> On Tue, Feb 25, 2020 at 06:22:16PM +0100, Kristian Amlie wrote:
>>>>
>>>>> EFI was disabled in f95b8a4b5f64f because of the missing DTB file,
>>>>> and indeed, the DTB file is required to load recent versions of GRUB
>>>>> (2.04) correctly.
>>>>>
>>>>> Signed-off-by: Kristian Amlie <kristian.amlie at northern.tech>
>>>>
>>>> Applied to u-boot/master, thanks!
>>>>
>>>
>>> Since this patch is merged I get errors on Gitlab for vexpress_ca9x4:
>>>
>>> https://gitlab.denx.de/u-boot/custodians/u-boot-efi/-/jobs/69269
>>>
>>> Filename 'lib/efi_loader/helloworld.efi'.
>>> Load address: 0x60000000
>>> Loading: *#
>>>       1.8 MiB/s
>>> done
>>> Bytes transferred = 1840 (730 hex)
>>> smc911x: MAC 52:54:00:12:34:56
>>> => => crc32 60000000 $filesize
>>> CRC32 for 60000000 ... 6000072f ==> f5c77855
>>> => => bootefi 60000000
>>> 78Scanning disks on mmc...
>>> Card did not respond to voltage select!
>>> MMC Device 1 not found
>>> MMC Device 2 not found
>>> MMC Device 3 not found
>>> Found 0 disks
>>> ERROR: need device tree
>>
>> Is the "bootefi 60000000" command correct? Doesn't "bootefi" need to be
>> called with both an EFI binary address and a device tree address?
>>
>
> bootefi uses $fdtcontroladdr as fallback for the device tree. But this
> variable is only available if CONFIG_OF_CONTROL is set. We should adjust
> the python test to check this.
>
> CONFIG_DEFAULT_FDT_FILE="vexpress-v2p-ca9.dtb"
> This line is incorrect. We never use a .dtb extension here.

I got that wrong. There are two variables which are somewhat related:

CONFIG_DEFAULT_DEVICE_TREE="meson-gxbb-odroidc2"
CONFIG_DEFAULT_FDT_FILE="vexpress-v2p-ca9.dtb"

One uses the extension, the other doesn't.

So your patch seems to be correct. The error is in the Python test that
does not check if OF_CONTROL is set.

Best regards

Heinrich


More information about the U-Boot mailing list