diff options
author | Hans de Goede <hdegoede@redhat.com> | 2019-04-18 13:39:33 +0200 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2019-04-18 16:46:45 +0200 |
commit | c8afd03486c26accdda4846e5561aa3f8e862a9d (patch) | |
tree | e55d0a866d79ae99a2a6b7868e84a60d5b89a316 /drivers/gpio | |
parent | dc4060a5dc2557e6b5aa813bf5b73677299d62d2 (diff) | |
download | linux-c8afd03486c26accdda4846e5561aa3f8e862a9d.tar.bz2 |
ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for hibernate
Commit 48402cee6889 ("ACPI / LPSS: Resume BYT/CHT I2C controllers from
resume_noirq") makes acpi_lpss_{suspend_late,resume_early}() bail early
on BYT/CHT as resume_from_noirq is set.
This means that on resume from hibernate dw_i2c_plat_resume() doesn't get
called by the restore_early callback, acpi_lpss_resume_early(). Instead it
should be called by the restore_noirq callback matching how things are done
when resume_from_noirq is set and we are doing a regular resume.
Change the restore_noirq callback to acpi_lpss_resume_noirq so that
dw_i2c_plat_resume() gets properly called when resume_from_noirq is set
and we are resuming from hibernate.
Likewise also change the poweroff_noirq callback so that
dw_i2c_plat_suspend gets called properly.
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=202139
Fixes: 48402cee6889 ("ACPI / LPSS: Resume BYT/CHT I2C controllers from resume_noirq")
Reported-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Cc: 4.20+ <stable@vger.kernel.org> # 4.20+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/gpio')
0 files changed, 0 insertions, 0 deletions