init: Add protection against incorrect levels or priorities

Initialization level can be one of five predefined.
Init priority is numeric from 1 to 99. If init level or priority
is defined wrong, linker prints out the message and stops.

Change-Id: I165a32ffb668cda983fd48eb2aa7b94998e31a18
Signed-off-by: Dmitriy Korovkin <dmitriy.korovkin@windriver.com>
This commit is contained in:
Dmitriy Korovkin 2015-10-26 15:40:46 -04:00 committed by Anas Nashif
commit fb6de2d486
4 changed files with 22 additions and 0 deletions

View file

@ -71,6 +71,11 @@
DEVICE_INIT_LEVEL(APPLICATION) \
__device_init_end = .; \
/* define a section for undefined device initialization levels */
#define DEVICE_INIT_UNDEFINED_SECTION() \
KEEP(*(SORT(.init_[_A-Z0-9]*))) \
#ifdef CONFIG_X86 /* LINKER FILES: defines used by linker script */
/* Should be moved to linker-common-defs.h */
#if defined(CONFIG_XIP)