How do I transition an arbitrary PCIe device from the D0 state (powered on) to the D3 cold state (no current to the device) using common utilities on a Linux system? Presumably this involves writing to a sysfs file, but other methods that may be more involved are welcome too, as long as they can be done in userspace. This question is based on another one regarding power cycling.

I am specifically looking for a hardware-agnostic way to put a device into D3 cold. I am aware that certain device drivers will put the PCIe device into that state under certain conditions, such as power saving, but I would like to find a way to force it for any arbitrary device. If my understanding of the specifications are correct, then any to-spec PCIe device should support D3 cold.

  • The PCIe spec does not speak to this as D3cold is simply turning off power to the card. Putting a single card in D3cold will be motherboard dependent and may not be possible in general - the motherboard would have to provide a way to remove power from individual PCIe slots, which I do not believe is a standard feature. – alex.forencich Apr 10 at 5:56
  • Well, I guess you can send all of the PCI cards into D3cold by simply turning the machine off. But presumably this is not what you want to do. – alex.forencich Apr 10 at 5:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.