On Thu, Apr 18, 2019 at 1:39 PM Hans de Goede <hdegoede@xxxxxxxxxx> wrote: > > 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") > Cc: Kai-Heng Feng <kai.heng.feng@xxxxxxxxxxxxx> > Reported-by: Kai-Heng Feng <kai.heng.feng@xxxxxxxxxxxxx> > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> Queued up, thanks! I've tentatively tagged it for 4.20+ "stable" inclusion, please let me know if you think that's not appropriate.