diff --git a/docs/Doxyfile b/docs/Doxyfile index 582fcc532..fc3f3f1f6 100644 --- a/docs/Doxyfile +++ b/docs/Doxyfile @@ -84,7 +84,7 @@ WARN_LOGFILE = #--------------------------------------------------------------------------- # configuration options related to the input files #--------------------------------------------------------------------------- -INPUT = ../src/include ../src/templates ../src ../docs/ch.txt ../src/lib ../ports/ARM7 ../ports/ARMCM3 +INPUT = ../src/include ../src/templates ../src ../docs/ch.txt ../src/lib ../ports/ARM7 ../ports/ARMCM3 ../ports/MSP430 INPUT_ENCODING = UTF-8 FILE_PATTERNS = *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py *.ddf RECURSIVE = YES diff --git a/docs/ch.txt b/docs/ch.txt index fc475ec95..d61a735ce 100644 --- a/docs/ch.txt +++ b/docs/ch.txt @@ -328,40 +328,6 @@ */ /** @} */ -/** - * @defgroup MSP430 MSP430 - * @{ - *

- * Notes about the MSP430 port: - *

- * - * @ingroup Ports - */ -/** @} */ - -/** - * @defgroup MSP430CONF Configuration Options - * @{ - *

- * The MSP430 port allows some architecture-specific configurations settings - * that can be specified externally, as example on the compiler command line: - *

- *

- * @ingroup MSP430 - */ -/** @} */ - /** * @defgroup Kernel Kernel * @{ diff --git a/ports/MSP430/port.dox b/ports/MSP430/port.dox new file mode 100644 index 000000000..d35317c75 --- /dev/null +++ b/ports/MSP430/port.dox @@ -0,0 +1,64 @@ +/** + * @defgroup MSP430 MSP430 + * @{ + * @details MSP430 port details. This section how the ChibiOS/RT features are + * implemented on this architecture. + * + * @section MSP430_STATES Mapping of the System States in the MSP430 port + * The ChibiOS/RT logical @ref system_states are mapped as follow in the MSP430 + * port: + * - Initialization. This state is represented by the startup code and + * the initialization code before @p chSysInit() is executed. It has not a + * special hardware state associated. + * - Normal. This is the state the system has after executing + * @p chSysInit(). Interrupts are enabled. + * - Suspended. Interrupts are disabled. + * - Disabled. Interrupts are enabled. This state is equivalent to the + * Suspended state because there are no fast interrupts in this architecture. + * - Sleep. Not yet implemented. + * - S-Locked. Interrupts are disabled. + * - I-Locked. This state is equivalent to the SRI state, the + * @p chSysLockI() and @p chSysUnlockI() APIs do nothing (still use them in + * order to formally change state because this may change). + * - Serving Regular Interrupt. Normal interrupt service code. + * - Serving Fast Interrupt. Not present in this architecture. + * - Serving Non-Maskable Interrupt. Not present in this architecture. + * - Halted. Implemented as an infinite loop with interrupts disabled. + * + * @section MSP430_NOTES The MSP430 port notes + * - The MSP430 does not have a dedicated interrupt stack, make sure to reserve + * enough stack space for interrupts in each thread stack. This can be done + * by modifying the @p INT_REQUIRED_STACK macro into + * ./ports/MSP430/chcore.h. + * + * @ingroup Ports + */ +/** @} */ + +/** + * @defgroup MSP430_CONF Configuration Options + * @{ + * @brief MSP430 Configuration Options. + * The MSP430 port allows some architecture-specific configurations settings + * that can be specified externally, as example on the compiler command line: + * - @p INT_REQUIRED_STACK, this value represent the amount of stack space + * used by the interrupt handlers.
+ * The default for this value is @p 32, this space is allocated for each + * thread so be careful in order to not waste precious RAM space.
+ * The default value is set into ./ports/MSP430/chcore.h. + * + * @ingroup MSP430 + */ +/** @} */ + +/** + * @defgroup MSP430_CORE MSP430 Core Implementation + * @{ + * @brief MSP430 specific port code, structures and macros. + * + * @ingroup MSP430 + * @file ports/MSP430/chtypes.h Port types. + * @file ports/MSP430/chcore.h Port related structures and macros. + * @file ports/MSP430/chcore.c Port related code. + */ +/** @} */