From: Lin Ming <ming.m.lin@intel.com>
To: Aaron Lu <aaron.lu@amd.com>
Cc: Zhang Rui <rui.zhang@intel.com>, Jeff Garzik <jgarzik@pobox.com>,
Alan Stern <stern@rowland.harvard.edu>,
"Rafael J. Wysocki" <rjw@sisk.pl>, Tejun Heo <tj@kernel.org>,
linux-kernel@vger.kernel.org, linux-ide@vger.kernel.org,
linux-scsi@vger.kernel.org, linux-pm@vger.kernel.org,
linux-acpi <linux-acpi@vger.kernel.org>
Subject: Re: [RFC PATCH v2 5/8] libata-acpi: add ata port runtime D3Cold support
Date: Mon, 19 Mar 2012 15:03:40 +0800 [thread overview]
Message-ID: <1332140620.17875.35.camel@minggr> (raw)
In-Reply-To: <20120319063544.GA2707@localhost.amd.com>
On Mon, 2012-03-19 at 14:35 +0800, Aaron Lu wrote:
> Hi,
>
> On Mon, Mar 19, 2012 at 01:27:00PM +0800, Lin Ming wrote:
> > On Mon, 2012-03-19 at 11:36 +0800, Aaron Lu wrote:
> > > Hi,
> > >
> > > On Thu, Mar 01, 2012 at 05:02:54PM +0800, Lin Ming wrote:
> > > > ATA port may support runtime D3Cold state, for example, Zero-power ODD case.
> > > > This patch adds wakeup notifier and enable/disable run_wake during
> > > > supend/resume.
> > >
> > > I've been thinking this for some time and realized that it would be
> > > impossible for AMD's platform to work with this patch, the reason:
> > > There is no _PRW in AMD's acpi implementation. And no _PRW would mean
> > > the device is not wake up capable in current Linux ACPI implementation.
> > >
> > > I've checked the ACPI spec and it said: 'the _PRW is only required for
> > > devices that have the ability to wake the system from a system sleeping
> > > state.'
> > > So I'm not sure if _PRW fits here, since the most common use case for
> > > zpodd would be: odd put to D3 cold and system is at S0, and odd is back
> > > to D0 when necessary without affecting the system sleep state.
> > >
> > > I suggest we install the acpi pm notifier on the handle based on the
> > > following two criteria:
> > > 1 This ata device is DA capable;
> > > 2 Its acpi device indicates it is able to wake up itself in S0(_S0W
> > > evaluates 4).
> >
> > OK, reasonable to me.
> >
> > >
> > > Does this make sense and will this work for your platform?
> >
> > Yes.
> >
>
> Great ;-)
>
> > >
> > > Another problem is how to place this ODD device into D3 cold state,
> > > since our platform uses _PS3 control method to power off it. Do you have
> > > any suggestions?
> >
> > acpi_bus_set_power will execute _PS3 too.
> >
> > So I think no problem for AMD's platform.
> >
>
> Sorry I didn't make it clear.
> The problem here is, we are going to set the device power state to D3
> cold, and current OSPM has no support for it.
>
> Another patch of yours solved this problem by defining:
> 1 Device supports D3 cold if it has _PR3;
> 2 For a device to be put to D3 cold, power off all the power resources
> referenced in its _PR3.
>
> Since this can't work for AMD's platform(there is no _PR3 for the sata
> acpi device), I would like to change this a little bit:
> 1 Device supports D3 cold if it has _PR3 or _PS3;
_PS3 may only mean D3Hot support for other device.
You mentioned that AMD platform defined a special device, named ODDZ.
How about device supports D3 cold if
_PR3 or (is ODDZ and ODDZ._PS3)?
> 2 For a device to be put to D3 cold, execute _PS3 first if available and
> then deal with _PR3 as above.
__acpi_bus_set_power(...) has done this.
>
> What do you think of this?
> If you are OK to the above idea, I can change the corresponding patch for
> you to review.
OK.
Thanks,
Lin Ming
>
> Thanks,
> Aaron
>
>
next prev parent reply other threads:[~2012-03-19 7:03 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-01 9:02 [RFC PATCH v2 0/8] ACPI D3Cold state and SATA ZPODD support Lin Ming
2012-03-01 9:02 ` [RFC PATCH v2 1/8] ACPI: Introduce ACPI D3_COLD state support Lin Ming
2012-03-12 2:00 ` Aaron Lu
2012-03-12 2:00 ` Aaron Lu
2012-03-12 2:43 ` Lin Ming
2012-03-01 9:02 ` [RFC PATCH v2 2/8] ACPI: Add interface to register/unregister device to/from power resources Lin Ming
2012-03-19 1:32 ` Lin Ming
2012-03-01 9:02 ` [RFC PATCH v2 3/8] PCI: Move acpi_dev_run_wake to acpi core Lin Ming
2012-03-01 9:02 ` [RFC PATCH v2 4/8] libata-acpi: set acpi state for SATA port Lin Ming
2012-03-12 2:02 ` Aaron Lu
2012-03-12 2:02 ` Aaron Lu
2012-03-01 9:02 ` [RFC PATCH v2 5/8] libata-acpi: add ata port runtime D3Cold support Lin Ming
2012-03-19 3:36 ` Aaron Lu
2012-03-19 3:36 ` Aaron Lu
2012-03-19 5:27 ` Lin Ming
2012-03-19 6:35 ` Aaron Lu
2012-03-19 6:35 ` Aaron Lu
2012-03-19 7:03 ` Lin Ming [this message]
2012-03-21 4:48 ` Aaron Lu
2012-03-21 4:48 ` Aaron Lu
2012-03-01 9:02 ` [RFC PATCH v2 6/8] libata-acpi: register/unregister device to/from power resource Lin Ming
2012-03-01 9:02 ` [RFC PATCH v2 7/8] PM / Runtime: Add can_power_off flag to subsys data Lin Ming
2012-03-19 1:34 ` Lin Ming
2012-03-01 9:02 ` [RFC PATCH v2 8/8] [SCSI] sr: check and enable Zero-power ODD support Lin Ming
2012-03-01 16:02 ` Alan Stern
2012-03-01 16:02 ` Alan Stern
2012-03-02 7:02 ` Lin Ming
2012-03-02 15:08 ` Aaron Lu
2012-03-03 3:05 ` Lin Ming
2012-03-12 2:49 ` Lin Ming
2012-03-12 4:53 ` Aaron Lu
2012-03-12 4:53 ` Aaron Lu
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=1332140620.17875.35.camel@minggr \
--to=ming.m.lin@intel.com \
--cc=aaron.lu@amd.com \
--cc=jgarzik@pobox.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=rjw@sisk.pl \
--cc=rui.zhang@intel.com \
--cc=stern@rowland.harvard.edu \
--cc=tj@kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.