Page MenuHomeFreeBSD

stand: Cut over to using the EDK2 files
ClosedPublic

Authored by imp on Sun, Nov 9, 10:19 PM.
Tags
None
Referenced Files
F136518674: D53655.diff
Tue, Nov 18, 3:44 AM
Unknown Object (File)
Sun, Nov 16, 4:58 PM
Unknown Object (File)
Sat, Nov 15, 2:01 PM
Unknown Object (File)
Fri, Nov 14, 10:50 AM
Unknown Object (File)
Thu, Nov 13, 5:18 AM
Unknown Object (File)
Thu, Nov 13, 5:17 AM
Unknown Object (File)
Wed, Nov 12, 10:15 AM
Unknown Object (File)
Wed, Nov 12, 10:14 AM
Subscribers

Details

Summary

Remove the old EFI SDK files that we've been nursing along for too many
years. Replace them with files from EDK2 edk2-stable202502 and tweak the
interfaces we need to tweak. Mostly include different things or change
the names of the protocols that no longer have old-school compat names.

I gave up in the middle of env.c, too damn tedious to find all those new
GUIDs. Also, many of the guids were mystery meat, most likely from the
EDK2 sources, but just not the Include subdirectory. Need to investigate
those. And the memory info? Is it just an oboslete thing, or embedded
knowledge of EDK2.

Delete the now-redundant copies of things in Guid and Protocol. I
debated keeping ZeroGuid.h, but EDK2 has moved on from when I snagged it
years ago (or maybe I just invented it out of whole cloth: edk2 does
radically different things today and I didn't do the git deep-dive to
find out).

Sponsored by: Netflix

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

imp requested review of this revision.Sun, Nov 9, 10:19 PM
obrien added inline comments.
stand/efi/include/efilib.h
33

While you're here, shouldn't <sys/queue.h> come before all these other headers?

stand/efi/libefi/devpath.c
30–32

While you're here, shouldn't this include come before all the others?

stand/efi/libefi/eficom.c
27

While you're here, shouldn't this include either come before all the others, or be spelled <errno.h>?

stand/efi/libefi/env.c
31–61

Perhaps a blank line between the standard FreeBSD headers and the EDK2 ones?

stand/efi/loader/framebuffer.c
28–30

While you're here, perhaps fix this included order.

40

Shouldn't this be up with the <sys/___.h> headers?

stand/efi/include/efilib.h
33

sys/queue shouldn't be before all the others.
And other than stand.h being first, the loader style is a bit all over the place, but the Edk2 files should generally be last.

stand/efi/libefi/eficom.c
27

This is a monster commit already. There's no real 'while I'm here' with it.
I should do a pass more generally and delete the includes I think I can. sys/errno.h likely can just be deleted entirely.

stand/efi/libefi/env.c
818

I'm not entirely sure that EFI_MEMORY_TYPE_INFORMATION_VARIABLE_NAME is really an EFI standard thing. I can't find it in the standards, and memory is reported via other means.

This revision was not accepted when it landed; it landed in state Needs Review.Sun, Nov 16, 6:29 PM
This revision was automatically updated to reflect the committed changes.