From acbea2f1f39f4e4726d3eebf90c27563002f3cf5 Mon Sep 17 00:00:00 2001 From: gdisirio Date: Mon, 25 Oct 2010 20:34:08 +0000 Subject: git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@2292 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- os/hal/platforms/AT91SAM7/hal_lld.c | 2 +- os/hal/platforms/AT91SAM7/hal_lld.h | 2 +- os/hal/platforms/AT91SAM7/mac_lld.c | 2 +- os/hal/platforms/AT91SAM7/mac_lld.h | 2 +- os/hal/platforms/AT91SAM7/pal_lld.c | 2 +- os/hal/platforms/AT91SAM7/pal_lld.h | 2 +- os/hal/platforms/AT91SAM7/platform.dox | 111 ++++++++++++++++++++++----------- os/hal/platforms/AT91SAM7/serial_lld.c | 2 +- os/hal/platforms/AT91SAM7/serial_lld.h | 2 +- os/hal/platforms/AT91SAM7/spi_lld.c | 2 +- os/hal/platforms/AT91SAM7/spi_lld.h | 2 +- 11 files changed, 85 insertions(+), 46 deletions(-) (limited to 'os/hal/platforms/AT91SAM7') 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. * . - *

Supported Setup Modes

+ * @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,45 +90,52 @@ * . * Any attempt to setup an invalid mode is ignored. * - *

Suboptimal Behavior

- * 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. * . * @ingroup AT91SAM7 */ -/** - * @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 * @{ */ -- cgit v1.2.3