IFDTOOL(8)

πŸ“¦
version 25.09 Β· 3 versions
, in debian trixie, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– IFDTOOL β€” the Intel Firmware Descriptor whisperer πŸ’–

okay bestie, so this one lives in section 8 of the manual, aka the System Administration Utilities zone πŸ‘‘ β€” it's ifdtool, and it is literally the girl who extracts and dumps Intel Firmware Descriptor information. no cap. πŸ¦‹


✨ SYNOPSIS ✨

usage ifdtool [-vhdix?] <filename>

like, that's the whole vibe. you hand her a <filename> and she goes to work πŸ’…


🌸 DESCRIPTION 🌸

Extract and dump Intel Firmware Descriptor information.

that's it. that's the whole job description. she extracts, she dumps, she serves. πŸŽ€


πŸ’– OPTIONS πŸ’–

so many flags, so little time. let's get into it fr fr:

  • -d, --dump β€” dump intel firmware descriptor πŸ—‘οΈβœ¨
  • -f, --layout <filename> β€” dump regions into a flashrom layout file
  • -F, --fmap-layout <filename> β€” dump IFD regions into an fmap layout template (.fmd) file
  • -t, --validate β€” Validate that the firmware descriptor layout matches the fmap layout πŸ‘€
  • -x, --extract β€” extract intel fd modules
  • -i, --inject <region>:<module> β€” inject file <module> into region <region> πŸ’‰
  • -n, --newlayout <filename> β€” update regions using a flashrom layout file
  • -O, --output <filename> β€” output filename
  • -s, --spifreq <17|20|30|33|48|50> β€” set the SPI frequency
  • -D, --density <512|1|2|4|8|16|32|64> β€” set chip density (512 in KByte, others in MByte)
  • -C, --chip <0|1|2> β€” select spi chip on which to operate, can only be used once per run:
    • 0 - both chips (default)
    • 1 - first chip
    • 2 - second chip
  • -e, --em100 β€” set SPI frequency to 20MHz and disable Dual Output Fast Read Support
  • -l, --lock β€” Lock firmware descriptor and ME region πŸ”’
  • -r, --read β€” Enable CPU/BIOS read access for ME region
  • -u, --unlock β€” Unlock firmware descriptor and ME region πŸ”“
  • -g, --gpr0-disable β€” Disable GPR0 (Global Protected Range) register
  • -E, --gpr0-enable β€” Enable GPR0 (Global Protected Range) register
  • -c, --gpr0-status β€” Checking GPR0 (Global Protected Range) register status
  • -M, --altmedisable <0|1> β€” Set the MeDisable and AltMeDisable (or HAP for skylake or newer platform) bits to disable ME
  • -p, --platform β€” Add platform-specific quirks 🧚
    • adl - Alder Lake
    • aplk - Apollo Lake
    • cnl - Cannon Lake
    • lbg - Lewisburg PCH
    • dnv - Denverton
    • ehl - Elkhart Lake
    • glk - Gemini Lake
    • icl - Ice Lake
    • ifd2 - IFDv2 Platform
    • jsl - Jasper Lake
    • mtl - Meteor Lake
    • sklkbl - Sky Lake/Kaby Lake
    • tgl - Tiger Lake
    • wbg - Wellsburg
  • -S, --setpchstrap β€” Write a PCH strap
  • -V, --newvalue β€” The new value to write into PCH strap specified by -S
  • -v, --version β€” print the version
  • -h, --help β€” print this help πŸ™ˆ

πŸ“ NOTES πŸ“

okay so <region> is one of: Descriptor, BIOS, ME, GbE, Platform Data, Secondary BIOS, Device Exp1, EC, Device Exp2, IE, 10GbE_0, 10GbE_1, PTT

memorize that list bestie, it's giving vocabulary quiz πŸ“


πŸ’œ AUTHORS πŸ’œ

  • coresystems GmbH.
  • Man page written by Ahmad Khalifa.

and that's the whole page, bestie!! 🌈

this iconic little manual came out in November 2024, courtesy of the System Administration Utilities collection β€” so when you're flipping through your IFDTOOL(8) pages, you know exactly whose name is on it. slay, periodt. πŸ’…βœ¨πŸ«Ά

πŸ“¦ where this page comes from