I am trying to debug somewhat strange problem in the device driver for the PCIe FPGA device. Both the device driver and the FPGA image are developed in the house.
The target system is x86, and the OS is fedora 9. It has a PCIe card with the FPGA plugged in it's only PCIe slot. The FPGA image is loaded after the boot from the EEPROM.
The driver is written in such a way that it uses the /sys/bus/pci/devices/0000:02:00.0/ resource files (where 0000:02:00.0 is the PCI slot of the card containing the FPGA) to configure the FPGA.
When the system boots (or when it returns from the hibernation), the FPGA link seams to be lost, and the resource files are missing. When the FPGA boots properly, everything works fine (the resource files are there). When the system enters the hibernation, the FPGA is powered off. When it returns from the hibernation, the FPGA is powered on, before starting the driver initialization.
I am suspecting at next things :
- a bug in firmware - something related to PCI plug in?
- a bug in kernel - least likely, because other PCI cards are recognized fine. Only
this PCI card makes problems
And the questions are :
- Has anyone had similar problems?
- What else could be wrong?
- Any suggestions on how to debug this issue?
EDIT
I just found this bug, which is very similar to the problem I am seeing.