summaryrefslogtreecommitdiffstats
path: root/acpi_battery-fribble-sysfs-files-from-a-resume-notifier.patch
diff options
context:
space:
mode:
Diffstat (limited to 'acpi_battery-fribble-sysfs-files-from-a-resume-notifier.patch')
-rw-r--r--acpi_battery-fribble-sysfs-files-from-a-resume-notifier.patch89
1 files changed, 0 insertions, 89 deletions
diff --git a/acpi_battery-fribble-sysfs-files-from-a-resume-notifier.patch b/acpi_battery-fribble-sysfs-files-from-a-resume-notifier.patch
deleted file mode 100644
index b3256a2d3..000000000
--- a/acpi_battery-fribble-sysfs-files-from-a-resume-notifier.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-From lenb@kernel.org Wed Mar 23 03:07:45 2011
-From: Len Brown <lenb@kernel.org>
-To: linux-acpi@vger.kernel.org
-Cc: Kyle McMartin <kyle@redhat.com>, Len Brown <len.brown@intel.com>
-Subject: [PATCH 35/42] ACPI battery: fribble sysfs files from a resume notifier
-Date: Wed, 23 Mar 2011 02:42:48 -0400
-
-From: Kyle McMartin <kyle@redhat.com>
-
-Commit da8aeb92 re-poked the battery on resume, but Linus reports that
-it broke his eee and partially reverted it in b23fffd7. Unfortunately
-this also results in my x201s giving crack values until the sysfs files
-are poked again. In the revert message, it was suggested that we poke it
-from a PM notifier, so let's do that.
-
-With this in place, I haven't noticed the units going nutty on my
-gnome-power-manager across a dozen suspends or so...
-
-Signed-off-by: Kyle McMartin <kyle@redhat.com>
-Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
-Signed-off-by: Len Brown <len.brown@intel.com>
----
- drivers/acpi/battery.c | 22 ++++++++++++++++++++++
- 1 files changed, 22 insertions(+), 0 deletions(-)
-
-diff --git a/drivers/acpi/battery.c b/drivers/acpi/battery.c
-index ac1a599..fcc13ac 100644
---- a/drivers/acpi/battery.c
-+++ b/drivers/acpi/battery.c
-@@ -33,6 +33,7 @@
- #include <linux/async.h>
- #include <linux/dmi.h>
- #include <linux/slab.h>
-+#include <linux/suspend.h>
-
- #ifdef CONFIG_ACPI_PROCFS_POWER
- #include <linux/proc_fs.h>
-@@ -102,6 +103,7 @@ struct acpi_battery {
- struct mutex lock;
- struct power_supply bat;
- struct acpi_device *device;
-+ struct notifier_block pm_nb;
- unsigned long update_time;
- int rate_now;
- int capacity_now;
-@@ -940,6 +942,21 @@ static void acpi_battery_notify(struct acpi_device *device, u32 event)
- power_supply_changed(&battery->bat);
- }
-
-+static int battery_notify(struct notifier_block *nb,
-+ unsigned long mode, void *_unused)
-+{
-+ struct acpi_battery *battery = container_of(nb, struct acpi_battery,
-+ pm_nb);
-+ switch (mode) {
-+ case PM_POST_SUSPEND:
-+ sysfs_remove_battery(battery);
-+ sysfs_add_battery(battery);
-+ break;
-+ }
-+
-+ return 0;
-+}
-+
- static int acpi_battery_add(struct acpi_device *device)
- {
- int result = 0;
-@@ -972,6 +989,10 @@ static int acpi_battery_add(struct acpi_device *device)
- #endif
- kfree(battery);
- }
-+
-+ battery->pm_nb.notifier_call = battery_notify;
-+ register_pm_notifier(&battery->pm_nb);
-+
- return result;
- }
-
-@@ -982,6 +1003,7 @@ static int acpi_battery_remove(struct acpi_device *device, int type)
- if (!device || !acpi_driver_data(device))
- return -EINVAL;
- battery = acpi_driver_data(device);
-+ unregister_pm_notifier(&battery->pm_nb);
- #ifdef CONFIG_ACPI_PROCFS_POWER
- acpi_battery_remove_fs(device);
- #endif
---
-1.7.4.1.343.ga91df
-