HID: intel-ish-hid: ipc: finish power flow for EHL OOB
authorZhang Lixu <lixu.zhang@intel.com>
Wed, 16 Dec 2020 06:36:39 +0000 (14:36 +0800)
committerJiri Kosina <jkosina@suse.cz>
Wed, 6 Jan 2021 16:20:02 +0000 (17:20 +0100)
commit2e23a70edabe933284f690dff49497fb6b82b0e5
tree7b1401ed1674dd96321764e7e99fe46011f0ad5e
parentde925e2fbb44eed8a2a7ce166b485fed5eae01aa
HID: intel-ish-hid: ipc: finish power flow for EHL OOB

The EHL (Elkhart Lake) based platforms provide a OOB (Out of band)
service, which allows wakup device when the system is in S5 (Soft-Off
state). This OOB service can be enabled/disabled from BIOS settings. When
enabled, the ISH device gets PME wake capability. To enable PME wakeup,
driver also needs to enable ACPI GPE bit.

Once wakeup, BIOS will clear the wakeup bit to identify wakeup is
successful. So driver need to re-enable it in resume function to
keep the next wakeup capability.

Since this feature is only present on EHL, we use EHL PCI device id to
enable this feature.

Co-developed-by: Najumon Ba <najumon.ba@intel.com>
Signed-off-by: Najumon Ba <najumon.ba@intel.com>
Signed-off-by: Even Xu <even.xu@intel.com>
Signed-off-by: Zhang Lixu <lixu.zhang@intel.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/intel-ish-hid/ipc/pci-ish.c