pci_acpi_optimize_delay(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… pci_acpi_optimize_delay(9) β€” the Kernel API Manual, bestie edition ✨

okay so this is pci_acpi_optimize_delay(9), straight out of the Kernel API Manual, and honestly? it's a little sleeper hit. lowkey iconic. let's get into it πŸŽ€


🌸 NAME 🌸

pci_acpi_optimize_delay β€” optimize PCI D3 and D3cold delay from ACPI ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

void pci_acpi_optimize_delay (struct pci_dev *pdev , acpi_handle handle
);

πŸ’– ARGUMENTS πŸ’–

  • pdev β€” the PCI device whose delay is to be updated. yes bestie, this one, the one we're fixing up 🫢
  • handle β€” the ACPI handle of this device. its little ACPI passport, iykyk πŸ’…

✨ DESCRIPTION ✨

so what this function does is it updates the d3hot_delay and d3cold_delay of a PCI device, pulling the numbers from the ACPI _DSM control method β€” and that _DSM can live either on the device itself or on the PCI host bridge. either way, it ate πŸ”₯

Function 8, "Reset Delay," applies to the entire hierarchy below a PCI host bridge. so if it returns one, the OS may assume that all devices in the hierarchy have already completed their power-on reset delays. one and done, no cap πŸ‘‘

Function 9, "Device Readiness Durations," is way more exclusive β€” it applies only to the object where it's located. it returns the delay durations required after various events, but only if the device requires less time than the spec requires. and listen: delays from this function take precedence over the Reset Delay function. main character energy, fr fr ⭐

🧚 both of these _DSM functions are defined by the draft ECN of January 28, 2014, titled "ACPI additions for FW latency optimizations." fancy. cite it, periodt.

πŸ“ SEE ALSO πŸ“

the kernel file ./drivers/pci/pci-acpi.c, plus the whole friend group:


πŸ’œ sign-off πŸ’œ

and that's the whole page, bestie 🫢 this lil' gem lives over in ./drivers/pci, the version tag is October 2026, and the manpage itself is pci_acpi_optimize_delay(9). go forth and optimize those delays, you absolute icon πŸŒˆπŸ’€πŸ‘‘

πŸ“¦ where this page comes from