public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Linux PM list <linux-pm@vger.kernel.org>
Cc: ACPI Devel Mailing List <linux-acpi@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>, Len Brown <lenb@kernel.org>,
	Matthew Garrett <mjg59@srcf.ucam.org>,
	platform-driver-x86@vger.kernel.org,
	Eric Piel <eric.piel@tremplin-utc.net>,
	Mattia Dongili <malattia@linux.it>,
	Harald Welte <laforge@gnumonks.org>
Subject: [PATCH 0/21] ACPI / PM: Switch ACPI bus type and drivers to dev_pm_ops
Date: Sat, 23 Jun 2012 23:06:06 +0200	[thread overview]
Message-ID: <201206232306.06602.rjw@sisk.pl> (raw)

Hi all,

The following patchset converts the ACPI bus type and all of the ACPI drivers
to the power management handling based on struct dev_pm_ops.  It does that in
the following way:

(1) The (unused) pm_message_t argument is dropped from the ACPI driver suspend
    callback throughout the tree (patch [1/21]).

(2) A struct dev_pm_ops object is defined for the ACPI bus type (patches
    [2-3/21]) in such a way that
    (a) driver callbacks from struct acpi_device_ops are executed for drivers
        that provide them,
    (b) driver callbacks from struct dev_pm_ops are executed for drivers that
        provide them,
    (c) 0 is returned for the remaining drivers.
    Only suspend/resume, freeze/thaw, poweroff/restore bus type callbacks are
    defined, because they are sufficient for the transition (they are removed
    later on anyway).

(3) All ACPI drivers that use PM callbacks are converted to the PM handling
    based on struct dev_pm_ops (patches [4-18/21]).

(4) The ACPI bus type is modified not to execute driver callbacks from
    struct acpi_device_ops any more (patch [19/21]).  This affects several
    x86 platform drivers and the ACPI power meter driver too.

(5) The driver PM callbacks in struct acpi_device_ops are removed
    (patch [20/21]).

(6) The ACPI bus type PM callbacks added in step (2) are dropped, because they
    aren't necessary any more (the PM core will execute the driver callbacks
    directly now).

As a result, the redundant bus type level of PM handling between ACPI drivers
and the PM core is eliminated and the ACPI drivers are now able to define
runtime PM callbacks, proper hibernation callbacks and late/early callbacks
for system suspend/resume.

The patchset has been tested on Toshiba Portege R500 and more testing is in
the works.  If there are no objections, I'd like to push if for 3.6 through
the linux-pm tree.

If you want to give it a go, it's available from the pm-acpi branch of the
linux-pm tree.  Please note, however, that this branch will be rebased, because
it is based on the linux-pm tree's linux-next branch at the moment.

Thanks,
Rafael


             reply	other threads:[~2012-06-23 21:17 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-23 21:06 Rafael J. Wysocki [this message]
2012-06-23 21:08 ` [PATCH 1/21] ACPI / PM: Drop pm_message_t argument from device suspend callback Rafael J. Wysocki
2012-06-23 21:08 ` [PATCH 2/21] ACPI / PM: Make acpi_bus_type use struct dev_pm_ops for PM handling Rafael J. Wysocki
2012-06-23 21:09 ` [PATCH 3/21] ACPI / PM: Make acpi_bus_type use driver struct dev_pm_ops callbacks Rafael J. Wysocki
2012-06-23 21:10 ` [PATCH 4/21] ACPI: Use struct dev_pm_ops for power management in the fan driver Rafael J. Wysocki
2012-06-23 21:11 ` [PATCH 5/21] ACPI: Use struct dev_pm_ops for power management in the thermal driver Rafael J. Wysocki
2012-06-23 21:11 ` [PATCH 6/21] ACPI: Use struct dev_pm_ops for power management in processor driver Rafael J. Wysocki
2012-06-23 21:12 ` [PATCH 7/21] ACPI: Use struct dev_pm_ops for power management in the AC driver Rafael J. Wysocki
2012-06-23 21:13 ` [PATCH 8/21] ACPI: Use struct dev_pm_ops for power management in the battery driver Rafael J. Wysocki
2012-06-23 21:13 ` [PATCH 9/21] ACPI: Use struct dev_pm_ops for power management in the button driver Rafael J. Wysocki
2012-06-23 21:14 ` [PATCH 10/21] ACPI: Use struct dev_pm_ops for power management in the power driver Rafael J. Wysocki
2012-06-23 21:14 ` [PATCH 11/21] ACPI: Use struct dev_pm_ops for power management in the SBS driver Rafael J. Wysocki
2012-06-23 21:15 ` [PATCH 12/21] toshiba_acpi: Use struct dev_pm_ops for power management Rafael J. Wysocki
2012-06-23 21:16 ` [PATCH 13/21] hp_accel: " Rafael J. Wysocki
2012-06-24 20:00   ` Éric Piel
2012-06-24 20:14     ` Rafael J. Wysocki
2012-06-23 21:17 ` [PATCH 14/21] sony-laptop: " Rafael J. Wysocki
2012-06-23 21:17 ` [PATCH 15/21] panasonic-laptop: " Rafael J. Wysocki
2012-06-23 21:18 ` [PATCH 16/21] toshiba_bluetooth: " Rafael J. Wysocki
2012-06-24 12:40   ` Vikram Dhillon
2012-06-24 20:00     ` Rafael J. Wysocki
2012-06-23 21:18 ` [PATCH 17/21] xo15-ebook: " Rafael J. Wysocki
2012-06-23 21:19 ` [PATCH 18/21] acpi_power_meter: " Rafael J. Wysocki
2012-06-23 21:20 ` [PATCH 19/21] ACPI / PM: Do not execute legacy driver PM callbacks Rafael J. Wysocki
2012-06-23 21:21 ` [PATCH 20/21] ACPI / PM: Drop legacy driver PM callbacks that are not used any more Rafael J. Wysocki
2012-06-23 21:22 ` [PATCH 21/21] ACPI / PM: Drop PM callbacks from the ACPI bus type Rafael J. Wysocki
2012-06-28 22:11 ` [PATCH missing/21] classmate-laptop: Use struct dev_pm_ops for power management Rafael J. Wysocki
2012-06-29 11:39   ` Thadeu Cascardo
2012-06-29 21:52     ` Rafael J. Wysocki
2012-06-28 22:26 ` [PATCH missing 2/21] fujitsu-tablet: " Rafael J. Wysocki
2012-07-19  5:04 ` [PATCH 0/21] ACPI / PM: Switch ACPI bus type and drivers to dev_pm_ops Len Brown
2012-07-19  9:11   ` Rafael J. Wysocki

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=201206232306.06602.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=eric.piel@tremplin-utc.net \
    --cc=laforge@gnumonks.org \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=malattia@linux.it \
    --cc=mjg59@srcf.ucam.org \
    --cc=platform-driver-x86@vger.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox