static void pciback_do_pcie_flr(struct pci_dev *dev, int exp_pos)
{
u16 status;
+
+ dev_dbg(&dev->dev, "doing PCIe FLR\n");
pci_block_user_cfg_access(dev);
{
u8 status;
+ dev_dbg(&dev->dev, "doing PCI FLR\n");
+
pci_block_user_cfg_access(dev);
/* Clear the command register to prevent new transactions */
dev_warn(&dev->dev, "Still busy after 1s; proceeding with reset anyway\n");
}
- pci_write_config_word(dev, af_pos + PCI_AF_CTRL, PCI_AF_CTRL_FLR);
+ pci_write_config_byte(dev, af_pos + PCI_AF_CTRL, PCI_AF_CTRL_FLR);
mdelay(200);
pciback_reload_config_space(dev);
u32 reg32;
u16 vendor_id, device_id, class_id;
u8 reg8;
-
+
+ dev_dbg(&dev->dev, "doing vendor specific resets\n");
+
pci_read_config_word(dev, PCI_VENDOR_ID, &vendor_id);
if (vendor_id != PCIBACK_VENDOR_INTEL)
return -ENXIO;
if (pm_pos == 0)
return -ENXIO;
+ dev_dbg(&dev->dev, "doing Dstate transition reset\n");
+
/* No_Soft_Reset - When set 1, this bit indicates that devices
* transitioning from D3hot to D0 because of PowerState commands
* do not perform an internal reset.
int i = 0;
int err = 0;
+ dev_dbg(&dev->dev, "doing PCIe secondary bus reset\n");
+
/* Enumerate all devices that share the same slot for the
* multifunction device case.
*/