linux/drivers/net/wireless/intel/iwlwifi/fw
Haim Dreyfuss 4da46a06d4 wifi: iwlwifi: mvm: Add support for wowlan info notification
IMR (Isolated Memory Regions) is a mechanism to protect memory regions
from unwarranted access by agents in the system that should not have access
to that memory.

When IMR is enabled, pages in the DRAM will be located within the IMR
memory space, accessible only by the device.
As a side effect, during S4 (a.k.a hibernate) the IMR memory space
is not retained.

While the DRAM is saved to the disk and restored by the OS upon resume,
the IMR, which is hidden from the OS neither saved upon suspend nor
restored upon resume.

As a consequence of the above, it turned out that commands cannot
be sent as part of the resume flow, and so after ending
d3 the FW needs to use notifications instead of cmd-resp.

The resume flow becomes asynchronous, with a series
of notifications, starting with wowlan_info_notif, through
wowlan_pkt_notif and complete the resume flow by d3_end_notif.

This patch adds the support for wowlan info notification.

The wake packet has been removed from the wowlan info struct
and will be handled in a dedicated notification.

Signed-off-by: Yedidya Benshimol <yedidya.ben.shimol@intel.com>
Signed-off-by: Haim Dreyfuss <haim.dreyfuss@intel.com>
Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
Link: https://lore.kernel.org/r/20220906161827.3ce8deefd929.Ieba8610e8bb4bec788076371ae38becb4a3d20d5@changeid
Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
2022-09-18 14:40:15 +03:00
..
api wifi: iwlwifi: mvm: Add support for wowlan info notification 2022-09-18 14:40:15 +03:00
acpi.c iwlwifi: fw: init SAR GEO table only if data is present 2022-05-18 12:53:53 +02:00
acpi.h iwlwifi: acpi: move ppag code from mvm to fw/acpi 2022-03-10 09:23:29 +02:00
dbg.c iwlwifi: dbg: check trigger data before access 2022-03-10 09:23:29 +02:00
dbg.h iwlwifi: yoyo: send hcmd to fw after dump collection completes. 2022-02-18 10:40:55 +02:00
debugfs.c iwlwifi: prefer WIDE_ID() over iwl_cmd_id() 2022-02-18 10:40:50 +02:00
debugfs.h
dump.c iwlwifi: dump RCM error tables 2021-12-21 12:35:05 +02:00
error-dump.h iwlwifi: fw: Replace zero-length arrays with flexible-array members 2022-04-06 10:18:08 +03:00
file.h iwlwifi: fw: Replace zero-length arrays with flexible-array members 2022-04-06 10:18:08 +03:00
img.c iwlwifi: make iwl_fw_lookup_cmd_ver() take a cmd_id 2022-02-18 10:40:50 +02:00
img.h iwlwifi: mvm: remove cipher scheme support 2022-03-10 09:23:27 +02:00
init.c iwlwifi: make iwl_fw_lookup_cmd_ver() take a cmd_id 2022-02-18 10:40:50 +02:00
notif-wait.c
notif-wait.h
paging.c iwlwifi: avoid void pointer arithmetic 2022-02-18 10:40:50 +02:00
pnvm.c iwlwifi: fix various more -Wcast-qual warnings 2022-02-18 10:40:50 +02:00
pnvm.h iwlwifi: move get pnvm file name to a separate function 2021-08-26 23:38:16 +03:00
rs.c iwlwifi: fix iwl_legacy_rate_to_fw_idx 2022-02-03 10:24:47 +02:00
runtime.h iwlwifi: mvm: add a flag to reduce power command. 2022-03-10 09:23:26 +02:00
smem.c iwlwifi: prefer WIDE_ID() over iwl_cmd_id() 2022-02-18 10:40:50 +02:00
uefi.c iwlwifi: Switch to proper EFI variable store interface 2022-06-20 12:43:25 +02:00
uefi.h iwlwifi: support SAR GEO Offset Mapping override via BIOS 2021-12-07 20:06:47 +02:00