Having problems resetting a PCI device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I have a PCI device that is sitting behind a bridge. 

Under certain reproducible circumstances the PCI device will become inactive. Reading the PCI config space returns all 0xFFFFFFFF.

The bridge appears to still be functional. Reading the status from the bridge I see a Fatal Error due to a Surprise Down event.

I am trying to figure out how to bring the device back online.

I tried toggling the secondary bus reset bit of the Bridge Control Register but it doesn't appear to make any difference. I still see 0xFFFFFFFF in the device config space.

I provided a pci_error_handler but the error_detected() function is not getting called.

Given that these two methods are not helping me out what other choices do I have to either reset the PCI device or hot-plug the device from a kernel driver. Or some other method of bring the device back to life.

Note that I am running Linux 4.8 in dom0 on Xen (if that makes a difference).

Thanks,
Kelly




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux