Date: Mon, 27 May 2019 11:13:46 -0400 From: Eric McCorkle <eric@metricspace.net> To: FreeBSD Current <freebsd-current@freebsd.org>, "freebsd-hackers@freebsd.org" <freebsd-hackers@FreeBSD.org> Subject: FreeBSD and Coreboot Message-ID: <4a6b0f1e-64ec-6b83-b43b-f9791ec8428f@metricspace.net>
next in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --3TIj6TfZlOozBpG1IFXlam5oyFEhyFrxE Content-Type: multipart/mixed; boundary="6htyX95lFWE5crKa5A6cQDnuT8DXDN3WK"; protected-headers="v1" From: Eric McCorkle <eric@metricspace.net> To: FreeBSD Current <freebsd-current@freebsd.org>, "freebsd-hackers@freebsd.org" <freebsd-hackers@FreeBSD.org> Message-ID: <4a6b0f1e-64ec-6b83-b43b-f9791ec8428f@metricspace.net> Subject: FreeBSD and Coreboot --6htyX95lFWE5crKa5A6cQDnuT8DXDN3WK Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable Hello everyone, I'm through enough of my job change that I can start working on FreeBSD again. One thing I've had on my list to examine is using FreeBSD with coreboot, so I wanted to put out a call for anyone who has done work on this, or knows anything about it. Here is what I know: * Coreboot _can_ boot kernels directly, but this requires two things: 1) you must flash your BIOS every time you update a kernel, 2) the kernel must be able to work without the usual device initialization that the BIOS does. * Coreboot has two significant payload options beyond a kernel: Seabios and GRUB (supposedly Tianocore EFI is an option, but it apparently doesn't really work). * Scrounging the coreboot wiki seems to produce some conflicting information. One page claims that the FreeBSD kernel can boot directly as a coreboot payload; another claims GRUB or Seabios to be the only options. * The PC Engines boards evidently use coreboot, and I've heard multiple reports of them running FreeBSD systems without a problem. I don't know whether they use GRUB or Seabios. (Aside: I'm thinking about ordering some of these boards for my own use, so I'm generally interested in how well they function with FreeBSD) My plan is roughly this: * Refurbish the GRUB port, get it working again in QEMU (possibly on one of my machines), also possibly push a patch to GRUB to use the keybufs mechanism to pass in GELI keys. * Get coreboot with GRUB/Seabios booting FreeBSD in QEMU * Possibly create a coreboot port (uncertain how this would work, since Coreboot has its own extensive config menu) * Hold my breath and test it out on real hardware (I have a Librem 13 r1 for this purpose) * Possibly try getting the FreeBSD kernel to work as a coreboot payload. Here's what I don't know/what would be useful knowledge for me: * Anyone else who's been experimenting/working on coreboot support, and what they found * Any working examples of using Coreboot with FreeBSD * Down the road, anything about adapting the FreeBSD kernel to work with a new boot platform (ie. low level details about how to set it up in memory on a bare-metal system and start execution) --6htyX95lFWE5crKa5A6cQDnuT8DXDN3WK-- --3TIj6TfZlOozBpG1IFXlam5oyFEhyFrxE Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYIAB0WIQQb+/zC31sP34DGxX/pjibYt+BVsgUCXOv+rQAKCRDpjibYt+BV skEKAQCUHfKPzTGFHmB6FQqdpmeMwEwelIuKtVa8/evNB0m6tAD/aj1/ZhwbUo6Y BlaR2LtGUbXwigNgDqr0KoufJQkkWQg= =A08d -----END PGP SIGNATURE----- --3TIj6TfZlOozBpG1IFXlam5oyFEhyFrxE--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4a6b0f1e-64ec-6b83-b43b-f9791ec8428f>