zephyr/kernel
Piotr Zięcik c45961daae 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>
2019-02-19 13:25:36 -05:00
..
include x86: implement interrupt stack trampoline 2019-02-14 12:46:36 -05:00
atomic_c.c
CMakeLists.txt
compiler_stack_protect.c
device.c
errno.c
idle.c power: Fix naming of Kconfig options controlling deep sleep states 2019-02-12 07:46:32 -05:00
init.c
int_latency_bench.c
Kconfig kernel: minor syntax fix in Kconfig 2019-02-12 08:29:33 -06:00
Kconfig.power_mgmt power: Rework OS <-> Application interface 2019-02-19 13:25:36 -05:00
mailbox.c
mem_domain.c
mem_slab.c
mempool.c
msg_q.c
mutex.c
pipes.c include: misc: util.h: Rename min/max to MIN/MAX 2019-02-14 22:16:03 -05:00
poll.c
queue.c
sched.c kernel/sched: _thread_priority_set needs to be sched_lock aware 2019-02-08 14:49:39 -05:00
sem.c
smp.c
stack.c
system_work_q.c
thread_abort.c
thread.c
timeout.c include: misc: util.h: Rename min/max to MIN/MAX 2019-02-14 22:16:03 -05:00
timer.c
userspace_handler.c
userspace.c
version.c
work_q.c kernel/work_q: Fix block-in-spinlock bug 2019-02-14 19:45:20 -05:00