I have an I/O board with some hardware attached to it. The problem with this hardware is that if the attached hardware intermittently loses power and comes back again, the whole system needs to be rebooted in order for the host system to recognize it again. It is a Linux system by the way.
Is there a way to reinitialize the hardware without rebooting the entire system? Can I just not restart some systemd daemon, use some kind of interface to send an FLR signal to the PCIe slot of the hardware or simply use power states D4-D0-D4 to cut the power to the PCIe slot in order to trig a reset and restart the driver? How can one administrate such things in a Linux environment? Does anyone know?
I see that there are commands such as
I also found this method although I don't know whether it is up to date in 2024:
Is there a way to reinitialize the hardware without rebooting the entire system? Can I just not restart some systemd daemon, use some kind of interface to send an FLR signal to the PCIe slot of the hardware or simply use power states D4-D0-D4 to cut the power to the PCIe slot in order to trig a reset and restart the driver? How can one administrate such things in a Linux environment? Does anyone know?
I see that there are commands such as
rmmod
and modprobe
that can be used to unload and reload the driver but I'm not sure whether it will properly reset the underlying hardware.I also found this method although I don't know whether it is up to date in 2024:
How to Reset/Cycle Power to a PCIe Device?
I have a PCIe device that only works correctly when the computer is fully powered off then on again. Issuing a simple reboot or reboot -p command does not appear to cycle the power to the PCIe card,
unix.stackexchange.com
Last edited: