Linux 5.12 To Expose Firmware Performance Data
Last week saw the main set of ACPI and power management updates for Linux 5.12 while for the second week of the merge window has been the follow-up work with Intel Simple Firmware Interface removal and also an additional ACPI update.
Noteworthy with yesterday's ACPI pull is support for parsing of the ACPI Firmware Performance Data Table (FPDT) and now exposing that under sysfs. The ACPI FPDT tables provide platform initialization platform records with data pertaining to the boot process. Via the Firmware Performance Data Table it's possible to track the performance of each UEFI phase - helpful in measuring hardware/software changes, etc.
With Linux 5.12+ the ACPI FPDT table is being parsed on supported systems and exposed under /sys/firmware/acpi/fpdt/. This Intel contribution to the Linux kernel makes it very easy to read the timer value from firmware start, bootloader start, exiting of the UEFI boot services, and related activities. Additionally, the system suspend/resume performance is also exposed as part of the ACPI FPDT data.
Up to now systemd did parse some of this information as part of their boot time measurement support while moving forward this data will be conveniently displayed under sysfs for those interested in their system firmware performance.
The ACPI FPDT parsing and exposure via sysfs was sent in and merged via this pull request.