Commit Graph

625 Commits

Author SHA1 Message Date
Trammell hudson
4e3d19b72a
fix newlines 2017-12-04 15:59:51 -05:00
Trammell hudson
bf4446c900
Make DxeCore and others configurable 2017-12-04 15:31:18 -05:00
Trammell hudson
5a188f5b46
Add support for building the Linux kernel as a BDS target 2017-12-04 15:30:40 -05:00
Trammell hudson
517d242da5
allow .vol targets to be passed through 2017-12-04 15:29:00 -05:00
Trammell hudson
680b952856
Make ROM_SIZE a configuration option #283 2017-12-04 14:56:58 -05:00
Trammell hudson
27deeba893
Make ROM_SIZE a configuration option #283 2017-12-04 14:52:27 -05:00
Trammell hudson
63c9e6e51c
configuration for Intel s2600wf server mainboard 2017-12-04 14:14:16 -05:00
Trammell hudson
c954ec1947
Fix default target for NERF and edk2 dependency (issue #284) 2017-11-20 17:28:35 -05:00
Trammell hudson
b04294c234
restore alignment on files for faster flashes 2017-10-20 16:20:51 -04:00
Trammell hudson
3e5783a24f
enable serial debugging and moderate verbose output from dxe-core 2017-10-19 16:04:14 -04:00
Trammell hudson
87bd21111f
Include edk2 EmuVariableRuntimeDxe to provide efi vars (issue #270)
Remove the patch to Linux efivar_init() since we now have efi vars
for it to use.

Also link in SmbiosDxe, although it is not currently used.
2017-10-19 15:59:13 -04:00
Trammell hudson
5176bfdd58
preliminary winterfell support for NERF 2017-10-18 13:56:32 -04:00
Trammell hudson
2045c082dc
ignore temporary files 2017-10-05 15:17:24 -04:00
Trammell hudson
6046a01e9e
Initial support for the Lenovo x3550 m5 server, but it does not work yet 2017-10-05 15:16:34 -04:00
Trammell hudson
2438a0ea24
Build multiple boards with the NERF firmware (issue #268)
This modifies the `Makefile.nerf` to create files based on the
$(BOARD) variable, which is necessary as we start to support
multiple mainboards.

The config files must define five variables, all in bytes:

* `NERF_SIZE` - for the EFI firmware volume that contains Linux
* `PEI_SIZE` - size of the PEI image in the vendor ROM
* `PEI_OFFSET` - offset of the PEI image in the vendor ROM
* `ME_SIZE` - size of the ME image in the vendor ROM, or 0 if
there is no ME image to be extracted.
* `ME_OFFSET` - offset of the ME image in the vendor ROM

The `ifd.bin` must be created and can be checked in.
The default ROM input file is `blobs/$(BOARD)/$(BOARD).rom`,
and it *must not* be checked in.
2017-10-05 15:10:34 -04:00
Trammell hudson
212b030660
generate ACPI firmware volume and removed Linux ACPI table hacks (issue #266) 2017-09-25 15:21:16 -04:00
Trammell hudson
86f90c8947
LZ compressed version of the ACPI tables (hand generated) (issue #266) 2017-09-24 11:59:10 -04:00
Trammell hudson
115573adc9
Attempt to use the edk2 ACPI tables (issue #266)
This links in the AcpiTableDxe and AcpiPlatform executables from
the edk2 build tree and adds a depex dependency for the Linux
kernel on the AcpiTable being setup.  The `acpi.cpio` file is
no longer included in the Linux kernel bzImage.

The `Makefile.nerf` has been re-written to generate the firmware
file system (FFS) files via rules.

TODO: figure out how to add LZMA compressed sections so that the
900k acpi tables can be compressed to about 100k.
2017-09-23 22:53:10 -04:00
Trammell hudson
30c844661c
make a hole in low memory for the trampoline (issue #246) 2017-09-22 19:13:23 -04:00
Trammell hudson
ab87580b18
use depex to wait for runtime services guid to be installed (issue #261) 2017-09-22 16:30:02 -04:00
Trammell hudson
341f8ac188
generate the r630 blobs from the input rom file 2017-09-22 16:20:58 -04:00
Trammell hudson
12cea9a8e9
make coreboot an optional dependency (issue #265) 2017-09-22 16:17:05 -04:00
Trammell hudson
ae8aa669dc
make PERC/MegaRaid a module again (issue #253) 2017-09-22 16:13:26 -04:00
Trammell hudson
90c231623c
support XZ initrd, without forcing XZ on initramfs (issue #257) 2017-09-22 15:27:10 -04:00
Trammell hudson
0cc31132d3
Allow initrd.cpio to be a separate EFI firmware volume (issue #257)
Add a function to walk all firmware volumes looking for a well
known GUID that is the initrd.cpio image. Currently it must be
uncompressed.
2017-09-22 15:13:41 -04:00
Trammell hudson
03d21da268
generate 512-byte padded xz files 2017-09-22 15:09:57 -04:00
Trammell hudson
91ef9aeefa
Make megaraid a module so that it does not delay normal boots (issue #253) 2017-09-21 16:54:48 -04:00
Trammell hudson
a1c9bbb9ff
Enable MegaRaid and XFS support (issue #253) 2017-09-21 16:18:17 -04:00
Trammell hudson
0b7e5e60a0
quiet down the output to the vga, since it is so slow to update 2017-09-21 10:34:35 -04:00
Trammell hudson
f7de7d7388
Enable all flashrom devices (issue #249).
This allows flashrom to work on the r630 NERF server, but
also increases the size of the flashrom executable significantly
since it brings in all chipset and flash types.
2017-09-21 10:26:11 -04:00
Trammell hudson
607868c0b5
document how to extract and unlock regions from r630.rom (issue #259) 2017-09-21 10:24:16 -04:00
Trammell hudson
ddbdcd4d4d
remove unneeded foo.vol.txt output from GenVol 2017-09-21 09:34:16 -04:00
Trammell hudson
8148c970fb
expand the NERF volume to fill all available space in the ROM (issue #242) 2017-09-20 18:59:24 -04:00
Trammell hudson
9596e73dfc
make edk2 a dep for building the DXE images 2017-09-20 18:33:05 -04:00
Trammell hudson
796ea2870a
build appears to produce a NERFed r630 firmware image 2017-09-20 18:24:54 -04:00
Trammell hudson
998736fc50
initial tools to build the nerf EFI volume that goes into the firmware 2017-09-20 17:47:48 -04:00
Trammell hudson
3a8710cf49
unquiet it for now 2017-09-20 17:47:12 -04:00
Trammell hudson
04a108912f
ignore edk2 generated files 2017-09-20 17:46:56 -04:00
Trammell hudson
81a7f18b86
build edk2 as a module for the r630 NERF firmware 2017-09-20 14:26:38 -04:00
Trammell hudson
bda821dbb9
fix patches to have the correct -p level 2017-09-20 14:26:07 -04:00
Trammell hudson
8194f2f477
allow extra options to git via the repo variable 2017-09-20 14:25:19 -04:00
Trammell hudson
33c1c9147e
ACPI tables for the r630 NERF firmware 2017-09-20 10:34:25 -04:00
Trammell hudson
a4d7654b1e
Build the Heads/NERF firmware for the Dell R630 server.
This development branch builds a NERF firmware for the Dell R630
server.  It does not use coreboot; instead it branches directly
from the vendor's PEI core into Linux and the Heads runtime
that is setup to be run as an EFI executable.
2017-09-20 10:29:14 -04:00
Trammell hudson
498105c979
enable i915 native support (needed for Librem 13v2) 2017-09-06 19:07:02 -04:00
Trammell Hudson
9d9af31e58
fix typo and format with markdown (issue #206) 2017-07-27 06:26:04 -04:00
Trammell Hudson
314ce7b350
bump Linux kernel to 4.9.38 (issue #224) 2017-07-18 14:25:15 -04:00
Trammell Hudson
fcc99eca93
include version number in verify target (issue #228) 2017-07-18 14:03:43 -04:00
Trammell Hudson
b550a7f967
rework startup scripts to combine totp prompt with boot mode selection (issue #221) 2017-07-18 13:44:02 -04:00
Trammell Hudson
3e48f1c5e8
tweaks to make qemu run through the /bin/generic-init process 2017-07-18 13:42:19 -04:00
Trammell Hudson
36e3172c8e
disable i915 for now, since it causes screen glitches in Xen/Qubes (issue #219) 2017-07-18 13:32:57 -04:00