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.
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel