power: Rework OS <-> Application interface

This commit simplifies OS <-> Application interface controlling power
management. In the previous approach application-based PM required
overriding sys_suspend() and sys_resume() functions. As these functions
actually implemented power state change, in such case application
basically had to provide own implementation of all PM-related stuff,
which was not portable and hard to maintain.

This commit changes this scheme: The sys_suspend() and sys_resume()
are now system functions while the application could either use
built-in power management policies or provide its own. All details
of power mode switching are now handled by the OS.

Also, this commit cleans up the Kconfig options related to system-level
power management grouping them under common CONFIG_SYS_PM_ prefix.

Signed-off-by: Piotr Zięcik <piotr.ziecik@nordicsemi.no>
This commit is contained in:
Piotr Zięcik 2019-02-04 15:05:23 +01:00 committed by Anas Nashif
commit c45961daae
26 changed files with 126 additions and 280 deletions

View file

@ -16,8 +16,6 @@
#include <nrf_common.h>
#include <nrf.h>
#include <soc_power.h>
/* Add include for DTS generated information */
#include <generated_dts_board.h>