commit cda1472944648652764c6980f5ee3f3e91459ef3
Author: Thomas Schöpping <tschoepp@cit-ec.uni-bielefeld.de>
Date:   Mon Oct 28 11:15:03 2019 +0100

    Major SSSP overhaul:
    - SSSP no works even without Bootloader (AMiRo-OS implements startup and shutdown phases)
    - MSI and calendar synchronization are currently not available (WIP)
    - lots of minor changes

diff --git a/modules/aos_chconf.h b/modules/aos_chconf.h
index 229750a..f7b039a 100644
--- a/modules/aos_chconf.h
+++ b/modules/aos_chconf.h
@@ -175,7 +175,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
  * @note    The default is @p TRUE.
  */
 #if !defined(CH_CFG_USE_REGISTRY)
-#define CH_CFG_USE_REGISTRY                 FALSE
+#define CH_CFG_USE_REGISTRY                 TRUE
 #endif
 
 /**
@@ -628,24 +628,30 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
  * @brief   System structure extension.
  * @details User fields added to the end of the @p ch_system_t structure.
  */
+#if !defined(CH_CFG_SYSTEM_EXTRA_FIELDS)
 #define CH_CFG_SYSTEM_EXTRA_FIELDS                                          \
   /* Add threads custom fields here.*/
+#endif
 
 /**
  * @brief   System initialization hook.
  * @details User initialization code added to the @p chSysInit() function
  *          just before interrupts are enabled globally.
  */
+#if !defined(CH_CFG_SYSTEM_INIT_HOOK)
 #define CH_CFG_SYSTEM_INIT_HOOK() {                                         \
   /* Add threads initialization code here.*/                                \
 }
+#endif
 
 /**
  * @brief   Threads descriptor structure extension.
  * @details User fields added to the end of the @p thread_t structure.
  */
+#if !defined(CH_CFG_THREAD_EXTRA_FIELDS)
 #define CH_CFG_THREAD_EXTRA_FIELDS                                          \
   /* Add threads custom fields here.*/
+#endif
 
 /**
  * @brief   Threads initialization hook.
@@ -654,39 +660,49 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
  * @note    It is invoked from within @p _thread_init() and implicitly from all
  *          the threads creation APIs.
  */
+#if !defined(CH_CFG_THREAD_INIT_HOOK)
 #define CH_CFG_THREAD_INIT_HOOK(tp) {                                       \
   /* Add threads initialization code here.*/                                \
 }
+#endif
 
 /**
  * @brief   Threads finalization hook.
  * @details User finalization code added to the @p chThdExit() API.
  */
+#if !defined(CH_CFG_THREAD_EXIT_HOOK)
 #define CH_CFG_THREAD_EXIT_HOOK(tp) {                                       \
   /* Add threads finalization code here.*/                                  \
 }
+#endif
 
 /**
  * @brief   Context switch hook.
  * @details This hook is invoked just before switching between threads.
  */
+#if !defined(CH_CFG_CONTEXT_SWITCH_HOOK)
 #define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) {                              \
   /* Context switch code here.*/                                            \
 }
+#endif
 
 /**
  * @brief   ISR enter hook.
  */
+#if !defined(CH_CFG_IRQ_PROLOGUE_HOOK)
 #define CH_CFG_IRQ_PROLOGUE_HOOK() {                                        \
   /* IRQ prologue code here.*/                                              \
 }
+#endif
 
 /**
  * @brief   ISR exit hook.
  */
+#if !defined(CH_CFG_IRQ_EPILOGUE_HOOK)
 #define CH_CFG_IRQ_EPILOGUE_HOOK() {                                        \
   /* IRQ epilogue code here.*/                                              \
 }
+#endif
 
 /**
  * @brief   Idle thread enter hook.
@@ -694,9 +710,11 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *          should be invoked from here.
  * @note    This macro can be used to activate a power saving mode.
  */
+#if !defined(CH_CFG_IDLE_ENTER_HOOK)
 #define CH_CFG_IDLE_ENTER_HOOK() {                                          \
   /* Idle-enter code here.*/                                                \
 }
+#endif
 
 /**
  * @brief   Idle thread leave hook.
@@ -704,44 +722,54 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *          should be invoked from here.
  * @note    This macro can be used to deactivate a power saving mode.
  */
+#if !defined(CH_CFG_IDLE_LEAVE_HOOK)
 #define CH_CFG_IDLE_LEAVE_HOOK() {                                          \
   /* Idle-leave code here.*/                                                \
 }
+#endif
 
 /**
  * @brief   Idle Loop hook.
  * @details This hook is continuously invoked by the idle thread loop.
  */
+#if !defined(CH_CFG_IDLE_LOOP_HOOK)
 #define CH_CFG_IDLE_LOOP_HOOK() {                                           \
   /* Idle loop code here.*/                                                 \
 }
+#endif
 
 /**
  * @brief   System tick event hook.
  * @details This hook is invoked in the system tick handler immediately
  *          after processing the virtual timers queue.
  */
+#if !defined(CH_CFG_SYSTEM_TICK_HOOK)
 #define CH_CFG_SYSTEM_TICK_HOOK() {                                         \
   /* System tick event code here.*/                                         \
 }
+#endif
 
 /**
  * @brief   System halt hook.
  * @details This hook is invoked in case to a system halting error before
  *          the system is halted.
  */
+#if !defined(CH_CFG_SYSTEM_HALT_HOOK)
 #define CH_CFG_SYSTEM_HALT_HOOK(reason) {                                   \
   /* System halt code here.*/                                               \
 }
+#endif
 
 /**
  * @brief   Trace hook.
  * @details This hook is invoked each time a new record is written in the
  *          trace buffer.
  */
+#if !defined(CH_CFG_TRACE_HOOK)
 #define CH_CFG_TRACE_HOOK(tep) {                                            \
   /* Trace code here.*/                                                     \
 }
+#endif
 
 /** @} */
 
