Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 Jan 2015 16:57:43 +0100
From:      Luca Pizzamiglio <luca.pizzamiglio@gmail.com>
To:        FreeBSD Hackers <freebsd-hackers@freebsd.org>, freebsd-current@freebsd.org
Subject:   UEFI boot hangs with MINNOWBOARD
Message-ID:  <CAB88xy9LmWW8GArHa2VUBGi3abMJBQSrORHpG3hNPWPbtj7TNg@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi,
I'm testing CURRENT on a MINNOWBOARD
(http://www.elinux.org/Minnowboard:MinnowMax):

Dual-core atom E3825 CPU
EFI Version: 2.4.0
EFI: EDK II

boot1.efi starts, it can found the ufs partition with loader.efi
loader.efi fails at BT->ExitBootServices() (elf64_exec() of
sys/boot/amd64/efi/elf64_freebsd.c)

ExitBootServices() fails with error code 2 (INVALID_PARAMETER). The
documentation of this function
(http://wiki.phoenix.com/wiki/index.php/EFI_BOOT_SERVICES#ExitBootServices.28.29)
states that the mapKey is wrong and GetMemoryMap() should be recall
and then ExitBootServices() again. I've tried to implement it, but it
fails again. My main problem is that I don't know which parameter
should I pass to GetMemoryMap()

I gave a look to this discussion
(http://www.gossamer-threads.com/lists/linux/kernel/1733014) about
"retry ExitBootServices() on failure" about eboot in Linux: they do a
retry (only one) and they call also a FreePoll().

Do you have any tips, suggestions or something that could help to get
FreeBSD boot on this apparently standard board?

Best regards,
Luca Pizzamiglio

PS: should we implement the ExitBootServices() retry?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAB88xy9LmWW8GArHa2VUBGi3abMJBQSrORHpG3hNPWPbtj7TNg>