aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/platforms/LPC214x/platform.dox
diff options
context:
space:
mode:
Diffstat (limited to 'os/hal/platforms/LPC214x/platform.dox')
-rw-r--r--os/hal/platforms/LPC214x/platform.dox93
1 files changed, 62 insertions, 31 deletions
diff --git a/os/hal/platforms/LPC214x/platform.dox b/os/hal/platforms/LPC214x/platform.dox
index 48df22f36..10cac7bf1 100644
--- a/os/hal/platforms/LPC214x/platform.dox
+++ b/os/hal/platforms/LPC214x/platform.dox
@@ -19,44 +19,44 @@
/**
* @defgroup LPC214x LPC214x Drivers
- * @brief LPC214x specific support.
- * @details The LPC214x support includes:
- * - VIC support code.
- * - I/O ports driver.
- * - Buffered, interrupt driven, serial driver.
- * - SPI driver.
- * - A demo supporting the kernel test suite.
- * - A C++ demo supporting the kernel test suite.
- * - A demo integrating ChibiOS/RT with FatFS.
- * .
+ * @details This section describes all the supported drivers on the LPC214x
+ * platform and the implementation details of the single drivers.
+ *
* @ingroup platforms
*/
/**
- * @defgroup LPC214x_VIC VIC Support
- * @brief VIC peripheral support.
+ * @defgroup LPC214x_HAL LPC214x Initialization Support
+ * @details The LPC214x HAL support is responsible for system initialization.
*
+ * @section lpc214x_hal_1 Supported HW resources
+ * - PLL0.
+ * - MAM.
+ * - VPBDIV.
+ * .
+ * @section lpc214x_hal_2 LPC214x HAL driver implementation features
+ * - Clock tree initialization.
+ * - Clock source selection.
+ * - MAM initialization.
+ * .
* @ingroup LPC214x
*/
/**
- * @defgroup LPC214x_HAL LPC214x HAL Support
- * @brief HAL support.
+ * @defgroup LPC214x_PAL LPC214x FIO Support
+ * @details The LPC214x PAL driver uses the FIO peripherals.
*
- * @ingroup LPC214x
- */
-
-/**
- * @defgroup LPC214x_PAL LPC214x I/O Ports Support
- * @brief I/O Ports peripherals support.
- * @details This module supports the LPC214x FIO controller. The controller
- * supports the following features (see @ref PAL):
+ * @section lpc214x_pal_1 Supported HW resources
+ * - FIO0.
+ * - FIO1.
+ * .
+ * @section lpc214x_pal_2 LPC214x PAL driver implementation features
* - 32 bits wide ports.
* - Atomic set/reset functions.
* - Output latched regardless of the pad setting.
* - Direct read of input pads regardless of the pad setting.
* .
- * <h2>Supported Setup Modes</h2>
+ * @section lpc214x_pal_3 Supported PAL setup modes
* - @p PAL_MODE_RESET.
* - @p PAL_MODE_UNCONNECTED.
* - @p PAL_MODE_INPUT.
@@ -65,7 +65,8 @@
* .
* Any attempt to setup an invalid mode is ignored.
*
- * <h2>Suboptimal Behavior</h2>
+ * @section lpc214x_pal_4 Suboptimal behavior
+ * Some FIO features are less than optimal:
* - Pad/port toggling operations are not atomic.
* - Pad/group mode setup is not atomic.
* .
@@ -73,18 +74,48 @@
*/
/**
- * @defgroup LPC214x_SERIAL LPC214x UART Support
- * @brief UART peripherals support.
- * @details The serial driver supports the LPC214x UART peripherals.
+ * @defgroup LPC214x_SPI LPC214x SPI Support
+ * @details The SPI driver supports the LPC214x SSP peripheral in an interrupt
+ * driven implementation.
+ * @note Being the SPI a fast peripheral, much care must be taken to
+ * not saturate the CPU bandwidth with an excessive IRQ rate. The
+ * maximum transfer bit rate is likely limited by the IRQ
+ * handling.
+ *
+ * @section lpc214x_spi_1 Supported HW resources
+ * - SSP (SPI0).
+ * .
+ * @section lpc214x_spi_2 LPC214x SPI driver implementation features
+ * - Clock stop for reduced power usage when the driver is in stop state.
+ * - Programmable interrupt priority level.
+ * .
+ * @ingroup LPC214x
+ */
+
+/**
+ * @defgroup LPC214x_SERIAL LPC214x UART Support (buffered)
+ * @details The LPC214x Serial driver uses the UART peripherals in a
+ * buffered, interrupt driven, implementation. The serial driver
+ * also takes advantage of the LPC214x UARTs deep hardware buffers.
*
+ * @section lpc214x_serial_1 Supported HW resources
+ * The serial driver can support any of the following hardware resources:
+ * - UART0.
+ * - UART1.
+ * .
+ * @section lpc214x_serial_2 LPC214x Serial driver implementation features
+ * - Clock stop for reduced power usage when the driver is in stop state.
+ * - Fully interrupt driven.
+ * - Programmable interrupt priority levels for each UART.
+ * - Takes advantage of the input and output FIFOs.
+ * .
* @ingroup LPC214x
*/
/**
- * @defgroup LPC214x_SPI LPC214x SPI Support
- * @brief SSP peripheral support.
- * @details The SPI driver supports the LPC214x SSP, the driver works in
- * polling mode.
+ * @defgroup LPC214x_VIC LPC214x VIC Support
+ * @details This VIC helper driver is used by the other drivers in order to
+ * access the shared VIC resources in a consistent way.
*
* @ingroup LPC214x
*/