aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/platforms/AT91SAM7
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2010-10-25 20:34:08 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2010-10-25 20:34:08 +0000
commitacbea2f1f39f4e4726d3eebf90c27563002f3cf5 (patch)
tree194aeacf493f36c7feb00de214f2a1117ae47bbe /os/hal/platforms/AT91SAM7
parent61922d458b3032cca129b795c430eee089864a43 (diff)
downloadChibiOS-acbea2f1f39f4e4726d3eebf90c27563002f3cf5.tar.gz
ChibiOS-acbea2f1f39f4e4726d3eebf90c27563002f3cf5.tar.bz2
ChibiOS-acbea2f1f39f4e4726d3eebf90c27563002f3cf5.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@2292 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/platforms/AT91SAM7')
-rw-r--r--os/hal/platforms/AT91SAM7/hal_lld.c2
-rw-r--r--os/hal/platforms/AT91SAM7/hal_lld.h2
-rw-r--r--os/hal/platforms/AT91SAM7/mac_lld.c2
-rw-r--r--os/hal/platforms/AT91SAM7/mac_lld.h2
-rw-r--r--os/hal/platforms/AT91SAM7/pal_lld.c2
-rw-r--r--os/hal/platforms/AT91SAM7/pal_lld.h2
-rw-r--r--os/hal/platforms/AT91SAM7/platform.dox111
-rw-r--r--os/hal/platforms/AT91SAM7/serial_lld.c2
-rw-r--r--os/hal/platforms/AT91SAM7/serial_lld.h2
-rw-r--r--os/hal/platforms/AT91SAM7/spi_lld.c2
-rw-r--r--os/hal/platforms/AT91SAM7/spi_lld.h2
11 files changed, 85 insertions, 46 deletions
diff --git a/os/hal/platforms/AT91SAM7/hal_lld.c b/os/hal/platforms/AT91SAM7/hal_lld.c
index 4f2845411..c70badb08 100644
--- a/os/hal/platforms/AT91SAM7/hal_lld.c
+++ b/os/hal/platforms/AT91SAM7/hal_lld.c
@@ -21,7 +21,7 @@
* @file AT91SAM7/hal_lld.c
* @brief AT91SAM7 HAL subsystem low level driver source.
*
- * @addtogroup AT91SAM7_HAL
+ * @addtogroup HAL
* @{
*/
diff --git a/os/hal/platforms/AT91SAM7/hal_lld.h b/os/hal/platforms/AT91SAM7/hal_lld.h
index d75fc8317..c033f13e8 100644
--- a/os/hal/platforms/AT91SAM7/hal_lld.h
+++ b/os/hal/platforms/AT91SAM7/hal_lld.h
@@ -21,7 +21,7 @@
* @file AT91SAM7/hal_lld.h
* @brief AT91SAM7 HAL subsystem low level driver header.
*
- * @addtogroup AT91SAM7_HAL
+ * @addtogroup HAL
* @{
*/
diff --git a/os/hal/platforms/AT91SAM7/mac_lld.c b/os/hal/platforms/AT91SAM7/mac_lld.c
index 0a03d192a..089554c6c 100644
--- a/os/hal/platforms/AT91SAM7/mac_lld.c
+++ b/os/hal/platforms/AT91SAM7/mac_lld.c
@@ -21,7 +21,7 @@
* @file AT91SAM7/mac_lld.c
* @brief AT91SAM7 low level MAC driver code.
*
- * @addtogroup AT91SAM7_MAC
+ * @addtogroup MAC
* @{
*/
diff --git a/os/hal/platforms/AT91SAM7/mac_lld.h b/os/hal/platforms/AT91SAM7/mac_lld.h
index ff8638d75..1535b06f4 100644
--- a/os/hal/platforms/AT91SAM7/mac_lld.h
+++ b/os/hal/platforms/AT91SAM7/mac_lld.h
@@ -21,7 +21,7 @@
* @file AT91SAM7/mac_lld.h
* @brief AT91SAM7 low level MAC driver header.
*
- * @addtogroup AT91SAM7_MAC
+ * @addtogroup MAC
* @{
*/
diff --git a/os/hal/platforms/AT91SAM7/pal_lld.c b/os/hal/platforms/AT91SAM7/pal_lld.c
index 6545be0e6..ffbe05578 100644
--- a/os/hal/platforms/AT91SAM7/pal_lld.c
+++ b/os/hal/platforms/AT91SAM7/pal_lld.c
@@ -21,7 +21,7 @@
* @file AT91SAM7/pal_lld.c
* @brief AT91SAM7 PIO low level driver code.
*
- * @addtogroup AT91SAM7_PAL
+ * @addtogroup PAL
* @{
*/
diff --git a/os/hal/platforms/AT91SAM7/pal_lld.h b/os/hal/platforms/AT91SAM7/pal_lld.h
index 07e17caff..1fe386068 100644
--- a/os/hal/platforms/AT91SAM7/pal_lld.h
+++ b/os/hal/platforms/AT91SAM7/pal_lld.h
@@ -21,7 +21,7 @@
* @file AT91SAM7/pal_lld.h
* @brief AT91SAM7 PIO low level driver header.
*
- * @addtogroup AT91SAM7_PAL
+ * @addtogroup PAL
* @{
*/
diff --git a/os/hal/platforms/AT91SAM7/platform.dox b/os/hal/platforms/AT91SAM7/platform.dox
index 186eff6f1..9e1736256 100644
--- a/os/hal/platforms/AT91SAM7/platform.dox
+++ b/os/hal/platforms/AT91SAM7/platform.dox
@@ -20,34 +20,66 @@
/**
* @defgroup AT91SAM7 AT91SAM7 Drivers
* @brief AT91SAM7 specific support.
- * @details The AT91SAM7 support includes:
- * - Buffered, interrupt driven, serial driver.
- * - EMAC driver with MII support.
- * - A demo supporting the kernel test suite.
- * - A Web server demo using the uIP TCP/IP stack.
- * - A Web server demo using the lwIP TCP/IP stack.
- * .
+ *
* @ingroup platforms
*/
/**
* @defgroup AT91SAM7_HAL AT91SAM7 HAL Support
* @brief HAL support.
+ * @details The AT91SAM7 HAL support is responsible for system initialization.
+ *
+ * @section at91sam7_hal_1 Supported HW resources
+ * - MC.
+ * - PMC.
+ * .
+ * @section at91sam7_hal_2 STM32 HAL driver implementation features
+ * - PLLs startup and stabilization.
+ * - Clock source selection.
+ * - Flash wait states.
+ * .
+* @ingroup AT91SAM7
+ */
+
+/**
+ * @defgroup AT91SAM7_MAC AT91SAM7 EMAC Support
+ * @brief EMAC+PHY peripheral support.
+ * @details This driver supports the AT91SAM7 EMAC peripheral.
*
+ * @section at91sam7_mac_1 Supported HW resources
+ * - EMAC.
+ * .
* @ingroup AT91SAM7
*/
/**
- * @defgroup AT91SAM7_PAL AT91SAM7 I/O Ports Support
+ * @defgroup AT91SAM7_MII AT91SAM7 MII Support
+ * @brief PHY peripheral support.
+ * @details This driver supports the AT91SAM7 EMAC peripheral communicating
+ * with an external PHY transceiver. The driver currently supports
+ * the Micrel KS8721 PHY and the Davicom DV9161 modules.
+ *
+ * @ingroup AT91SAM7
+ */
+
+/**
+ * @defgroup AT91SAM7_PAL AT91SAM7 PIO Support
* @brief I/O Ports peripherals support.
- * @details This module supports the AT91SAM7 PIO controller. The controller
- * supports the following features (see @ref PAL):
+ *
+ * @section at91sam7_pal_1 Supported HW resources
+ * - PIOA.
+ * - PIOB.
+ * .
+ * @section at91sam7_pal_2 AT91SAM7 PAL driver implementation features
+ * The PAL driver implementation fully supports the following hardware
+ * capabilities:
* - 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 at91sam7_pal_3 Supported PAL setup modes
+ * The AT91SAM7 PAL driver supports the following I/O modes:
* - @p PAL_MODE_RESET.
* - @p PAL_MODE_UNCONNECTED.
* - @p PAL_MODE_INPUT.
@@ -58,8 +90,9 @@
* .
* Any attempt to setup an invalid mode is ignored.
*
- * <h2>Suboptimal Behavior</h2>
- * Some PIO features are less than optimal:
+ * @section at91sam7_pal_4 Suboptimal behavior
+ * The STM32 PIO is less than optimal in several areas, the limitations should
+ * be taken in account while using the PAL driver:
* - Pad/port toggling operations are not atomic.
* - Pad/group mode setup is not atomic.
* .
@@ -67,36 +100,42 @@
*/
/**
- * @defgroup AT91SAM7_SERIAL AT91SAM7 USART Support
- * @brief USART peripherals support.
- * @details The serial driver supports the AT91SAM7 USART peripherals.
- *
- * @ingroup AT91SAM7
- */
-
-/**
* @defgroup AT91SAM7_SPI AT91SAM7 SPI Support
* @brief SPI peripheral support.
- * @details The SPI driver supports the AT91SAM7 SPI, the driver works in
- * polling mode.
- *
- * @ingroup AT91SAM7
- */
-
-/**
- * @defgroup AT91SAM7_MAC AT91SAM7 EMAC Support
- * @brief EMAC peripheral support.
- * @details the @ref MAC supports the AT91SAM7 EMAC peripheral.
+ * @details The SPI driver supports the AT91SAM7 SPIs using DMA channels for
+ * improved performance.
*
+ * @section at91sam7_spi_1 Supported HW resources
+ * - SPI1.
+ * - SPI2.
+ * .
+ * @section at91sam7_spi_2 AT91SAM7 SPI driver implementation features
+ * - Clock stop for reduced power usage when the driver is in stop state.
+ * - Each SPI can be independently enabled and programmed. Unused
+ * peripherals are left in low power mode.
+ * - Programmable interrupt priority levels for each SPI.
+ * - DMA is used for receiving and transmitting.
+ * .
* @ingroup AT91SAM7
*/
/**
- * @defgroup AT91SAM7_MII AT91SAM7 MII Support
- * @brief EMAC+PHY peripheral support.
- * @details This driver supports the AT91SAM7 EMAC peripheral communicating
- * with an external PHY transceiver. The driver currently supports
- * the Micrel KS8721 PHY and the Davicom DV9161 modules.
+ * @defgroup AT91SAM7_SERIAL AT91SAM7 USART Support (buffered)
+ * @brief USART peripherals support.
+ * @details The serial driver supports the AT91SAM7 USART peripherals.
*
+ * @section at91sam7_serial_1 Supported HW resources
+ * The serial driver can support any of the following hardware resources:
+ * - USART1.
+ * - USART2.
+ * - DBGU.
+ * .
+ * @section at91sam7_serial_2 AT91SAM7 Serial driver implementation features
+ * - Clock stop for reduced power usage when the driver is in stop state.
+ * - Each USART can be independently enabled and programmed. Unused
+ * peripherals are left in low power mode.
+ * - Fully interrupt driven.
+ * - Programmable priority levels for each USART.
+ * .
* @ingroup AT91SAM7
*/
diff --git a/os/hal/platforms/AT91SAM7/serial_lld.c b/os/hal/platforms/AT91SAM7/serial_lld.c
index 10833f497..72207a249 100644
--- a/os/hal/platforms/AT91SAM7/serial_lld.c
+++ b/os/hal/platforms/AT91SAM7/serial_lld.c
@@ -21,7 +21,7 @@
* @file AT91SAM7/serial_lld.c
* @brief AT91SAM7 low level serial driver code.
*
- * @addtogroup AT91SAM7_SERIAL
+ * @addtogroup SERIAL
* @{
*/
diff --git a/os/hal/platforms/AT91SAM7/serial_lld.h b/os/hal/platforms/AT91SAM7/serial_lld.h
index cfae4eb72..0b9b1973e 100644
--- a/os/hal/platforms/AT91SAM7/serial_lld.h
+++ b/os/hal/platforms/AT91SAM7/serial_lld.h
@@ -21,7 +21,7 @@
* @file AT91SAM7/serial_lld.h
* @brief AT91SAM7 low level serial driver header.
*
- * @addtogroup AT91SAM7_SERIAL
+ * @addtogroup SERIAL
* @{
*/
diff --git a/os/hal/platforms/AT91SAM7/spi_lld.c b/os/hal/platforms/AT91SAM7/spi_lld.c
index 5023eda9e..4bb0ea40c 100644
--- a/os/hal/platforms/AT91SAM7/spi_lld.c
+++ b/os/hal/platforms/AT91SAM7/spi_lld.c
@@ -21,7 +21,7 @@
* @file AT91SAM7/spi_lld.c
* @brief AT91SAM7 low level SPI driver code.
*
- * @addtogroup AT91SAM7_SPI
+ * @addtogroup SPI
* @{
*/
diff --git a/os/hal/platforms/AT91SAM7/spi_lld.h b/os/hal/platforms/AT91SAM7/spi_lld.h
index d887ad04b..173ad10c3 100644
--- a/os/hal/platforms/AT91SAM7/spi_lld.h
+++ b/os/hal/platforms/AT91SAM7/spi_lld.h
@@ -21,7 +21,7 @@
* @file AT91SAM7/spi_lld.h
* @brief AT91SAM7 low level SPI driver header.
*
- * @addtogroup AT91SAM7_SPI
+ * @addtogroup SPI
* @{
*/