On Sat, Apr 29, 2017 at 12:21:57PM +0200, Rafael J. Wysocki wrote: > On Friday, April 28, 2017 11:33:02 PM Rafael J. Wysocki wrote: > > On Friday, April 28, 2017 05:16:02 PM Imre Deak wrote: > > > Some drivers - like i915 - may not support the system suspend direct > > > complete optimization due to differences in their runtime and system > > > suspend sequence. Add a flag that when set resumes the device before > > > calling the driver's system suspend handlers which effectively disables > > > the optimization. > > > > > > Needed by the next patch fixing suspend/resume on i915. > > > > > > Suggested by Rafael. > > > > > > Cc: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > > > Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> > > > Cc: linux-pci@xxxxxxxxxxxxxxx > > > Cc: stable@xxxxxxxxxxxxxxx > > > Signed-off-by: Imre Deak <imre.deak@xxxxxxxxx> > > > > Acked-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > > > > The reason why the opt-out flag was not added on day one was because we were > > not sure whether or not it would be necessary at all. > > > > Quite evidently, it is needed. > > But that said, it actually can be implemented as a flag in dev_flags too, say > PCI_DEV_FLAGS_NEEDS_RESUME, in analogy with PCI_DEV_FLAGS_NO_D3 that's > already there. > > The struct size would not need to grow then which I guess would be better? Hm, both the bit field and the flag would need to increase if running out of bits, so what's the difference? (Atm, the struct size wouldn't change either way.) --Imre