grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

FreeBSD support


From: Eric McCorkle
Subject: FreeBSD support
Date: Sat, 12 Oct 2019 09:41:50 -0400
User-agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:68.0) Gecko/20100101 Thunderbird/68.0

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


reply via email to

[Prev in Thread] Current Thread [Next in Thread]