Timeline for How to Reset/Cycle Power to a PCIe Device?
Current License: CC BY-SA 3.0
27 events
| when toggle format | what | by | license | comment | |
|---|---|---|---|---|---|
| Sep 8, 2023 at 9:52 | comment | added | Wang | in new kernel, the <id>/power is a dir. So this answer is not useful nowadays | |
| Apr 2, 2022 at 22:42 | comment | added | forest | @alex.forencich Many PCIe devices might support D3cold, if d3cold_allowed in sysfs is set to 1. | |
| Apr 1, 2022 at 1:03 | comment | added | alex.forencich | No idea, I have never personally seen one that can turn off power to the slots. | |
| Apr 1, 2022 at 0:56 | comment | added | forest | @alex.forencich What kind of motherboards support that? | |
| Mar 25, 2022 at 19:55 | comment | added | forest | No answer to my question so far: unix.stackexchange.com/q/460928/164143 | |
| Apr 12, 2019 at 22:57 | comment | added | alex.forencich | 'power' should put the card in D3cold by removing power to the card, but support for this at the motherboard level is uncommon. 'reset' issues an FLR to one function and will not change the card power state. | |
| Aug 7, 2018 at 0:24 | comment | added | slm♦ | @forest - thank you, that was going to be my next suggestion, raise a new Q and reference this one. I wrote this 5yrs ago and don't remember much beyond what I wrote here. It was basically, YMMV, it was all poorly documented, and was basically inconclusive beyond the leads I presented here. | |
| Aug 7, 2018 at 0:23 | comment | added | forest | @slm From reading the specs, it seems like all devices should support D3 cold. I'm creating a new question specifically for that, since it won't help me much to try to find an answer in the comments. | |
| Aug 7, 2018 at 0:22 | comment | added | slm♦ | @forest - I'm not following what you're telling/asking me? The link I referenced (#2) states that some H/W supports this, some will not. | |
| Aug 7, 2018 at 0:17 | comment | added | forest | @slm It looks like reset at least will put it into D3 hot, not D3 cold (so power is not actually cut), according to elixir.bootlin.com/linux/v4.7/source/drivers/pci/pci.c#L3590. | |
| Aug 7, 2018 at 0:04 | comment | added | forest | I think I'll check the kernel source code to see if toggling power actually puts it into D3. | |
| Aug 6, 2018 at 23:58 | comment | added | forest | For the first or second method? The latter, judging from kernel.org/doc/Documentation/ABI/testing/sysfs-bus-pci, does not seem like it would be reliable. FWIW, by power off I mean put in the D3 cold state (if I'm understanding the specs correctly). | |
| Aug 6, 2018 at 23:55 | comment | added | slm♦ | @forest - YMMV, some of them did work, but it seemed to depend on H/W to a certain extent. | |
| Aug 6, 2018 at 23:50 | comment | added | forest | Does this actually cut off the power to the PCIe device? | |
| Apr 13, 2017 at 12:36 | history | edited | CommunityBot | replaced http://unix.stackexchange.com/ with https://unix.stackexchange.com/ | |
| S Dec 4, 2016 at 20:06 | history | suggested | wjandrea | CC BY-SA 3.0 | Formatting. Fixed typo in reset command. Clarity. |
| Dec 4, 2016 at 19:23 | review | Suggested edits | |||
| S Dec 4, 2016 at 20:06 | |||||
| Apr 27, 2016 at 19:20 | comment | added | Eric Fossum | FYI - echo 0 totally seemed to kill the device. I cannot seem to get it back. | |
| Apr 28, 2013 at 2:00 | comment | added | zachd1_618 | I agree, its mind boggling. I have not figured out how to appropriately use setpci, so that could be a solution. As you said, the documentation is poor. I've been searching | |
| Apr 28, 2013 at 1:54 | comment | added | slm♦ | I think it might not be possible if none of these suggestions worked out? I'll take one more look through google. | |
| Apr 28, 2013 at 1:27 | comment | added | zachd1_618 | Good thought, but unfortunately that has no effect. Thanks for all the ideas! | |
| Apr 28, 2013 at 0:33 | comment | added | slm♦ | Are you unloading the kernel modules for that card prior to the power cycling? I think you have to do that as well. | |
| Apr 28, 2013 at 0:06 | comment | added | zachd1_618 | Thanks for the link. I've tried that however and it doesn't seem to do anything. Specifically, the device doesn't power cycle and the system still knows it is there. (When the card is on and plugged in, there are devices in /dev that I can watch). They don't disappear when I echo "1" > .... | |
| Apr 27, 2013 at 23:51 | history | edited | slm♦ | CC BY-SA 3.0 | added more details |
| Apr 27, 2013 at 23:42 | comment | added | slm♦ | I came across this thread on U&L, similar issue: there are some answers to that Q that say you can reset with this: echo "1" > /sys/bus/pci/devices/$NUMBER/reset. Read that Q though, there are conditions around doing it that way! | |
| Apr 27, 2013 at 23:30 | comment | added | zachd1_618 | Nothing shows up in slots, even though I have multiple cards plugged in. I do have a power directory in /sys/bus/pci/devices/$NUMBER/. But nothing seems to warrant setting 0 or 1 | |
| Apr 27, 2013 at 23:18 | history | answered | slm♦ | CC BY-SA 3.0 |