On Fri, Jul 08, 2005 at 02:34:56PM -0400, John W. Linville wrote: > @@ -301,6 +335,16 @@ pci_set_power_state(struct pci_dev *dev, > udelay(200); > dev->current_state = state; > > + /* According to section 5.4.1 of the "PCI BUS POWER MANAGEMENT > + * INTERFACE SPECIFICATION, REV. 1.2", a device transitioning > + * from D3hot to D0 _may_ perform an internal reset, thereby > + * going to "D0 Uninitialized" rather than "D0 Initialized". > + * In that case, we need to restore at least the BARs so that > + * the device will be accessible to its driver. > + */ > + if (need_restore) > + pci_restore_bars(dev); > + This code doesn't even build, as need_restore isn't a global variable. Care to redo this patch (and merge it with your other one) and resend it? thanks, greg k-h