Hi all,

I finally got a chance to resume work on FreeBSD support recently.
Here's where things are:

* I can boot on an EFI platform, however, the efifb driver never turns
the screen on, so the screen is blank until the X11 DRM driver takes
over (I know why this is, see below)

* grub_install doesn't properly detect what modules to link into the
image, so you have to manually tell it to load whatever you need to
detect the filesystem (ex: zfs, ufs, bsd, etc)


Other than that, everything is fine as far as I can tell.

As for the screen issue, it comes down to a change that I'm looking into
making.  The FreeBSD kernel has the ability to send data into the kernel
using what amounts to synthetic loadable modules.  It creates ELF images
containing the data synthetically in memory.

This capacity is used in two ways with an EFI boot: to send EFI terminal
data to the efifb driver, and to pass keys from the loader to the
kernel.  The latter is only used for GELI for now, with the older
environment variable method being supported but deprecated.  The EFI
terminal data used to be send in via environment variables, but that was
replaced with the synthetic modules method.

So basically, I need to implement the synthetic modules functionality in
GRUB, assuming it already doesn't exist.

As for the grub_install problem, I suspect that's just a matter of
debugging it on FreeBSD.

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to