On Mon, Mar 09, 2020 at 11:55:11AM -0400, Sinan Kaya wrote: > On 3/7/2020 12:20 PM, Stanislav Spassov wrote: > > + rc = pci_dev_poll_until_not_equal(dev, PCI_VENDOR_ID, 0xffff, > > + 0x0001, reset_type, timeout, > > + &waited, &id); > > + if (rc) > > + return rc; > > + > > If I remember right, this doesn't work for VF sending CRS because VF > always returns 0xffff for VENDOR_ID register. Is this required by the PCIe spec? i think the only requirement is the 1s wait after PF has done the VF enable. See Implementation Note right above section 2.3.1.1 in the Base spec 5.0. If this behavior is different for maybe a specific SRIOV device we should probably quirk the standard behavior? The rules are mentioned in so many places, but looking through the SRIOV section's doesn't seem to specify special rules for VF's other than the wait time after VF enable.