diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/nil/testbuild/.cproject | 52 | ||||
| -rw-r--r-- | test/nil/testbuild/.project | 95 | ||||
| -rw-r--r-- | test/nil/testbuild/Makefile | 213 | ||||
| -rw-r--r-- | test/nil/testbuild/main.c | 58 | ||||
| -rw-r--r-- | test/nil/testbuild/nilconf.h | 179 | 
5 files changed, 597 insertions, 0 deletions
| diff --git a/test/nil/testbuild/.cproject b/test/nil/testbuild/.cproject new file mode 100644 index 000000000..e303e64dc --- /dev/null +++ b/test/nil/testbuild/.cproject @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 +<?fileVersion 4.0.0?>
 +
 +<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
 +	<storageModule moduleId="org.eclipse.cdt.core.settings">
 +		<cconfiguration id="0.114656749">
 +			<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.114656749" moduleId="org.eclipse.cdt.core.settings" name="Default">
 +				<externalSettings/>
 +				<extensions>
 +					<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
 +					<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
 +					<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
 +					<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
 +					<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
 +					<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
 +				</extensions>
 +			</storageModule>
 +			<storageModule moduleId="cdtBuildSystem" version="4.0.0">
 +				<configuration artifactName="${ProjName}" buildProperties="" description="" id="0.114656749" name="Default" parent="org.eclipse.cdt.build.core.prefbase.cfg">
 +					<folderInfo id="0.114656749." name="/" resourcePath="">
 +						<toolChain id="org.eclipse.cdt.build.core.prefbase.toolchain.1182750861" name="No ToolChain" resourceTypeBasedDiscovery="false" superClass="org.eclipse.cdt.build.core.prefbase.toolchain">
 +							<targetPlatform id="org.eclipse.cdt.build.core.prefbase.toolchain.1182750861.169007201" name=""/>
 +							<builder autoBuildTarget="all" cleanBuildTarget="clean" enableAutoBuild="false" enableCleanBuild="true" enabledIncrementalBuild="true" id="org.eclipse.cdt.build.core.settings.default.builder.579570726" incrementalBuildTarget="all" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="org.eclipse.cdt.build.core.settings.default.builder"/>
 +							<tool id="org.eclipse.cdt.build.core.settings.holder.libs.2143276802" name="holder for library settings" superClass="org.eclipse.cdt.build.core.settings.holder.libs"/>
 +							<tool id="org.eclipse.cdt.build.core.settings.holder.1873650595" name="Assembly" superClass="org.eclipse.cdt.build.core.settings.holder">
 +								<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.1337802279" languageId="org.eclipse.cdt.core.assembly" languageName="Assembly" sourceContentType="org.eclipse.cdt.core.asmSource" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
 +							</tool>
 +							<tool id="org.eclipse.cdt.build.core.settings.holder.1707090075" name="GNU C++" superClass="org.eclipse.cdt.build.core.settings.holder">
 +								<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.338985256" languageId="org.eclipse.cdt.core.g++" languageName="GNU C++" sourceContentType="org.eclipse.cdt.core.cxxSource,org.eclipse.cdt.core.cxxHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
 +							</tool>
 +							<tool id="org.eclipse.cdt.build.core.settings.holder.1165165914" name="GNU C" superClass="org.eclipse.cdt.build.core.settings.holder">
 +								<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.714476670" languageId="org.eclipse.cdt.core.gcc" languageName="GNU C" sourceContentType="org.eclipse.cdt.core.cSource,org.eclipse.cdt.core.cHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
 +							</tool>
 +						</toolChain>
 +					</folderInfo>
 +				</configuration>
 +			</storageModule>
 +			<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
 +		</cconfiguration>
 +	</storageModule>
 +	<storageModule moduleId="cdtBuildSystem" version="4.0.0">
 +		<project id="NIL-BUILD_TEST.null.1703860681" name="NIL-BUILD_TEST"/>
 +	</storageModule>
 +	<storageModule moduleId="scannerConfiguration">
 +		<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
 +		<scannerConfigBuildInfo instanceId="0.114656749">
 +			<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/>
 +		</scannerConfigBuildInfo>
 +	</storageModule>
 +	<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
 +	<storageModule moduleId="refreshScope"/>
 +</cproject>
 diff --git a/test/nil/testbuild/.project b/test/nil/testbuild/.project new file mode 100644 index 000000000..f48da3108 --- /dev/null +++ b/test/nil/testbuild/.project @@ -0,0 +1,95 @@ +<?xml version="1.0" encoding="UTF-8"?>
 +<projectDescription>
 +	<name>NIL-BUILD_TEST</name>
 +	<comment></comment>
 +	<projects>
 +	</projects>
 +	<buildSpec>
 +		<buildCommand>
 +			<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
 +			<triggers>clean,full,incremental,</triggers>
 +			<arguments>
 +				<dictionary>
 +					<key>?name?</key>
 +					<value></value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.append_environment</key>
 +					<value>true</value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
 +					<value>all</value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.buildArguments</key>
 +					<value></value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.buildCommand</key>
 +					<value>mingw32-make</value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
 +					<value>clean</value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.contents</key>
 +					<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
 +					<value>false</value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
 +					<value>true</value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.enableFullBuild</key>
 +					<value>true</value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
 +					<value>all</value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.stopOnError</key>
 +					<value>true</value>
 +				</dictionary>
 +				<dictionary>
 +					<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
 +					<value>false</value>
 +				</dictionary>
 +			</arguments>
 +		</buildCommand>
 +		<buildCommand>
 +			<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
 +			<triggers>full,incremental,</triggers>
 +			<arguments>
 +			</arguments>
 +		</buildCommand>
 +	</buildSpec>
 +	<natures>
 +		<nature>org.eclipse.cdt.core.cnature</nature>
 +		<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
 +		<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
 +	</natures>
 +	<linkedResources>
 +		<link>
 +			<name>board</name>
 +			<type>2</type>
 +			<locationURI>CHIBIOS/os/hal/boards/ST_STM32F3_DISCOVERY</locationURI>
 +		</link>
 +		<link>
 +			<name>os</name>
 +			<type>2</type>
 +			<locationURI>CHIBIOS/os</locationURI>
 +		</link>
 +		<link>
 +			<name>test</name>
 +			<type>2</type>
 +			<locationURI>CHIBIOS/test</locationURI>
 +		</link>
 +	</linkedResources>
 +</projectDescription>
 diff --git a/test/nil/testbuild/Makefile b/test/nil/testbuild/Makefile new file mode 100644 index 000000000..eb9cb7f3a --- /dev/null +++ b/test/nil/testbuild/Makefile @@ -0,0 +1,213 @@ +##############################################################################
 +# Build global options
 +# NOTE: Can be overridden externally.
 +#
 +
 +# Compiler options here.
 +ifeq ($(USE_OPT),)
 +  USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16
 +endif
 +
 +# C specific options here (added to USE_OPT).
 +ifeq ($(USE_COPT),)
 +  USE_COPT = 
 +endif
 +
 +# C++ specific options here (added to USE_OPT).
 +ifeq ($(USE_CPPOPT),)
 +  USE_CPPOPT = -fno-rtti
 +endif
 +
 +# Enable this if you want the linker to remove unused code and data
 +ifeq ($(USE_LINK_GC),)
 +  USE_LINK_GC = yes
 +endif
 +
 +# Linker extra options here.
 +ifeq ($(USE_LDOPT),)
 +  USE_LDOPT = 
 +endif
 +
 +# Enable this if you want link time optimizations (LTO)
 +ifeq ($(USE_LTO),)
 +  USE_LTO = yes
 +endif
 +
 +# If enabled, this option allows to compile the application in THUMB mode.
 +ifeq ($(USE_THUMB),)
 +  USE_THUMB = yes
 +endif
 +
 +# Enable this if you want to see the full log while compiling.
 +ifeq ($(USE_VERBOSE_COMPILE),)
 +  USE_VERBOSE_COMPILE = no
 +endif
 +
 +#
 +# Build global options
 +##############################################################################
 +
 +##############################################################################
 +# Architecture or project specific options
 +#
 +
 +# Stack size to be allocated to the Cortex-M process stack. This stack is
 +# the stack used by the main() thread.
 +ifeq ($(USE_PROCESS_STACKSIZE),)
 +  USE_PROCESS_STACKSIZE = 0x100
 +endif
 +
 +# Stack size to the allocated to the Cortex-M main/exceptions stack. This
 +# stack is used for processing interrupts and exceptions.
 +ifeq ($(USE_EXCEPTIONS_STACKSIZE),)
 +  USE_EXCEPTIONS_STACKSIZE = 0x400
 +endif
 +
 +# Enables the use of FPU on Cortex-M4 (no, softfp, hard).
 +ifeq ($(USE_FPU),)
 +  USE_FPU = hard
 +endif
 +
 +#
 +# Architecture or project specific options
 +##############################################################################
 +
 +##############################################################################
 +# Project, sources and paths
 +#
 +
 +# Define project name here
 +PROJECT = ch
 +
 +# Imported source files and paths
 +CHIBIOS = ../../..
 +include $(CHIBIOS)/os/nil/nil.mk
 +include $(CHIBIOS)/os/nil/ports/ARMCMx/compilers/GCC/mk/port_generic_cm4.mk
 +include $(CHIBIOS)/os/hal/osal/nil/osal.mk
 +
 +# Define linker script file here
 +PORTLD  = ${CHIBIOS}/os/common/ports/ARMCMx/compilers/GCC/ld
 +LDSCRIPT= $(PORTLD)/STM32F407xG.ld
 +
 +# C sources that can be compiled in ARM or THUMB mode depending on the global
 +# setting.
 +PORTSRC = $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/crt0.c \
 +          $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/vectors.c \
 +          $(CHIBIOS)/os/nil/templates/nilcore.c
 +CSRC = $(PORTSRC) \
 +       $(KERNSRC) \
 +       $(TESTSRC) \
 +       $(HALSRC) \
 +       $(OSALSRC) \
 +       $(PLATFORMSRC) \
 +       $(BOARDSRC) \
 +       main.c
 +
 +# C++ sources that can be compiled in ARM or THUMB mode depending on the global
 +# setting.
 +CPPSRC =
 +
 +# C sources to be compiled in ARM mode regardless of the global setting.
 +# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
 +#       option that results in lower performance and larger code size.
 +ACSRC =
 +
 +# C++ sources to be compiled in ARM mode regardless of the global setting.
 +# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
 +#       option that results in lower performance and larger code size.
 +ACPPSRC =
 +
 +# C sources to be compiled in THUMB mode regardless of the global setting.
 +# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
 +#       option that results in lower performance and larger code size.
 +TCSRC =
 +
 +# C sources to be compiled in THUMB mode regardless of the global setting.
 +# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
 +#       option that results in lower performance and larger code size.
 +TCPPSRC =
 +
 +# List ASM source files here
 +PORTASM = $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/crt0_v7m.s
 +ASMSRC = $(PORTASM)
 +
 +PORTINC = ${CHIBIOS}/os/ext/CMSIS/include \
 +          ${CHIBIOS}/os/ext/CMSIS/ST \
 +          ${CHIBIOS}/os/common/ports/ARMCMx/devices/STM32F4xx \
 +          $(CHIBIOS)/os/nil/templates
 +INCDIR = $(PORTINC) $(KERNINC)
 +
 +#
 +# Project, sources and paths
 +##############################################################################
 +
 +##############################################################################
 +# Compiler settings
 +#
 +
 +MCU  = cortex-m4
 +
 +#TRGT = arm-elf-
 +TRGT = arm-none-eabi-
 +CC   = $(TRGT)gcc
 +CPPC = $(TRGT)g++
 +# Enable loading with g++ only if you need C++ runtime support.
 +# NOTE: You can use C++ even without C++ support if you are careful. C++
 +#       runtime support makes code size explode.
 +LD   = $(TRGT)gcc
 +#LD   = $(TRGT)g++
 +CP   = $(TRGT)objcopy
 +AS   = $(TRGT)gcc -x assembler-with-cpp
 +AR   = $(TRGT)ar
 +OD   = $(TRGT)objdump
 +SZ   = $(TRGT)size
 +HEX  = $(CP) -O ihex
 +BIN  = $(CP) -O binary
 +
 +# ARM-specific options here
 +AOPT =
 +
 +# THUMB-specific options here
 +TOPT = -mthumb -DTHUMB
 +
 +# Define C warning options here
 +CWARN = -Wall -Wextra -Wstrict-prototypes
 +
 +# Define C++ warning options here
 +CPPWARN = -Wall -Wextra
 +
 +#
 +# Compiler settings
 +##############################################################################
 +
 +##############################################################################
 +# Start of user section
 +#
 +
 +# List all user C define here, like -D_DEBUG=1
 +UDEFS = -DSTM32F407xx
 +
 +# Define ASM defines here
 +UADEFS =
 +
 +# List all user directories here
 +UINCDIR =
 +
 +# List the user directory to look for the libraries here
 +ULIBDIR =
 +
 +# List all user libraries here
 +ULIBS =
 +
 +#
 +# End of user defines
 +##############################################################################
 +
 +RULESPATH = $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC
 +include $(RULESPATH)/rules.mk
 +
 +##############################################################################
 +# MISRA check rule, requires PCLint and the setup files, not provided.
 +#
 +misra:
 +	@lint-nt -v -w3 $(DEFS) pclint/co-gcc.lnt pclint/au-misra3.lnt pclint/waivers.lnt $(IINCDIR) $(CSRC) &> misra.txt
 diff --git a/test/nil/testbuild/main.c b/test/nil/testbuild/main.c new file mode 100644 index 000000000..20af5d493 --- /dev/null +++ b/test/nil/testbuild/main.c @@ -0,0 +1,58 @@ +/*
 +    ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
 +
 +    Licensed under the Apache License, Version 2.0 (the "License");
 +    you may not use this file except in compliance with the License.
 +    You may obtain a copy of the License at
 +
 +        http://www.apache.org/licenses/LICENSE-2.0
 +
 +    Unless required by applicable law or agreed to in writing, software
 +    distributed under the License is distributed on an "AS IS" BASIS,
 +    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 +    See the License for the specific language governing permissions and
 +    limitations under the License.
 +*/
 +
 +#include "nil.h"
 +
 +/*
 + * Blinker thread #1.
 + */
 +static THD_WORKING_AREA(waThread1, 128);
 +static THD_FUNCTION(Thread1, arg) {
 +
 +  (void)arg;
 +
 +  while (true) {
 +    chThdSleepMilliseconds(1000);
 +  }
 +}
 +
 +/*
 + * Threads static table, one entry per thread. The number of entries must
 + * match NIL_CFG_NUM_THREADS.
 + */
 +THD_TABLE_BEGIN
 +  THD_TABLE_ENTRY(waThread1, "sleeper", Thread1, NULL)
 +THD_TABLE_END
 +
 +/*
 + * Application entry point.
 + */
 +int main(void) {
 +
 +  /*
 +   * System initializations.
 +   * - Kernel initialization, the main() function becomes a thread and the
 +   *   RTOS is active.
 +   */
 +  chSysInit();
 +
 +  /* This is now the idle thread loop, you may perform here a low priority
 +     task but you must never try to sleep or wait in this loop. Note that
 +     this tasks runs at the lowest priority level so any instruction added
 +     here will be executed after all other tasks have been started.*/
 +  while (true) {
 +  }
 +}
 diff --git a/test/nil/testbuild/nilconf.h b/test/nil/testbuild/nilconf.h new file mode 100644 index 000000000..6718e19ff --- /dev/null +++ b/test/nil/testbuild/nilconf.h @@ -0,0 +1,179 @@ +/*
 +    ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
 +
 +    Licensed under the Apache License, Version 2.0 (the "License");
 +    you may not use this file except in compliance with the License.
 +    You may obtain a copy of the License at
 +
 +        http://www.apache.org/licenses/LICENSE-2.0
 +
 +    Unless required by applicable law or agreed to in writing, software
 +    distributed under the License is distributed on an "AS IS" BASIS,
 +    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 +    See the License for the specific language governing permissions and
 +    limitations under the License.
 +*/
 +
 +/**
 + * @file    nilconf.h
 + * @brief   Configuration file template.
 + * @details A copy of this file must be placed in each project directory, it
 + *          contains the application specific kernel settings.
 + *
 + * @addtogroup config
 + * @details Kernel related settings and hooks.
 + * @{
 + */
 +
 +#ifndef _NILCONF_H_
 +#define _NILCONF_H_
 +
 +/*===========================================================================*/
 +/**
 + * @name Kernel parameters and options
 + * @{
 + */
 +/*===========================================================================*/
 +
 +/**
 + * @brief   Number of user threads in the application.
 + * @note    This number is not inclusive of the idle thread which is
 + *          Implicitly handled.
 + */
 +#define NIL_CFG_NUM_THREADS                 1
 +
 +/** @} */
 +
 +/*===========================================================================*/
 +/**
 + * @name System timer settings
 + * @{
 + */
 +/*===========================================================================*/
 +
 +/**
 + * @brief   System time counter resolution.
 + * @note    Allowed values are 16 or 32 bits.
 + */
 +#define NIL_CFG_ST_RESOLUTION               32
 +
 +/**
 + * @brief   System tick frequency.
 + * @note    This value together with the @p NIL_CFG_ST_RESOLUTION
 + *          option defines the maximum amount of time allowed for
 + *          timeouts.
 + */
 +#define NIL_CFG_ST_FREQUENCY                1000
 +
 +/**
 + * @brief   Time delta constant for the tick-less mode.
 + * @note    If this value is zero then the system uses the classic
 + *          periodic tick. This value represents the minimum number
 + *          of ticks that is safe to specify in a timeout directive.
 + *          The value one is not valid, timeouts are rounded up to
 + *          this value.
 + */
 +#define NIL_CFG_ST_TIMEDELTA                0
 +
 +/** @} */
 +
 +/*===========================================================================*/
 +/**
 + * @name Subsystem options
 + * @{
 + */
 +/*===========================================================================*/
 +
 +/**
 + * @brief   Events Flags APIs.
 + * @details If enabled then the event flags APIs are included in the kernel.
 + *
 + * @note    The default is @p TRUE.
 + */
 +#define NIL_CFG_USE_EVENTS                  TRUE
 +
 +/** @} */
 +
 +/*===========================================================================*/
 +/**
 + * @name Debug options
 + * @{
 + */
 +/*===========================================================================*/
 +
 +/**
 + * @brief   System assertions.
 + */
 +#define NIL_CFG_ENABLE_ASSERTS              FALSE
 +
 +/**
 + * @brief   Stack check.
 + */
 +#define NIL_CFG_ENABLE_STACK_CHECK          FALSE
 +
 +/** @} */
 +
 +/*===========================================================================*/
 +/**
 + * @name Kernel hooks
 + * @{
 + */
 +/*===========================================================================*/
 +
 +/**
 + * @brief   System initialization hook.
 + */
 +#if !defined(NIL_CFG_SYSTEM_INIT_HOOK) || defined(__DOXYGEN__)
 +#define NIL_CFG_SYSTEM_INIT_HOOK() {                                        \
 +}
 +#endif
 +
 +/**
 + * @brief   Threads descriptor structure extension.
 + * @details User fields added to the end of the @p thread_t structure.
 + */
 +#define NIL_CFG_THREAD_EXT_FIELDS                                           \
 +  /* Add threads custom fields here.*/
 +
 +/**
 + * @brief   Threads initialization hook.
 + */
 +#define NIL_CFG_THREAD_EXT_INIT_HOOK(tr) {                                  \
 +  /* Add custom threads initialization code here.*/                         \
 +}
 +
 +/**
 + * @brief   Idle thread enter hook.
 + * @note    This hook is invoked within a critical zone, no OS functions
 + *          should be invoked from here.
 + * @note    This macro can be used to activate a power saving mode.
 + */
 +#define NIL_CFG_IDLE_ENTER_HOOK() {                                         \
 +}
 +
 +/**
 + * @brief   Idle thread leave hook.
 + * @note    This hook is invoked within a critical zone, no OS functions
 + *          should be invoked from here.
 + * @note    This macro can be used to deactivate a power saving mode.
 + */
 +#define NIL_CFG_IDLE_LEAVE_HOOK() {                                         \
 +}
 +
 +/**
 + * @brief   System halt hook.
 + */
 +#if !defined(NIL_CFG_SYSTEM_HALT_HOOK) || defined(__DOXYGEN__)
 +#define NIL_CFG_SYSTEM_HALT_HOOK(reason) {                                  \
 +}
 +#endif
 +
 +/** @} */
 +
 +/*===========================================================================*/
 +/* Port-specific settings (override port settings defaulted in nilcore.h).   */
 +/*===========================================================================*/
 +
 +#endif  /* _NILCONF_H_ */
 +
 +/** @} */
 | 
