Problem Description

mac80211 is the Linux stack for wireless hardware that requires MLME implementation in software. Currently, mac80211 does not implement any kind of suspend/resume feature which leads to the following problems even with a short suspend/resume cycle:

Starting Points

Support for key hardware removal/upload has been added to mac80211 recently, but the other configuration parameters need to be identified and restored to the driver (and thus hardware) at resume time. Additionally, API needs to be defined for drivers to call mac80211's suspend/resume functions at the right spot. It might be possible to have mac80211 register suspend/resume hooks itself but could well lead to ordering problems like trying to do settings on hardware that has not resumed yet.

Project Difficulty

This project requires getting familiar with mac80211 internals but should be fairly straight-forward because of the limited interaction with the code.

KernelNewbies: KernelProjects/Mac80211Suspend (last edited 2017-12-30 01:29:53 by localhost)