Messages in this thread | | | From | "Rafael J. Wysocki" <> | Subject | Common .suspend()/.resume() template for PCI devices (was: Re: [PATCH 1/3] Misc: phantom, synchronize_irq() on suspend) | Date | Tue, 16 Oct 2007 14:09:38 +0200 |
| |
On Tuesday, 16 October 2007 01:23, Andrew Morton wrote: > On Mon, 15 Oct 2007 09:32:28 -0700 > Jiri Slaby <jirislaby@gmail.com> wrote: > > > phantom, synchronize_irq() on suspend > > > > Wait after disabling device's interrupt until the handler finishes its > > work if still in progress. > > > > Signed-off-by: Jiri Slaby <jirislaby@gmail.com> > > > > --- > > commit 7e792ef384190b517f2fb27cd0237fa30dbe0775 > > tree 17b15e5ab7c90eef0e7ae57e532839e81b831d58 > > parent 5c008a5651ee92ebe020dd5108a66a7db74fe41d > > author Jiri Slaby <jirislaby@gmail.com> Mon, 15 Oct 2007 15:52:21 +0200 > > committer Jiri Slaby <jirislaby@gmail.com> Mon, 15 Oct 2007 15:52:21 +0200 > > > > drivers/misc/phantom.c | 2 ++ > > 1 files changed, 2 insertions(+), 0 deletions(-) > > > > diff --git a/drivers/misc/phantom.c b/drivers/misc/phantom.c > > index 5108b7c..6e61a79 100644 > > --- a/drivers/misc/phantom.c > > +++ b/drivers/misc/phantom.c > > @@ -378,6 +378,8 @@ static int phantom_suspend(struct pci_dev *pdev, pm_message_t state) > > iowrite32(0, dev->caddr + PHN_IRQCTL); > > ioread32(dev->caddr + PHN_IRQCTL); /* PCI posting */ > > > > + synchronize_irq(pdev->irq); > > + > > return 0; > > } > > > > What inspired this change? Some bug report, or does it just seem the right > thing to do?
Probably this thread: http://lkml.org/lkml/2007/10/10/261
> Would it be logical to do this operation from the PCI core somewhere, on > behalf of all PCI drivers?
Yes, it would.
The problem is that we don't have a common template for PCI devices' .suspend() and .resume() callbacks and I don't feel confident enough to propose one. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |