From owner-freebsd-hackers@freebsd.org Mon May 27 15:13:58 2019 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BFDD9159F813; Mon, 27 May 2019 15:13:57 +0000 (UTC) (envelope-from eric@metricspace.net) Received: from mail.metricspace.net (mail.metricspace.net [IPv6:2001:470:1f11:617::107]) by mx1.freebsd.org (Postfix) with ESMTP id 4AEBE70EF8; Mon, 27 May 2019 15:13:57 +0000 (UTC) (envelope-from eric@metricspace.net) Received: from [IPv6:2001:470:1f11:617:3210:b3ff:fe77:ca3f] (unknown [IPv6:2001:470:1f11:617:3210:b3ff:fe77:ca3f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: eric) by mail.metricspace.net (Postfix) with ESMTPSA id 61C5611BE; Mon, 27 May 2019 15:13:50 +0000 (UTC) To: FreeBSD Current , "freebsd-hackers@freebsd.org" From: Eric McCorkle Subject: FreeBSD and Coreboot Openpgp: preference=signencrypt Autocrypt: addr=eric@metricspace.net; prefer-encrypt=mutual; keydata= mDMEXMXabRYJKwYBBAHaRw8BAQdAJ2yzSUUR7u7H/bLAFOzhPII7vvJ45zQeB60TxyCoio20 JEVyaWMgTWNDb3JrbGUgPGVyaWNAbWV0cmljc3BhY2UubmV0PoiWBBMWCAA+FiEEG/v8wt9b D9+AxsV/6Y4m2LfgVbIFAlzF2m0CGwMFCQHhM4AFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AA CgkQ6Y4m2LfgVbJ9mwD/YpSeQ5F9gpvKFS5Bs5w1Bw7zTOfO7zJQrh9NzDbWtd0BAOSGr/i5 zJer2pAjwambsyU0bhgHNy9IDQ7AGnidIyMHuDgEXMXabRIKKwYBBAGXVQEFAQEHQEBwYuBK iJPJEDtS6hbLgcDSUSbfUNA2rGp3TJ1G+7EqAwEIB4h+BBgWCAAmFiEEG/v8wt9bD9+AxsV/ 6Y4m2LfgVbIFAlzF2m0CGwwFCQHhM4AACgkQ6Y4m2LfgVbJ2kwEAlJj1z3zRJm3mmi6N81by nuwAxk3qcKa67WX2/F3C4soA/iwVuPMnx5RWaoX3i2eKXVNzNwzvTFfeGKxfQBOzMocM Message-ID: <4a6b0f1e-64ec-6b83-b43b-f9791ec8428f@metricspace.net> Date: Mon, 27 May 2019 11:13:46 -0400 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0 MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="3TIj6TfZlOozBpG1IFXlam5oyFEhyFrxE" X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 May 2019 15:13:58 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --3TIj6TfZlOozBpG1IFXlam5oyFEhyFrxE Content-Type: multipart/mixed; boundary="6htyX95lFWE5crKa5A6cQDnuT8DXDN3WK"; protected-headers="v1" From: Eric McCorkle To: FreeBSD Current , "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--