From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>,
Shaohua Li <shaohua.li@intel.com>,
linux acpi <linux-acpi@vger.kernel.org>,
pm list <linux-pm@lists.linux-foundation.org>
Subject: Re: [PATCH 1/5] introduce .wakeup_event ops
Date: Thu, 20 Aug 2009 21:37:28 +0200 [thread overview]
Message-ID: <200908202137.28358.rjw@sisk.pl> (raw)
In-Reply-To: <Pine.LNX.4.44L0.0908201118490.2656-100000@iolanthe.rowland.org>
On Thursday 20 August 2009, Alan Stern wrote:
> On Thu, 20 Aug 2009, Matthew Garrett wrote:
>
> > > If the wakeup signal isn't squelched at the source, as part of the
> > > event handling, will we get an interrupt storm? Will the uhci-hcd
> > > resume routine be able to handle this or does it need to be done
> > > earlier? In other words, do we need special-purpose code in the PCI
> > > layer to handler it?
> >
> > No, nothing special needs to be done at the PCI level. It seems that
> > (for Intel at least) there's no need to do anything special at the UHCI
> > level either.
>
> This contradicts what Shaohua wrote:
>
> "The only case is UHCI in my mind. Because UHCI has non-standard wakeup
> event register. If BIOS doesn't handle it correctly (for example, not
> clear the wakeup event after a GPE), we will keep see the wakeup
> event."
I'm not sure what the phrase "we will keep see the wakeup event" is supposed to
mean. For us to "see" any events there has to be a GPE set up or PCIe PME
enabled on the right root port. Otherwise I don't see how we can receive the
event at all.
The bus type wakeup code won't know how to clear the register to acknowledge
the wakeup, but the driver's ->runtime_resume() callback surely can do that.
> What code would be responsible for setting and clearing the
> non-standard wakeup register? Are you assuming that ACPI will always
> handle it? I guess that's a reasonable assumption -- if ACPI wasn't
> aware of the register then it never would get enabled, and conversely,
> if ACPI was aware and could enable the register, then ACPI ought to
> disable it when necessary.
In any case the event has to be raised in one of the standard ways.
Thanks,
Rafael
next prev parent reply other threads:[~2009-08-20 19:37 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-19 7:24 [PATCH 1/5] introduce .wakeup_event ops Shaohua Li
2009-08-19 11:52 ` Matthew Garrett
2009-08-20 3:24 ` Shaohua Li
2009-08-20 7:40 ` Matthew Garrett
2009-08-21 6:33 ` Shaohua Li
2009-08-21 9:23 ` Matthew Garrett
2009-08-24 1:50 ` Shaohua Li
2009-08-24 2:48 ` Matthew Garrett
[not found] ` <20090824082722.GA32264@srcf.ucam.org>
[not found] ` <1251103572.24336.8.camel@sli10-desk.sh.intel.com>
2009-08-24 18:49 ` Rafael J. Wysocki
2009-08-19 14:49 ` Alan Stern
2009-08-20 3:04 ` Shaohua Li
2009-08-20 14:11 ` Alan Stern
2009-08-20 14:14 ` Matthew Garrett
2009-08-20 14:38 ` Alan Stern
2009-08-20 14:42 ` Matthew Garrett
2009-08-20 15:22 ` Alan Stern
2009-08-20 19:37 ` Rafael J. Wysocki [this message]
2009-08-20 21:10 ` Alan Stern
2009-08-20 21:27 ` Rafael J. Wysocki
2009-08-21 6:46 ` Shaohua Li
2009-08-21 14:33 ` Alan Stern
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200908202137.28358.rjw@sisk.pl \
--to=rjw@sisk.pl \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=mjg59@srcf.ucam.org \
--cc=shaohua.li@intel.com \
--cc=stern@rowland.harvard.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox