MAEFICAPSULE(1)

πŸ“¦
version 2026.04 Β· 2 versions
, in fedora 43, fedora 44, nixos 26.05

πŸ’– MAEFICAPSULE(1) πŸ’–

okay bestie, welcome to the General Commands Manual page for mkeficapsule, and yes the whole name is literally lowercase like that, we don't make the rules ✨


✨ NAME ✨

mkeficapsule β€” Generate EFI capsule file for U-Boot πŸ¦‹


🌸 SYNOPSIS 🌸

mkeficapsule [options] [image-blob] capsule-file

mkeficapsule guidgen [GUID] DTB IMAGE_NAME...

πŸ’… DESCRIPTION πŸ’…

so mkeficapsule is the girl who makes EFI capsule files for U-Boot firmware updates. iconic behaviour honestly. a capsule file can carry all kinds of firmware blobs that are gonna get applied to your system. and here's the tea: if you drop that capsule file into the /EFI/CapusuleUpdate directory of the EFI system partition, U-Boot will try to run the update at the next reboot. no cap. πŸ”₯

optionally, a capsule file can be signed with a given private key. in that case the update gets authenticated by verifying the signature before it's applied β€” vibe check before entry, as it should be.

also, you can generate an empty capsule file to signal the acceptance or rejection of firmware images by a governing component, like an operating system. empty capsules do not need an image-blob input file. low maintenance, high impact πŸŽ€

mkeficapsule takes literally any type of image file when generating non-empty capsules, including:

  • raw image β€” the format is a single binary blob of any type of firmware.
  • FIT (Flattened Image Tree) image β€” same format as the new uImage format, and it lets you pack multiple binary blobs into a single capsule file. this type of image file can be generated by mkimage.

mkeficapsule can also be used to simulate the dynamic GUID generation used to identify firmware images in capsule updates, by providing the namespace guid, dtb for the board, and a list of firmware images. it's giving ✨multitasking✨


✨ OPTIONS ✨

  • -g, --guid guid-string β€” Specify guid for image blob type. The format is:
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

The first three elements are in little endian, while the rest is in big endian. The option must be specified for all non empty and image acceptance capsules. (yes bestie, mandatory, no skipping πŸ’€)

  • -i, --index index β€” Specify an image index.
  • -I, --instance instance β€” Specify a hardware instance.
FMP Payload Header is inserted right before the payload if --fw-version is specified.
  • -v, --fw-version firmware-version β€” Specify a firmware version, 0 if omitted.
For generation of firmware accept empty capsule --guid is mandatory.
  • -A, --fw-accept β€” Generate a firmware acceptance empty capsule.
  • -R, --fw-revert β€” Generate a firmware revert empty capsule.
  • -o, --capoemflag β€” Capsule OEM flag, value between 0x0000 to 0xffff.
  • -V, --version β€” Print version information and exit.
  • -h, --help β€” Print a help message.

πŸ” the signing era πŸ”

With signing, --private-key, --certificate and --monotonic-count are all mandatory. all three, bestie. the whole trio. 🫢

  • -p, --private-key private-key-file β€” Specify signer's private key file in PEM.
  • -c, --certificate certificate-file β€” Specify signer's certificate file in EFI certificate list format.
  • -m, --monotonic-count count β€” Specify a monotonic count which is set to be monotonically incremented at every firmware update.
  • -d, --dump_sig β€” Dump signature data into *.p7 file.

🧚 GUIDGEN OPTIONS 🧚

  • [GUID] β€” The namespace/salt GUID, by default this is EFI_CAPSULE_NAMESPACE_GUID. The format is:
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  • DTB β€” The device tree blob file for the board.
  • IMAGE_NAME... β€” The names of the firmware images to generate GUIDs for.

πŸ“ FILES πŸ“

  • /EFI/UpdateCapsule β€” The directory in which all capsule files be placed.

πŸ‘€ SEE ALSO πŸ‘€


πŸ‘‘ AUTHORS πŸ‘‘

Written by AKASHI Takahiro <takahiro.akashi@linaro.org> β€” we love a named author, periodt πŸ’œ


🌈 HOMEPAGE 🌈

http://www.u-boot.org/


okay that's the whole page bestie, go forth and update your firmware responsibly, mwah πŸ’–

this has been the MAEFICAPSULE(1) page, May 2021, from the U-Boot manual era β€” catch you on the next reboot, bye! πŸŽ€βœ¨

πŸ“¦ where this page comes from