# EFI boot not working properly



## _CiPHER_ (Mar 14, 2015)

Hi guys!

I'm trying to get EFI boot working by following the document: https://wiki.freebsd.org/UEFI

It roughly says:


```
gpart create -s gpt da0
gpart add -t efi -s 800K da0
gpart add -t freebsd-ufs da0
dd if=/boot/boot1.efifat of=/dev/da0p1
newfs /dev/da0p2
```
I did exactly that; except locate the second partition on a 1024K-boundary which the above command does not do. I used the /boot/boot1.efifat from FreeBSD 10.1 amd64.

I used RaWrite to create the USB stick. When booting my USB stick I get an error trying to read /boot/loader.conf, then it tries to load the kernel. It finds the kernel but yields errors when inflating the kernel.

Some of the error messages:

```
inflate: invalid code lengths set
invalid distance too far back
invalid distance code
inflate: invalid stored block lengths
readin failed. elf64_loadimage: read failed
inflate: invalid block type
```
The strange thing is that every time trying to boot at the "OK" loader prompt, it will yield a different error. I would expect getting the same error from the same input. It appears the error is randomly chosen from the above list. Maybe this is a clue?

I am using a preloaded mfsroot. I saw some recent commits to HEAD about addressing some issues. But I'm not sure this is the problem, since the loader cannot load /boot/loader.conf or even the kernel itself. So loading the mfsroot of about 10MB would probably not be the issue?

Thanks in advance to anyone who can provide assistance!


----------

