We have an FPGA huins board connected to Windows 7 host machine. To flash the firmware we reset the FPGA board, at this point the PCIe link to the host is off (LED is turned orange). After flashing the firmware to bring the PCIe link up we need to restart the host machine.
However we want to avoid doing a restart, for this we carried out following mechanism
Connected the PCIe slot to an external power source, once the firmware is flashed we switch off the power to the particular PCIe slot and bring the power on, with this approach the PCIe link LED turns green but device is not enumerated on the host
I have following questions wrt this:
1) Is there a way to control power to a PCIe slot without any external power source?
2) How to trigger a reenumeration of the PCIe device? Is there any way to talk to PCIe driver to reenumerate the device connected to the slot?
Info: There is a phy reset button on the FPGA board, with this the link is up and the host is able to reenumerate the device but so far we haven't found a way to issue this reset via some command. Here the host is able to detect the device without restart, however I would like to know is there anything which can be done to do the similar thing from the host side